* EOAccess/EOEntity.m: Break retain cycle for parent/sub entities.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23956 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Matt Rice 2006-10-23 18:00:09 +00:00
parent c3bb66bcc3
commit a34631c202
2 changed files with 4 additions and 2 deletions

View file

@ -15,6 +15,8 @@
* EOAccess/EOEntity.m (-dealloc): Add missing calls to release,
reorganize.
* EOAccess/EOEntity.m: Break retain cycle for parent/sub entities.
2006-10-22 Matt Rice <ratmice@yahoo.com>
* EOAccess/EOPrivate.h: Add notification constants.

View file

@ -574,6 +574,7 @@ NSString *EONextPrimaryKeyProcedureOperation = @"EONextPrimaryKeyProcedureOperat
- (void) dealloc
{
[_subEntities makeObjectsPerform:@selector(_setParentEntity:) withObject:nil];
[_attributes makeObjectsPerform:@selector(setParent:) withObject:nil];
[_relationships makeObjectsPerform:@selector(setEntity:) withObject:nil];
// this must come after _attributes is cleared.
@ -607,7 +608,6 @@ NSString *EONextPrimaryKeyProcedureOperation = @"EONextPrimaryKeyProcedureOperat
DESTROY(_hiddenRelationships);
DESTROY(_internalInfo);
DESTROY(_name);
DESTROY(_parent);
DESTROY(_primaryKeyAttributes);
DESTROY(_primaryKeyAttributeNames);
DESTROY(_propertiesToFault); // never initialized?
@ -2485,7 +2485,7 @@ createInstanceWithEditingContext:globalID:zone:
- (void)_setParentEntity: (EOEntity *)parent
{
[self willChange]; // TODO: verify
ASSIGN(_parent, parent);
_parent = parent;
}
- (NSDictionary *)snapshotForRow: (NSDictionary *)aRow