Browse Source

Fixed bug 2176 - SDL_CreateWindow(w=INT_MAX, h=INT_MAX) causes program to hang

Catch exceptions generated when trying to create a Cocoa window.
Sam Lantinga 12 years ago
parent
commit
5821466c05
1 changed files with 8 additions and 1 deletions
  1. 8 1
      src/video/cocoa/SDL_cocoawindow.m

+ 8 - 1
src/video/cocoa/SDL_cocoawindow.m

@@ -748,7 +748,14 @@ Cocoa_CreateWindow(_THIS, SDL_Window * window)
             rect.origin.y -= screenRect.origin.y;
         }
     }
-    nswindow = [[SDLWindow alloc] initWithContentRect:rect styleMask:style backing:NSBackingStoreBuffered defer:NO screen:screen];
+
+    @try {
+        nswindow = [[SDLWindow alloc] initWithContentRect:rect styleMask:style backing:NSBackingStoreBuffered defer:NO screen:screen];
+    }
+    @catch (NSException *e) {
+        SDL_SetError("%s", [[e reason] UTF8String]);
+        return -1;
+    }
     [nswindow setBackgroundColor:[NSColor blackColor]];
 
     /* Create a default view for this window */