aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJan Djärv2012-10-28 17:10:06 +0100
committerJan Djärv2012-10-28 17:10:06 +0100
commit64ccff5f0ed8f0347b30e8fb4bd9b18a6cbaf1c0 (patch)
treeea4b60d6aa65bff97868eda9605f6f84762e05f8 /src
parente483264ca56201eb40858242aebd2c66419fb365 (diff)
downloademacs-64ccff5f0ed8f0347b30e8fb4bd9b18a6cbaf1c0.tar.gz
emacs-64ccff5f0ed8f0347b30e8fb4bd9b18a6cbaf1c0.zip
* nsterm.m (NO_APPDEFINED_DATA): New define.
(last_appdefined_event_data): New variable (last_appdefined_event): Remove. (ns_select): Initialize t from last_appdefined_event_data instead of [last_appdefined_event data1]. (sendEvent:): Save [theEvent data1] to last_appdefined_event_data, remove last_appdefined_event. Fixes: debbugs:12698
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog10
-rw-r--r--src/nsterm.m19
2 files changed, 17 insertions, 12 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 41909a7a663..d2c16fa8310 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,13 @@
12012-10-28 Jan Djärv <jan.h.d@swipnet.se>
2
3 * nsterm.m (NO_APPDEFINED_DATA): New define.
4 (last_appdefined_event_data): New variable
5 (last_appdefined_event): Remove.
6 (ns_select): Initialize t from last_appdefined_event_data instead
7 of [last_appdefined_event data1].
8 (sendEvent:): Save [theEvent data1] to last_appdefined_event_data,
9 remove last_appdefined_event (Bug#12698).
10
12012-10-28 Stefan Monnier <monnier@iro.umontreal.ca> 112012-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
2 12
3 * frame.c (x_set_font): Catch internal error. 13 * frame.c (x_set_font): Catch internal error.
diff --git a/src/nsterm.m b/src/nsterm.m
index a4eaad47ac1..9b2e544c75b 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -190,7 +190,8 @@ static BOOL ns_menu_bar_is_hidden = NO;
190 190
191/* event loop */ 191/* event loop */
192static BOOL send_appdefined = YES; 192static BOOL send_appdefined = YES;
193static NSEvent *last_appdefined_event = 0; 193#define NO_APPDEFINED_DATA (-8)
194static int last_appdefined_event_data = NO_APPDEFINED_DATA;
194static NSTimer *timed_entry = 0; 195static NSTimer *timed_entry = 0;
195static NSTimer *scroll_repeat_entry = nil; 196static NSTimer *scroll_repeat_entry = nil;
196static fd_set select_readfds, select_writefds; 197static fd_set select_readfds, select_writefds;
@@ -3436,8 +3437,7 @@ ns_select (int nfds, fd_set *readfds, fd_set *writefds,
3436 -------------------------------------------------------------------------- */ 3437 -------------------------------------------------------------------------- */
3437{ 3438{
3438 int result; 3439 int result;
3439 NSEvent *ev; 3440 int t, k, nr = 0;
3440 int k, nr = 0;
3441 struct input_event event; 3441 struct input_event event;
3442 char c; 3442 char c;
3443 3443
@@ -3521,16 +3521,11 @@ ns_select (int nfds, fd_set *readfds, fd_set *writefds,
3521 } 3521 }
3522 unblock_input (); 3522 unblock_input ();
3523 3523
3524 ev = last_appdefined_event; 3524 t = last_appdefined_event_data;
3525 3525
3526 if (ev) 3526 if (t != NO_APPDEFINED_DATA)
3527 { 3527 {
3528 int t; 3528 last_appdefined_event_data = NO_APPDEFINED_DATA;
3529 if ([ev type] != NSApplicationDefined)
3530 emacs_abort ();
3531
3532 t = [ev data1];
3533 last_appdefined_event = 0;
3534 3529
3535 if (t == -2) 3530 if (t == -2)
3536 { 3531 {
@@ -4307,7 +4302,7 @@ ns_term_shutdown (int sig)
4307 modal loop. Just defer it until later. */ 4302 modal loop. Just defer it until later. */
4308 if ([NSApp modalWindow] == nil) 4303 if ([NSApp modalWindow] == nil)
4309 { 4304 {
4310 last_appdefined_event = theEvent; 4305 last_appdefined_event_data = [theEvent data1];
4311 [self stop: self]; 4306 [self stop: self];
4312 } 4307 }
4313 else 4308 else