Check-in [d421e12eaf]
Not logged in

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Try to clean up the thread on shutdown.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | feature/sentinel-thread
Files: files | file ages | folders
SHA1: d421e12eafffc7a26b9f2b0d9ba239fb58de5021
User & Date: Martijn 2015-08-11 20:48:56
Context
2015-08-12
17:29
In DEBUG mode, write out every sentinel update (at least while the sentinel window is visible), so we can analyze more easily what exactly happened. check-in: c7f855ce62 user: Martijn tags: feature/sentinel-thread
2015-08-11
20:48
Try to clean up the thread on shutdown. check-in: d421e12eaf user: Martijn tags: feature/sentinel-thread
20:36
Create a new feature branch to try out possibilities for running the sentinel in a separate thread, to improve usability. check-in: 8b37708361 user: Martijn tags: feature/sentinel-thread
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to ZPreview/src/Delphi/F_Main.pas.

116
117
118
119
120
121
122









123
124
125
126
127
128
129
  Application.OnDeactivate := ApplicationDeactivate;

end {TfrmMain.FormCreate};

{ ------------------------------------------------------------------------------------------------ }
procedure TfrmMain.FormDestroy(Sender: TObject);
begin









  FFileIconBitmap.Free;
  FSentinel.Free;
  FEngineManager.Free;
end {TfrmMain.FormDestroy};

{ ------------------------------------------------------------------------------------------------ }
procedure TfrmMain.FormCloseQuery(Sender: TObject; var CanClose: Boolean);







>
>
>
>
>
>
>
>
>







116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
  Application.OnDeactivate := ApplicationDeactivate;

end {TfrmMain.FormCreate};

{ ------------------------------------------------------------------------------------------------ }
procedure TfrmMain.FormDestroy(Sender: TObject);
begin
  if Assigned(FWatcher) then begin
    if not FWatcher.Finished then begin
      FWatcher.OnTerminate := nil;
      FWatcher.FreeOnTerminate := True;
      FWatcher.Terminate;
    end else begin
      FWatcher.Free;
    end;
  end;
  FFileIconBitmap.Free;
  FSentinel.Free;
  FEngineManager.Free;
end {TfrmMain.FormDestroy};

{ ------------------------------------------------------------------------------------------------ }
procedure TfrmMain.FormCloseQuery(Sender: TObject; var CanClose: Boolean);