Autorelease some vars

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@6516 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
fedor 2000-04-25 21:20:52 +00:00
parent 17628a5e4c
commit 0355e30b05
2 changed files with 22 additions and 6 deletions

View file

@ -1,3 +1,10 @@
2000-04-25 Adam Fedor <fedor@gnu.org>
* Source/NSScreen.m (-deviceDescription): Use autoreleased dictionary.
(+mainScreen): Autorelease screen.
(+screens): Likewise.
(-isEqual:): Implement.
2000-04-25 Richard Frith-Macdonald <rfm@gnu.org> 2000-04-25 Richard Frith-Macdonald <rfm@gnu.org>
Patch by Gregory John Casamento <borgheron@yahoo.com> edited to Patch by Gregory John Casamento <borgheron@yahoo.com> edited to

View file

@ -77,7 +77,6 @@ _screenNumbers(int *count)
{ {
float x, y, w, h; float x, y, w, h;
NSGraphicsContext *ctxt = GSCurrentContext(); NSGraphicsContext *ctxt = GSCurrentContext();
int bitsPerPixel = 0;
self = [super init]; self = [super init];
@ -117,6 +116,17 @@ _screenNumbers(int *count)
return self; return self;
} }
- (BOOL) isEqual: (id)anObject
{
if (anObject == self)
return YES;
if ([anObject isKindOfClass: self->isa] == NO)
return NO;
if (_screenNumber == ((NSScreen *)anObject)->_screenNumber)
return YES;
return NO;
}
/* /*
* Reading Screen Information * Reading Screen Information
*/ */
@ -132,7 +142,7 @@ _screenNumbers(int *count)
- (NSDictionary*) deviceDescription - (NSDictionary*) deviceDescription
{ {
NSMutableDictionary *devDesc = [[NSDictionary alloc] init]; NSMutableDictionary *devDesc;
int bps = 0; int bps = 0;
NSSize screenResolution; NSSize screenResolution;
NSString *colorSpaceName = nil; NSString *colorSpaceName = nil;
@ -143,7 +153,7 @@ _screenNumbers(int *count)
*/ */
// Set the screen number in the current object. // Set the screen number in the current object.
devDesc = [NSMutableDictionary new]; devDesc = [NSMutableDictionary dictionary];
[devDesc setObject: [NSNumber numberWithInt: _screenNumber] [devDesc setObject: [NSNumber numberWithInt: _screenNumber]
forKey: @"NSScreenNumber"]; forKey: @"NSScreenNumber"];
@ -233,7 +243,7 @@ _screenNumbers(int *count)
mainScreen = [[NSScreen alloc] _initWithScreenNumber: windows[0]]; mainScreen = [[NSScreen alloc] _initWithScreenNumber: windows[0]];
NSZoneFree(NSDefaultMallocZone(), windows); // free the list NSZoneFree(NSDefaultMallocZone(), windows); // free the list
return mainScreen; return AUTORELEASE(mainScreen);
} }
+ (NSScreen*) deepestScreen + (NSScreen*) deepestScreen
@ -265,7 +275,6 @@ _screenNumbers(int *count)
+ (NSArray*) screens + (NSArray*) screens
{ {
int count = 0, index = 0, *windows = 0; int count = 0, index = 0, *windows = 0;
NSGraphicsContext *ctxt = GSCurrentContext();
NSMutableArray *screenArray = [NSMutableArray array]; NSMutableArray *screenArray = [NSMutableArray array];
// Get the number of screens. // Get the number of screens.
@ -281,7 +290,7 @@ _screenNumbers(int *count)
NSScreen *screen = nil; NSScreen *screen = nil;
screen = [[NSScreen alloc] _initWithScreenNumber: windows[index]]; screen = [[NSScreen alloc] _initWithScreenNumber: windows[index]];
[screenArray addObject: screen]; [screenArray addObject: AUTORELEASE(screen)];
} }
NSZoneFree(NSDefaultMallocZone(), windows); // free the list NSZoneFree(NSDefaultMallocZone(), windows); // free the list