File tree Expand file tree Collapse file tree 1 file changed +4
-16
lines changed Expand file tree Collapse file tree 1 file changed +4
-16
lines changed Original file line number Diff line number Diff line change @@ -4319,11 +4319,15 @@ constructor TPythonEngine.Create(AOwner: TComponent);
43194319end ;
43204320
43214321destructor TPythonEngine.Destroy;
4322+ var
4323+ I: Integer;
43224324begin
43234325 LocalVars := nil ;
43244326 GlobalVars := nil ;
43254327 Destroying;
43264328 Finalize;
4329+ for I := 0 to ClientCount - 1 do
4330+ Clients[I].ClearEngine;
43274331 FClients.Free;
43284332 FInitScript.Free;
43294333 FTraceback.Free;
@@ -4333,7 +4337,6 @@ destructor TPythonEngine.Destroy;
43334337procedure TPythonEngine.Finalize ;
43344338var
43354339 i: integer;
4336- canDetachClients : Boolean;
43374340begin
43384341 // switch off redirection when the component is destroying,
43394342 // because the form or datamodule is beeing closed, and
@@ -4368,21 +4371,6 @@ procedure TPythonEngine.Finalize;
43684371 except
43694372 end ;
43704373 end ;
4371- // Detach our clients, when engine is being destroyed or one of its clients.
4372- canDetachClients := csDestroying in ComponentState;
4373- if not canDetachClients then
4374- for i := 0 to ClientCount - 1 do
4375- if csDestroying in Clients[i].ComponentState then
4376- begin
4377- canDetachClients := True;
4378- Break;
4379- end ;
4380- if canDetachClients then
4381- begin
4382- for i := 0 to ClientCount - 1 do
4383- Clients[i].ClearEngine;
4384- FClients.Clear;
4385- end ;
43864374 // Free our reference
43874375 gPythonEngine := nil ;
43884376 FTimeStruct := nil ;
You can’t perform that action at this time.
0 commit comments