(emacs_write): Don't use QUIT.
authorStefan Monnier <monnier@iro.umontreal.ca>
Mon, 29 Nov 2004 14:39:09 +0000 (14:39 +0000)
committerStefan Monnier <monnier@iro.umontreal.ca>
Mon, 29 Nov 2004 14:39:09 +0000 (14:39 +0000)
src/ChangeLog
src/sysdep.c

index b651ae4..6253b25 100644 (file)
@@ -1,10 +1,13 @@
+2004-11-29  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * sysdep.c (emacs_write): Don't use QUIT.
+
 2004-11-29  Kenichi Handa  <handa@m17n.org>
 
        * buffer.c (init_buffer): Set current_buffer->directory to a
        multibyte string made by string_to_multibyte.
 
-       * emacs.c (init_cmdargs): Set unibyte strings in
-       Vcommand_line_args.
+       * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
 
 2004-11-27  Andreas Schwab  <schwab@suse.de>
 
@@ -13,8 +16,8 @@
        * s/gnu-linux.h: Enable no-op gcpros on ia64.
        (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
 
-       * filelock.c (lock_file_1): Call get_boot_time early.  Increase
-       buffer size.
+       * filelock.c (lock_file_1): Call get_boot_time early.
+       Increase buffer size.
 
 2004-11-27  Eli Zaretskii  <eliz@gnu.org>
 
index 8ce49cd..6284774 100644 (file)
@@ -3285,7 +3285,15 @@ emacs_write (fildes, buf, nbyte)
       if (rtnval == -1)
        {
          if (errno == EINTR)
-           { QUIT; continue; }
+           {
+#ifdef SYNC_INPUT
+             /* I originally used `QUIT' but that might causes files to
+                be truncated if you hit C-g in the middle of it.  --Stef  */
+             if (interrupt_input_pending)
+               handle_async_input ();
+#endif
+             continue;
+           }
          else
            return (bytes_written ? bytes_written : -1);
        }