aboutsummaryrefslogtreecommitdiffstats
path: root/src/lread.c
diff options
context:
space:
mode:
authorVincent Belaïche2017-06-23 22:08:10 +0200
committerVincent Belaïche2017-06-23 22:08:10 +0200
commit2f943ab169cd6a88474e0e8a67112d3b7a5ff835 (patch)
tree2154fc48d875b9fdf247b70214b7092c80c06e77 /src/lread.c
parenteebb9783e1674732b7c63d50211b524ff0fea7bd (diff)
parentdfe73cb06f1dff052aff0abe51ced3b097b06340 (diff)
downloademacs-2f943ab169cd6a88474e0e8a67112d3b7a5ff835.tar.gz
emacs-2f943ab169cd6a88474e0e8a67112d3b7a5ff835.zip
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs
Diffstat (limited to 'src/lread.c')
-rw-r--r--src/lread.c19
1 files changed, 7 insertions, 12 deletions
diff --git a/src/lread.c b/src/lread.c
index b01cbd5c072..182f96223a5 100644
--- a/src/lread.c
+++ b/src/lread.c
@@ -72,10 +72,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
72#define file_tell ftell 72#define file_tell ftell
73#endif 73#endif
74 74
75#ifndef HAVE_GETC_UNLOCKED
76#define getc_unlocked getc
77#endif
78
79/* The objects or placeholders read with the #n=object form. 75/* The objects or placeholders read with the #n=object form.
80 76
81 A hash table maps a number to either a placeholder (while the 77 A hash table maps a number to either a placeholder (while the
@@ -474,16 +470,15 @@ readbyte_from_file (int c, Lisp_Object readcharfun)
474 } 470 }
475 471
476 block_input (); 472 block_input ();
477 c = getc_unlocked (instream);
478 473
479 /* Interrupted reads have been observed while reading over the network. */ 474 /* Interrupted reads have been observed while reading over the network. */
480 while (c == EOF && ferror (instream) && errno == EINTR) 475 while ((c = getc_unlocked (instream)) == EOF && errno == EINTR
476 && ferror_unlocked (instream))
481 { 477 {
482 unblock_input (); 478 unblock_input ();
483 maybe_quit (); 479 maybe_quit ();
484 block_input (); 480 block_input ();
485 clearerr (instream); 481 clearerr_unlocked (instream);
486 c = getc_unlocked (instream);
487 } 482 }
488 483
489 unblock_input (); 484 unblock_input ();
@@ -1942,13 +1937,13 @@ readevalloop (Lisp_Object readcharfun,
1942 read_objects_map 1937 read_objects_map
1943 = make_hash_table (hashtest_eq, DEFAULT_HASH_SIZE, 1938 = make_hash_table (hashtest_eq, DEFAULT_HASH_SIZE,
1944 DEFAULT_REHASH_SIZE, DEFAULT_REHASH_THRESHOLD, 1939 DEFAULT_REHASH_SIZE, DEFAULT_REHASH_THRESHOLD,
1945 Qnil, Qnil); 1940 Qnil, false);
1946 if (! HASH_TABLE_P (read_objects_completed) 1941 if (! HASH_TABLE_P (read_objects_completed)
1947 || XHASH_TABLE (read_objects_completed)->count) 1942 || XHASH_TABLE (read_objects_completed)->count)
1948 read_objects_completed 1943 read_objects_completed
1949 = make_hash_table (hashtest_eq, DEFAULT_HASH_SIZE, 1944 = make_hash_table (hashtest_eq, DEFAULT_HASH_SIZE,
1950 DEFAULT_REHASH_SIZE, DEFAULT_REHASH_THRESHOLD, 1945 DEFAULT_REHASH_SIZE, DEFAULT_REHASH_THRESHOLD,
1951 Qnil, Qnil); 1946 Qnil, false);
1952 if (!NILP (Vpurify_flag) && c == '(') 1947 if (!NILP (Vpurify_flag) && c == '(')
1953 { 1948 {
1954 val = read_list (0, readcharfun); 1949 val = read_list (0, readcharfun);
@@ -2159,12 +2154,12 @@ read_internal_start (Lisp_Object stream, Lisp_Object start, Lisp_Object end)
2159 || XHASH_TABLE (read_objects_map)->count) 2154 || XHASH_TABLE (read_objects_map)->count)
2160 read_objects_map 2155 read_objects_map
2161 = make_hash_table (hashtest_eq, DEFAULT_HASH_SIZE, DEFAULT_REHASH_SIZE, 2156 = make_hash_table (hashtest_eq, DEFAULT_HASH_SIZE, DEFAULT_REHASH_SIZE,
2162 DEFAULT_REHASH_THRESHOLD, Qnil, Qnil); 2157 DEFAULT_REHASH_THRESHOLD, Qnil, false);
2163 if (! HASH_TABLE_P (read_objects_completed) 2158 if (! HASH_TABLE_P (read_objects_completed)
2164 || XHASH_TABLE (read_objects_completed)->count) 2159 || XHASH_TABLE (read_objects_completed)->count)
2165 read_objects_completed 2160 read_objects_completed
2166 = make_hash_table (hashtest_eq, DEFAULT_HASH_SIZE, DEFAULT_REHASH_SIZE, 2161 = make_hash_table (hashtest_eq, DEFAULT_HASH_SIZE, DEFAULT_REHASH_SIZE,
2167 DEFAULT_REHASH_THRESHOLD, Qnil, Qnil); 2162 DEFAULT_REHASH_THRESHOLD, Qnil, false);
2168 if (EQ (Vread_with_symbol_positions, Qt) 2163 if (EQ (Vread_with_symbol_positions, Qt)
2169 || EQ (Vread_with_symbol_positions, stream)) 2164 || EQ (Vread_with_symbol_positions, stream))
2170 Vread_symbol_positions_list = Qnil; 2165 Vread_symbol_positions_list = Qnil;