Commit 858e55f4 authored by Jan Djärv's avatar Jan Djärv
Browse files

* nsfns.m (Fns_do_applescript): Put code in the wrong place. Here is correct.

Fixes: debbugs:17424
parent 6cf4e5d6
2014-05-26 Jan Djärv <jan.h.d@swipnet.se> 2014-05-26 Jan Djärv <jan.h.d@swipnet.se>
* nsfns.m (Fns_do_applescript): Surround NSApp run
with calls to ns_init_events, ns_finish_events (Bug#17424).
* nsterm.h (ns_init_events, ns_finish_events): Declare. * nsterm.h (ns_init_events, ns_finish_events): Declare.
* nsterm.m (ns_init_events, ns_finish_events): New functions. * nsterm.m (ns_init_events, ns_finish_events): New functions.
......
...@@ -2094,10 +2094,8 @@ and GNUstep implementations ("distributor-specific release ...@@ -2094,10 +2094,8 @@ and GNUstep implementations ("distributor-specific release
[[NSAppleScript alloc] initWithSource: [[NSAppleScript alloc] initWithSource:
[NSString stringWithUTF8String: SSDATA (script)]]; [NSString stringWithUTF8String: SSDATA (script)]];
ns_init_events ();
returnDescriptor = [scriptObject executeAndReturnError: &errorDict]; returnDescriptor = [scriptObject executeAndReturnError: &errorDict];
[scriptObject release]; [scriptObject release];
ns_finish_events ();
*result = Qnil; *result = Qnil;
if (returnDescriptor != NULL) if (returnDescriptor != NULL)
...@@ -2158,6 +2156,7 @@ and GNUstep implementations ("distributor-specific release ...@@ -2158,6 +2156,7 @@ and GNUstep implementations ("distributor-specific release
Lisp_Object result; Lisp_Object result;
int status; int status;
NSEvent *nxev; NSEvent *nxev;
struct input_event ev;
CHECK_STRING (script); CHECK_STRING (script);
check_window_system (NULL); check_window_system (NULL);
...@@ -2185,8 +2184,10 @@ and GNUstep implementations ("distributor-specific release ...@@ -2185,8 +2184,10 @@ and GNUstep implementations ("distributor-specific release
// If there are other events, the event loop may exit. Keep running // If there are other events, the event loop may exit. Keep running
// until the script has been handled. */ // until the script has been handled. */
ns_init_events (&ev);
while (! NILP (as_script)) while (! NILP (as_script))
[NSApp run]; [NSApp run];
ns_finish_events ();
status = as_status; status = as_status;
as_status = 0; as_status = 0;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment