(readevalloop): Abort if START non-nil for non-buffer input.

This commit is contained in:
Richard M. Stallman 2006-05-12 02:08:23 +00:00
parent 942efafab2
commit 1ed7b9ae26
2 changed files with 11 additions and 1 deletions

View file

@ -1,3 +1,7 @@
2006-05-11 Richard Stallman <rms@gnu.org>
* lread.c (readevalloop): Abort if START non-nil for non-buffer input.
2006-05-11 Kim F. Storm <storm@cua.dk>
* xdisp.c (redisplay_tool_bar): Handle large tool-bar-border values.

View file

@ -1340,7 +1340,9 @@ end_of_file_error ()
/* UNIBYTE specifies how to set load_convert_to_unibyte
for this invocation.
READFUN, if non-nil, is used instead of `read'.
START, END is region in current buffer (from eval-region). */
START, END specify region to read in current buffer (from eval-region).
If the input is not from a buffer, they must be nil. */
static void
readevalloop (readcharfun, stream, sourcename, evalfun,
@ -1376,6 +1378,10 @@ readevalloop (readcharfun, stream, sourcename, evalfun,
else if (MARKERP (readcharfun))
b = XMARKER (readcharfun)->buffer;
/* We assume START is nil when input is not from a buffer. */
if (! NILP (start) && !b)
abort ();
specbind (Qstandard_input, readcharfun); /* GCPROs readcharfun. */
specbind (Qcurrent_load_list, Qnil);
record_unwind_protect (readevalloop_1, load_convert_to_unibyte ? Qt : Qnil);