X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=src%2Fcallint.c;h=14d9e236bb4aacfb76a141489513916b20a57936;hb=321ab38b7ab1e5c02b1f73abe463d040e06115bd;hp=d1cd9078ba9679b6ac03f754478b43c9b2f385d1;hpb=6883ee56ec887c2c48abe5b06b5e66aa74031910;p=chise%2Fxemacs-chise.git diff --git a/src/callint.c b/src/callint.c index d1cd907..14d9e23 100644 --- a/src/callint.c +++ b/src/callint.c @@ -294,10 +294,10 @@ when reading the arguments. } else if (COMPILED_FUNCTIONP (fun)) { - struct Lisp_Compiled_Function *b = XCOMPILED_FUNCTION (fun); - if (!(b->flags.interactivep)) + Lisp_Compiled_Function *f = XCOMPILED_FUNCTION (fun); + if (! f->flags.interactivep) goto lose; - specs = compiled_function_interactive (b); + specs = compiled_function_interactive (f); } else if (!CONSP (fun)) goto lose; @@ -405,7 +405,7 @@ when reading the arguments. { Lisp_Object domain = Qnil; if (COMPILED_FUNCTIONP (fun)) - domain = Fcompiled_function_domain (fun); + domain = compiled_function_domain (XCOMPILED_FUNCTION (fun)); if (NILP (domain)) specs = Fgettext (specs); else @@ -525,7 +525,7 @@ when reading the arguments. struct gcpro gcpro1; GCPRO1 (fun); - fun = funcall_recording_as (function, 1, &fun); + fun = Ffuncall (1, &fun); UNGCPRO; } if (set_zmacs_region_stays) @@ -715,7 +715,14 @@ when reading the arguments. } case 'k': /* Key sequence (vector of events) */ { - Lisp_Object tem = Fread_key_sequence (PROMPT (), Qnil, Qnil); + struct gcpro ngcpro1; + Lisp_Object tem; + Lisp_Object key_prompt = PROMPT (); + + NGCPRO1(key_prompt); + tem = Fread_key_sequence (key_prompt, Qnil, Qnil); + NUNGCPRO; + visargs[argnum] = Fkey_description (tem); /* The following makes `describe-key' not work with extent-local keymaps and such; and anyway, it's @@ -728,7 +735,14 @@ when reading the arguments. case 'K': /* Key sequence (vector of events), no automatic downcasing */ { - Lisp_Object tem = Fread_key_sequence (PROMPT (), Qnil, Qt); + struct gcpro ngcpro1; + Lisp_Object tem; + Lisp_Object key_prompt = PROMPT (); + + NGCPRO1(key_prompt); + tem = Fread_key_sequence (key_prompt, Qnil, Qt); + NUNGCPRO; + visargs[argnum] = Fkey_description (tem); /* The following makes `describe-key' not work with extent-local keymaps and such; and anyway, it's