2
0
Эх сурвалжийг харах

Create an autorelease pool in glfwPostEmptyEvent.

This prevents leaking NSEvent objects.

Closes #372.
Patrick Walton 11 жил өмнө
parent
commit
5052b2d7e0
2 өөрчлөгдсөн 3 нэмэгдсэн , 0 устгасан
  1. 1 0
      README.md
  2. 2 0
      src/cocoa_window.m

+ 1 - 0
README.md

@@ -251,6 +251,7 @@ skills.
  - Ricardo Vieira
  - Simon Voordouw
  - Torsten Walluhn
+ - Patrick Walton
  - Jay Weisskopf
  - Frank Wille
  - yuriks

+ 2 - 0
src/cocoa_window.m

@@ -1206,6 +1206,7 @@ void _glfwPlatformWaitEvents(void)
 
 void _glfwPlatformPostEmptyEvent(void)
 {
+    NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
     NSEvent* event = [NSEvent otherEventWithType:NSApplicationDefined
                                         location:NSMakePoint(0, 0)
                                    modifierFlags:0
@@ -1216,6 +1217,7 @@ void _glfwPlatformPostEmptyEvent(void)
                                            data1:0
                                            data2:0];
     [NSApp postEvent:event atStart:YES];
+    [pool drain];
 }
 
 void _glfwPlatformSetCursorPos(_GLFWwindow* window, double x, double y)