mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-16 18:09:23 +02:00
Opkman: Assign nil to download thread to prevent dangling pointers.
git-svn-id: trunk@64921 -
This commit is contained in:
parent
a3a9c7213c
commit
3c3bdedabf
@ -158,6 +158,7 @@ type
|
|||||||
procedure DoOnPackageDownloadCompleted(Sender: TObject);
|
procedure DoOnPackageDownloadCompleted(Sender: TObject);
|
||||||
procedure DoOnPackageUpdateProgress(Sender: TObject; AUPackageName, AUPackageURL: String; ACnt, ATotCnt: Integer; AUTyp: Integer; AUErrMsg: String);
|
procedure DoOnPackageUpdateProgress(Sender: TObject; AUPackageName, AUPackageURL: String; ACnt, ATotCnt: Integer; AUTyp: Integer; AUErrMsg: String);
|
||||||
procedure DoOnPackageUpdateCompleted(Sender: TObject; AUSuccess: Boolean);
|
procedure DoOnPackageUpdateCompleted(Sender: TObject; AUSuccess: Boolean);
|
||||||
|
procedure DoOnTerminate(Sender: TObject);
|
||||||
public
|
public
|
||||||
constructor Create(const ARemoteRepository: String);
|
constructor Create(const ARemoteRepository: String);
|
||||||
destructor Destroy; override;
|
destructor Destroy; override;
|
||||||
@ -666,6 +667,7 @@ begin
|
|||||||
FDownload := TThreadDownload.Create;
|
FDownload := TThreadDownload.Create;
|
||||||
FDownload.OnJSONProgress := @DoOnJSONProgress;
|
FDownload.OnJSONProgress := @DoOnJSONProgress;
|
||||||
FDownload.OnJSONDownloadCompleted := @DoOnJSONDownloadCompleted;
|
FDownload.OnJSONDownloadCompleted := @DoOnJSONDownloadCompleted;
|
||||||
|
FDownload.OnTerminate := @DoOnTerminate;
|
||||||
FDownload.DownloadJSON(ATimeOut, ASilent);
|
FDownload.DownloadJSON(ATimeOut, ASilent);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -675,6 +677,7 @@ begin
|
|||||||
FDownload.OnPackageDownloadProgress := @DoOnPackageDownloadProgress;
|
FDownload.OnPackageDownloadProgress := @DoOnPackageDownloadProgress;
|
||||||
FDownload.OnPackageDownloadError := @DoOnPackageDownloadError;
|
FDownload.OnPackageDownloadError := @DoOnPackageDownloadError;
|
||||||
FDownload.OnPackageDownloadCompleted := @DoOnPackageDownloadCompleted;
|
FDownload.OnPackageDownloadCompleted := @DoOnPackageDownloadCompleted;
|
||||||
|
FDownload.OnTerminate := @DoOnTerminate;
|
||||||
FDownload.DownloadPackages(ADownloadTo);
|
FDownload.DownloadPackages(ADownloadTo);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -686,6 +689,7 @@ begin
|
|||||||
FDownload.OnPackageDownloadCompleted := @DoOnPackageDownloadCompleted;
|
FDownload.OnPackageDownloadCompleted := @DoOnPackageDownloadCompleted;
|
||||||
FDownload.OnPackageUpdateProgress := @DoOnPackageUpdateProgress;
|
FDownload.OnPackageUpdateProgress := @DoOnPackageUpdateProgress;
|
||||||
FDownload.OnPackageUpdateCompleted := @DoOnPackageUpdateCompleted;
|
FDownload.OnPackageUpdateCompleted := @DoOnPackageUpdateCompleted;
|
||||||
|
FDownload.OnTerminate := @DoOnTerminate;
|
||||||
FDownload.UpdatePackages(ADownloadTo);
|
FDownload.UpdatePackages(ADownloadTo);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -698,5 +702,11 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TPackageDownloader.DoOnTerminate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
FDownload := nil;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user