[Fuse-for-macosx-commits] SF.net SVN: fuse-for-macosx: [386] trunk/fuse/fusepb
Brought to you by:
fredm
From: <fr...@us...> - 2007-06-17 12:26:50
|
Revision: 386 http://svn.sourceforge.net/fuse-for-macosx/?rev=386&view=rev Author: fredm Date: 2007-06-17 05:26:52 -0700 (Sun, 17 Jun 2007) Log Message: ----------- Work around a problem that can cause an exception to be raised using the NSConnection from several threads, don't allow the joystick selection dialog to be posted from the emulator thread. Modified Paths: -------------- trunk/fuse/fusepb/controllers/FuseController.m trunk/fuse/fusepb/views/DisplayOpenGLView.m Modified: trunk/fuse/fusepb/controllers/FuseController.m =================================================================== --- trunk/fuse/fusepb/controllers/FuseController.m 2007-06-17 11:15:49 UTC (rev 385) +++ trunk/fuse/fusepb/controllers/FuseController.m 2007-06-17 12:26:52 UTC (rev 386) @@ -1235,7 +1235,7 @@ - (void)openFile:(const char *)filename { - if( !filename ) { [[DisplayOpenGLView instance] unpause]; return; } + if( !filename ) return; [[DisplayOpenGLView instance] openFile:filename]; } Modified: trunk/fuse/fusepb/views/DisplayOpenGLView.m =================================================================== --- trunk/fuse/fusepb/views/DisplayOpenGLView.m 2007-06-17 11:15:49 UTC (rev 385) +++ trunk/fuse/fusepb/views/DisplayOpenGLView.m 2007-06-17 12:26:52 UTC (rev 386) @@ -218,6 +218,8 @@ kitConnection = [[NSConnection alloc] initWithReceivePort:port1 sendPort:port2]; [kitConnection setRootObject:self]; + [kitConnection enableMultipleThreads]; + /* Ports switched here */ portArray = [NSArray arrayWithObjects:port2, port1, nil]; @@ -571,7 +573,9 @@ -(void) openFile:(const char *)filename { - [proxy_emulator openFile:filename]; + /* openFile can end up calling a dialog for joystick selection, this must + run on the main thread */ + [real_emulator openFile:filename]; } -(void) tapeOpen:(const char *)filename This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |