Commit 1c470562 authored by Stefan Monnier's avatar Stefan Monnier

* src/bytecode.c (Fbyte_code): CAR and CDR can GC.

parent a5954fa5
2011-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
* bytecode.c (Fbyte_code): CAR and CDR can GC.
2011-03-30 Zachary Kanfer <zkanfer@gmail.com> (tiny change)
* keyboard.c (Fexecute_extended_command): Do log the "suggest key
......@@ -554,7 +554,16 @@ If the third argument is incorrect, Emacs may crash. */)
{
Lisp_Object v1;
v1 = TOP;
TOP = CAR (v1);
if (CONSP (v1))
TOP = XCAR (v1);
else if (NILP (v1))
TOP = Qnil;
else
{
BEFORE_POTENTIAL_GC ();
wrong_type_argument (Qlistp, v1);
AFTER_POTENTIAL_GC ();
}
break;
}
......@@ -580,7 +589,17 @@ If the third argument is incorrect, Emacs may crash. */)
{
Lisp_Object v1;
v1 = TOP;
TOP = CDR (v1);
if (CONSP (v1))
TOP = XCDR (v1);
else if (NILP (v1))
TOP = Qnil;
else
{
BEFORE_POTENTIAL_GC ();
wrong_type_argument (Qlistp, v1);
AFTER_POTENTIAL_GC ();
}
break;
break;
}
......@@ -911,13 +930,13 @@ If the third argument is incorrect, Emacs may crash. */)
v1 = POP;
v2 = TOP;
CHECK_NUMBER (v2);
AFTER_POTENTIAL_GC ();
op = XINT (v2);
immediate_quit = 1;
while (--op >= 0 && CONSP (v1))
v1 = XCDR (v1);
immediate_quit = 0;
TOP = CAR (v1);
AFTER_POTENTIAL_GC ();
break;
}
......
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