From 63d660e4e06b5841ced9607f493e76791a208dbf Mon Sep 17 00:00:00 2001 From: "Ryan C. Gordon" Date: Sat, 12 Jan 2013 14:04:51 -0500 Subject: [PATCH] Fix a memory leak. We need to clean up our autorelease pool code at some point. --- src/video/cocoa/SDL_cocoamodes.m | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/video/cocoa/SDL_cocoamodes.m b/src/video/cocoa/SDL_cocoamodes.m index 0c87e78bf..db34d71c4 100644 --- a/src/video/cocoa/SDL_cocoamodes.m +++ b/src/video/cocoa/SDL_cocoamodes.m @@ -235,6 +235,7 @@ Cocoa_GetDisplayName(CGDirectDisplayID displayID) void Cocoa_InitModes(_THIS) { + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; CGDisplayErr result; CGDirectDisplayID *displays; CGDisplayCount numDisplays; @@ -243,6 +244,7 @@ Cocoa_InitModes(_THIS) result = CGGetOnlineDisplayList(0, NULL, &numDisplays); if (result != kCGErrorSuccess) { CG_SetError("CGGetOnlineDisplayList()", result); + [pool release]; return; } displays = SDL_stack_alloc(CGDirectDisplayID, numDisplays); @@ -250,6 +252,7 @@ Cocoa_InitModes(_THIS) if (result != kCGErrorSuccess) { CG_SetError("CGGetOnlineDisplayList()", result); SDL_stack_free(displays); + [pool release]; return; } @@ -313,6 +316,7 @@ Cocoa_InitModes(_THIS) } } SDL_stack_free(displays); + [pool release]; } int