emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] Changes to emacs/src/lread.c,v


From: YAMAMOTO Mitsuharu
Subject: [Emacs-diffs] Changes to emacs/src/lread.c,v
Date: Tue, 20 Mar 2007 08:50:31 +0000

CVSROOT:        /cvsroot/emacs
Module name:    emacs
Changes by:     YAMAMOTO Mitsuharu <mituharu>   07/03/20 08:50:31

Index: lread.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/lread.c,v
retrieving revision 1.367
retrieving revision 1.368
diff -u -b -r1.367 -r1.368
--- lread.c     3 Feb 2007 16:56:54 -0000       1.367
+++ lread.c     20 Mar 2007 08:50:31 -0000      1.368
@@ -36,6 +36,7 @@
 #include "keyboard.h"
 #include "termhooks.h"
 #include "coding.h"
+#include "blockinput.h"
 
 #ifdef lint
 #include <sys/inode.h>
@@ -324,14 +325,18 @@
 
   if (EQ (readcharfun, Qget_file_char))
     {
+      BLOCK_INPUT;
       c = getc (instream);
+      UNBLOCK_INPUT;
 #ifdef EINTR
       /* Interrupted reads have been observed while reading over the network */
       while (c == EOF && ferror (instream) && errno == EINTR)
        {
          QUIT;
          clearerr (instream);
+         BLOCK_INPUT;
          c = getc (instream);
+         UNBLOCK_INPUT;
        }
 #endif
       return c;
@@ -414,7 +419,11 @@
   else if (EQ (readcharfun, Qlambda))
     read_bytecode_char (1);
   else if (EQ (readcharfun, Qget_file_char))
+    {
+      BLOCK_INPUT;
     ungetc (c, instream);
+      UNBLOCK_INPUT;
+    }
   else
     call1 (readcharfun, make_number (c));
 }
@@ -625,7 +634,9 @@
      ()
 {
   register Lisp_Object val;
+  BLOCK_INPUT;
   XSETINT (val, getc (instream));
+  UNBLOCK_INPUT;
   return val;
 }
 
@@ -1044,7 +1055,11 @@
 {
   FILE *stream = (FILE *) XSAVE_VALUE (arg)->pointer;
   if (stream != NULL)
+    {
+      BLOCK_INPUT;
     fclose (stream);
+      UNBLOCK_INPUT;
+    }
   if (--load_in_progress < 0) load_in_progress = 0;
   return Qnil;
 }




reply via email to

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