diff options
author | michi_cc <michi_cc@openttd.org> | 2009-10-12 00:19:11 +0000 |
---|---|---|
committer | michi_cc <michi_cc@openttd.org> | 2009-10-12 00:19:11 +0000 |
commit | 2b7e2428720783166726c1193d865084f5ac2946 (patch) | |
tree | 1003d19288a973aaa5b74fca5454b1aa3bbde6f5 /src/video/cocoa | |
parent | 53ce152c7edfee100a798bdd8c27f28935f2bef9 (diff) | |
download | openttd-2b7e2428720783166726c1193d865084f5ac2946.tar.xz |
(svn r17768) -Fix (r17715): [OSX] Newer GCC versions don't like jumping over variable definitions with goto's. (planetmaker)
Diffstat (limited to 'src/video/cocoa')
-rw-r--r-- | src/video/cocoa/fullscreen.mm | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/video/cocoa/fullscreen.mm b/src/video/cocoa/fullscreen.mm index 435436b0e..d6ec8f4e0 100644 --- a/src/video/cocoa/fullscreen.mm +++ b/src/video/cocoa/fullscreen.mm @@ -257,6 +257,12 @@ class FullscreenSubdriver: public CocoaSubdriver { bool SetVideoMode(int w, int h) { + /* Define this variables at the top (against coding style) because + * otherwise GCC barfs at the goto's jumping over variable initialization. */ + NSRect screen_rect; + NSPoint pt; + int gamma_error; + /* Destroy any previous mode */ if (this->pixel_buffer != NULL) { free(this->pixel_buffer); @@ -286,7 +292,7 @@ class FullscreenSubdriver: public CocoaSubdriver { /* Fade display to zero gamma */ OTTD_QuartzGammaTable gamma_table; - int gamma_error = this->FadeGammaOut(&gamma_table); + gamma_error = this->FadeGammaOut(&gamma_table); /* Put up the blanking window (a window above all other windows) */ if (CGDisplayCapture(this->display_id) != CGDisplayNoErr ) { @@ -330,11 +336,10 @@ class FullscreenSubdriver: public CocoaSubdriver { * We can hack around this bug by setting the screen rect ourselves. * This hack should be removed if/when the bug is fixed. */ - NSRect screen_rect = NSMakeRect(0, 0, this->display_width, this->display_height); + screen_rect = NSMakeRect(0, 0, this->display_width, this->display_height); [ [ NSScreen mainScreen ] setFrame:screen_rect ]; - - NSPoint pt = [ NSEvent mouseLocation ]; + pt = [ NSEvent mouseLocation ]; pt.y = this->display_height - pt.y; if (this->MouseIsInsideView(&pt)) QZ_HideMouse(); |