Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
fpc-src / usr / share / fpcsrc / 3.0.0 / tests / webtbs / tw6868.pp
Size: Mime:
program project1;
{$mode objfpc}{$H+}

uses Classes, SysUtils;

type IHelpSystem = interface(IInterface) end;
     THelpManager = class(TInterfacedObject, IHelpSystem) end;

var HelpManager : THelpManager = nil;
function GetHelpSystem(out H: IHelpSystem) : Integer;
begin
  if HelpManager = nil then HelpManager := THelpManager.Create; // if help manager is not created here, it works
  H := HelpManager;  // <-- remove this and it works
  result := 0;
end;

procedure FreeHelpSystem;
begin
  HelpManager := nil;
end;

var h : IHelpSystem;
begin
  GetHelpSystem(h);
  FreeHelpSystem;
end.