[Top][All Lists]
[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;
}
- [Emacs-diffs] Changes to emacs/src/lread.c,v,
YAMAMOTO Mitsuharu <=