comparison src/callint.c @ 380:8626e4521993 r21-2-5

Import from CVS: tag r21-2-5
author cvs
date Mon, 13 Aug 2007 11:07:10 +0200
parents 6240c7796c7a
children 74fd4e045ea6
comparison
equal deleted inserted replaced
379:76b7d63099ad 380:8626e4521993
292 prompt_data = 0; 292 prompt_data = 0;
293 #endif 293 #endif
294 } 294 }
295 else if (COMPILED_FUNCTIONP (fun)) 295 else if (COMPILED_FUNCTIONP (fun))
296 { 296 {
297 struct Lisp_Compiled_Function *b = XCOMPILED_FUNCTION (fun); 297 Lisp_Compiled_Function *f = XCOMPILED_FUNCTION (fun);
298 if (!(b->flags.interactivep)) 298 if (! f->flags.interactivep)
299 goto lose; 299 goto lose;
300 specs = compiled_function_interactive (b); 300 specs = compiled_function_interactive (f);
301 } 301 }
302 else if (!CONSP (fun)) 302 else if (!CONSP (fun))
303 goto lose; 303 goto lose;
304 else 304 else
305 { 305 {
403 /* Translate interactive prompt. */ 403 /* Translate interactive prompt. */
404 if (STRINGP (specs)) 404 if (STRINGP (specs))
405 { 405 {
406 Lisp_Object domain = Qnil; 406 Lisp_Object domain = Qnil;
407 if (COMPILED_FUNCTIONP (fun)) 407 if (COMPILED_FUNCTIONP (fun))
408 domain = Fcompiled_function_domain (fun); 408 domain = compiled_function_domain (XCOMPILED_FUNCTION (fun));
409 if (NILP (domain)) 409 if (NILP (domain))
410 specs = Fgettext (specs); 410 specs = Fgettext (specs);
411 else 411 else
412 specs = Fdgettext (domain, specs); 412 specs = Fdgettext (domain, specs);
413 } 413 }
523 /* XEmacs: was fun = call0 (fun), but that's backtraced wrong */ 523 /* XEmacs: was fun = call0 (fun), but that's backtraced wrong */
524 { 524 {
525 struct gcpro gcpro1; 525 struct gcpro gcpro1;
526 526
527 GCPRO1 (fun); 527 GCPRO1 (fun);
528 fun = funcall_recording_as (function, 1, &fun); 528 fun = Ffuncall (1, &fun);
529 UNGCPRO; 529 UNGCPRO;
530 } 530 }
531 if (set_zmacs_region_stays) 531 if (set_zmacs_region_stays)
532 zmacs_region_stays = 1; 532 zmacs_region_stays = 1;
533 return unbind_to (speccount, fun); 533 return unbind_to (speccount, fun);