emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] trunk r117157: * nsfns.m (Fns_do_applescript): Put code in


From: Jan D.
Subject: [Emacs-diffs] trunk r117157: * nsfns.m (Fns_do_applescript): Put code in the wrong place. Here is correct.
Date: Mon, 26 May 2014 11:26:29 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 117157
revision-id: address@hidden
parent: address@hidden
fixes bug: http://debbugs.gnu.org/17424
committer: Jan D. <address@hidden>
branch nick: trunk
timestamp: Mon 2014-05-26 13:26:24 +0200
message:
  * nsfns.m (Fns_do_applescript): Put code in the wrong place. Here is correct.
modified:
  src/ChangeLog                  changelog-20091113204419-o5vbwnq5f7feedwu-1438
  src/nsfns.m                    nsfns.m-20091113204419-o5vbwnq5f7feedwu-8741
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2014-05-26 11:16:47 +0000
+++ b/src/ChangeLog     2014-05-26 11:26:24 +0000
@@ -1,5 +1,8 @@
 2014-05-26  Jan Djärv  <address@hidden>
 
+       * 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.m (ns_init_events, ns_finish_events): New functions.

=== modified file 'src/nsfns.m'
--- a/src/nsfns.m       2014-05-26 11:16:47 +0000
+++ b/src/nsfns.m       2014-05-26 11:26:24 +0000
@@ -2094,10 +2094,8 @@
     [[NSAppleScript alloc] initWithSource:
                             [NSString stringWithUTF8String: SSDATA (script)]];
 
-  ns_init_events ();
   returnDescriptor = [scriptObject executeAndReturnError: &errorDict];
   [scriptObject release];
-  ns_finish_events ();
   *result = Qnil;
 
   if (returnDescriptor != NULL)
@@ -2158,6 +2156,7 @@
   Lisp_Object result;
   int status;
   NSEvent *nxev;
+  struct input_event ev;
 
   CHECK_STRING (script);
   check_window_system (NULL);
@@ -2185,8 +2184,10 @@
 
   // If there are other events, the event loop may exit.  Keep running
   // until the script has been handled.  */
+  ns_init_events (&ev);
   while (! NILP (as_script))
     [NSApp run];
+  ns_finish_events ();
 
   status = as_status;
   as_status = 0;


reply via email to

[Prev in Thread] Current Thread [Next in Thread]