From 50d21628a5288420ead32ba97731a496101289b5 Mon Sep 17 00:00:00 2001 In-Reply-To: <6629E4B5-5D34-4840-B0A1-A62BA025C472@play-bow.org> References: <6629E4B5-5D34-4840-B0A1-A62BA025C472@play-bow.org> From: Alan Third Date: Wed, 20 Jul 2016 21:59:17 +0100 Subject: [PATCH] Post AppDefined events from the main thread ONLY (bug#23934) To: Bob Halley Cc: 23924@debbugs.gnu.org * src/nsterm.h: Make nextappdefined var not just GNUStep. * src/nsterm.c (ns_send_appdefined, sendFromMainThread): Remove GNUStep --- src/nsterm.h | 2 +- src/nsterm.m | 5 +---- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/src/nsterm.h b/src/nsterm.h index 862ff2e..3d8b1a1 100644 --- a/src/nsterm.h +++ b/src/nsterm.h @@ -380,9 +380,9 @@ char const * nstrace_fullscreen_type_name (int); #endif #ifdef NS_IMPL_GNUSTEP BOOL applicationDidFinishLaunchingCalled; +#endif @public int nextappdefined; -#endif } - (void)logNotification: (NSNotification *)notification; - (void)antialiasThresholdDidChange:(NSNotification *)notification; diff --git a/src/nsterm.m b/src/nsterm.m index 8da2ffe..dcc1e87 100644 --- a/src/nsterm.m +++ b/src/nsterm.m @@ -3927,8 +3927,8 @@ overwriting cursor (usually when cursor on a tab) */ { NSTRACE_WHEN (NSTRACE_GROUP_EVENTS, "ns_send_appdefined(%d)", value); -#ifdef NS_IMPL_GNUSTEP // GNUstep needs postEvent to happen on the main thread. + // Cocoa needs nextEventMatchingMask to happen on the main thread too. if (! [[NSThread currentThread] isMainThread]) { EmacsApp *app = (EmacsApp *)NSApp; @@ -3938,7 +3938,6 @@ overwriting cursor (usually when cursor on a tab) */ waitUntilDone:YES]; return; } -#endif /* Only post this event if we haven't already posted one. This will end the [NXApp run] main loop after having processed all events queued at @@ -5551,12 +5550,10 @@ - (void)timeout_handler: (NSTimer *)timedEntry ns_send_appdefined (-2); } -#ifdef NS_IMPL_GNUSTEP - (void)sendFromMainThread:(id)unused { ns_send_appdefined (nextappdefined); } -#endif - (void)fd_handler:(id)unused /* -------------------------------------------------------------------------- -- 2.7.4