[613/906] window_cocoa: fix segfault with gst-launch-1.0 -e ... and sending SIGINT (Ctrl-C)
GNUstep has a signal handler for SIGINT which runs in the main thread. However that thread has never been 'registered' with GNUstep so the autorelease magic of objective-c causes a segfault from accessing a null NSThread object somewhere deep in GNUstep.
This commit is contained in:
parent
517db226fe
commit
fc4619f8a9
@ -588,6 +588,17 @@ gst_gl_window_cocoa_send_message (GstGLWindow * window, GstGLWindowCB callback,
|
||||
}
|
||||
|
||||
- (void) applicationWillTerminate:(NSNotification *)aNotification {
|
||||
#ifdef GNUSTEP
|
||||
/* fixes segfault with gst-launch-1.0 -e ... and sending SIGINT (Ctrl-C)
|
||||
* which causes GNUstep to run a signal handler in the main thread.
|
||||
* However that thread has never been 'registered' with GNUstep so
|
||||
* the autorelease magic of objective-c causes a segfault from accessing
|
||||
* a null NSThread object somewhere deep in GNUstep.
|
||||
*
|
||||
* I put it here because this is the first time we can register the thread.
|
||||
*/
|
||||
GSRegisterCurrentThread();
|
||||
#endif
|
||||
}
|
||||
|
||||
@end
|
||||
|
Loading…
x
Reference in New Issue
Block a user