Commit 53654733 authored by Gerd Moellmann's avatar Gerd Moellmann

(get_keyelt): Temporarily inhibit GC while evaluating

a menu filter.
parent fca68a95
2000-07-04 Gerd Moellmann <gerd@gnu.org>
* keymap.c (get_keyelt): Temporarily inhibit GC while evaluating
a menu filter.
2000-07-04 Kenichi Handa <handa@etl.go.jp>
* composite.h (make_composition_value_copy): Extern it.
......
......@@ -592,14 +592,18 @@ get_keyelt (object, autoload)
/* If there's a `:filter FILTER', apply FILTER to the
menu-item's definition to get the real definition to
use. */
use. Temporarily inhibit GC while evaluating FILTER,
because not functions calling get_keyelt are prepared
for a GC. */
for (; CONSP (tem) && CONSP (XCDR (tem)); tem = XCDR (tem))
if (EQ (XCAR (tem), QCfilter))
{
int count = inhibit_garbage_collection ();
Lisp_Object filter;
filter = XCAR (XCDR (tem));
filter = list2 (filter, list2 (Qquote, object));
object = menu_item_eval_property (filter);
unbind_to (count, Qnil);
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