Commit 8fc45744 authored by Juanma Barranquero's avatar Juanma Barranquero
Browse files

* lread.c (Fload): Stop checking Vloads_in_progress and signal

  error as soon as a recursive load is detected.
parent 96ad1a2f
2009-02-25 Juanma Barranquero <lekktu@gmail.com>
* lread.c (Fload): Stop checking Vloads_in_progress as soon as
a recursive load is detected.
2009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com> 2009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
   
* nsterm.m (ns_ring_bell): Convert rect to window coordinates * nsterm.m (ns_ring_bell): Convert rect to window coordinates
......
...@@ -1113,14 +1113,12 @@ Return t if the file exists and loads successfully. */) ...@@ -1113,14 +1113,12 @@ Return t if the file exists and loads successfully. */)
int count = 0; int count = 0;
Lisp_Object tem; Lisp_Object tem;
for (tem = Vloads_in_progress; CONSP (tem); tem = XCDR (tem)) for (tem = Vloads_in_progress; CONSP (tem); tem = XCDR (tem))
if (!NILP (Fequal (found, XCAR (tem)))) if (!NILP (Fequal (found, XCAR (tem))) && (++count > 3))
count++; {
if (count > 3) if (fd >= 0)
{ emacs_close (fd);
if (fd >= 0) signal_error ("Recursive load", Fcons (found, Vloads_in_progress));
emacs_close (fd); }
signal_error ("Recursive load", Fcons (found, Vloads_in_progress));
}
record_unwind_protect (record_load_unwind, Vloads_in_progress); record_unwind_protect (record_load_unwind, Vloads_in_progress);
Vloads_in_progress = Fcons (found, Vloads_in_progress); Vloads_in_progress = Fcons (found, Vloads_in_progress);
} }
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment