finalize KV observations

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27639 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Richard Frith-MacDonald 2009-01-20 11:41:41 +00:00
parent e82bd33ab1
commit 399e2f9b38
3 changed files with 10 additions and 5 deletions

View file

@ -810,6 +810,10 @@ replacementForClass(Class c)
{
GSMakeWeakPointer(self, "observer");
}
- (void) finalize
{
GSAssignZeroingWeakPointer((void**)&observer, nil);
}
#endif
@end

View file

@ -1910,9 +1910,9 @@ GSMakeWeakPointer(Class class, const char *iVarName)
BOOL
GSAssignZeroingWeakPointer(void **destination, void *source)
{
if (GC_base(destination) == 0)
if (destination == 0)
{
return NO; // Destination is not in garbage collection system.
return NO; // Bad destination pointer
}
if (*destination == source)
{