<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<tt>On 2012-03-08 14:51, Martin wrote:</tt>
<blockquote cite="mid:4F58B970.2030201@mfriebe.de" type="cite"><tt>On
08/03/2012 13:44, Martin wrote:
<br>
</tt>
<blockquote type="cite">
<tt><br>
<br>
In the following code, I thing is the problem:
</tt>
<tt><br>
<br>
Procedure TComponent.Notification(AComponent: TComponent;
</tt>
<tt><br>
Operation: TOperation);
<br>
Var Runner : Longint;
<br>
begin
<br>
If (Operation=opRemove) and Assigned(FFreeNotifies) then
<br>
begin
<br>
FFreeNotifies.Remove(AComponent);
<br>
...
<br>
<br>
It removes only one of the 2 notify entries.
</tt>
<tt><br>
<br>
If opRemove is to remove FreeNotifications, then it mus remove
them bi-directional, same as RemoveFreeNotification does
</tt>
<tt><br>
<br>
</tt>
</blockquote>
<tt><br>
That is: I have not checked if Delphi removes the FreeNotify at
all.
<br>
But I assume, if it does, it does both...
<br>
</tt></blockquote>
<tt>I can confirm the D7 does remove both - it calls:<br>
<br>
<b>AComponent.RemoveNotification(Self);</b><br>
<br>
Regards,<br>
Torsten Bonde Christiansen.<br>
</tt>
</body>
</html>