Browse Source

* tcomponent.destroying is now called in tcomponent.beforedestruction

florian 21 years ago
parent
commit
b950207508
1 changed files with 13 additions and 3 deletions
  1. 13 3
      rtl/objpas/classes/compon.inc

+ 13 - 3
rtl/objpas/classes/compon.inc

@@ -377,6 +377,7 @@ Destructor TComponent.Destroy;
 Var Runner : Longint;
 Var Runner : Longint;
 
 
 begin
 begin
+  Destroying;
   If Assigned(FFreeNotifies) then
   If Assigned(FFreeNotifies) then
     begin
     begin
     For Runner:=0 To FFreeNotifies.Count-1 do
     For Runner:=0 To FFreeNotifies.Count-1 do
@@ -384,13 +385,19 @@ begin
     FFreeNotifies.Free;
     FFreeNotifies.Free;
     FFreeNotifies:=Nil;
     FFreeNotifies:=Nil;
     end;
     end;
-  Destroying;
   DestroyComponents;
   DestroyComponents;
   If FOwner<>Nil Then FOwner.RemoveComponent(Self);
   If FOwner<>Nil Then FOwner.RemoveComponent(Self);
   inherited destroy;
   inherited destroy;
 end;
 end;
 
 
 
 
+Procedure TComponent.BeforeDestruction;
+begin
+  if not(csDestroying in FComponentstate) then
+    Destroying;
+end;
+
+
 Procedure TComponent.DestroyComponents;
 Procedure TComponent.DestroyComponents;
 
 
 Var acomponent: TComponent;
 Var acomponent: TComponent;
@@ -533,7 +540,10 @@ end;
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.2  2004-01-12 17:44:22  peter
+  Revision 1.3  2004-08-07 16:44:35  florian
+    * tcomponent.destroying is now called in tcomponent.beforedestruction
+
+  Revision 1.2  2004/01/12 17:44:22  peter
     * LongRec is a packed record
     * LongRec is a packed record
 
 
   Revision 1.1  2003/10/06 21:01:06  peter
   Revision 1.1  2003/10/06 21:01:06  peter
@@ -554,4 +564,4 @@ end;
   Revision 1.5  2002/01/06 21:54:50  peter
   Revision 1.5  2002/01/06 21:54:50  peter
     * action classes added
     * action classes added
 
 
-}
+}