Retain application windows

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@6338 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Nicola Pero 2000-03-19 23:23:18 +00:00
parent 3d80834a5d
commit bf9ba1592f

View file

@ -66,6 +66,8 @@ void __dummy_GMAppKit_functionForLinking() {}
- (id)initWithModelUnarchiver:(GMUnarchiver*)unarchiver
{
NSArray* windows;
NSEnumerator *enumerator;
NSWindow *win;
NSWindow* keyWindow;
NSWindow* mainWindow;
NSMenu* mainMenu;
@ -78,6 +80,14 @@ void __dummy_GMAppKit_functionForLinking() {}
#endif
windows = [unarchiver decodeObjectWithName:@"windows"];
enumerator = [windows objectEnumerator];
while ((win = [enumerator nextObject]) != nil)
{
/* If we did not retain the windows here, they would all get
released at the end of the event loop. */
RETAIN (win);
}
keyWindow = [unarchiver decodeObjectWithName:@"keyWindow"];
mainWindow = [unarchiver decodeObjectWithName:@"mainWindow"];