comparison src/macros.c @ 314:341dac730539 r21-0b55

Import from CVS: tag r21-0b55
author cvs
date Mon, 13 Aug 2007 10:44:22 +0200
parents 558f606b08ae
children cc15677e0335
comparison
equal deleted inserted replaced
313:2905de29931f 314:341dac730539
103 /* This function can GC */ 103 /* This function can GC */
104 struct console *con = XCONSOLE (Vselected_console); 104 struct console *con = XCONSOLE (Vselected_console);
105 int repeat; 105 int repeat;
106 106
107 if (NILP (con->defining_kbd_macro)) 107 if (NILP (con->defining_kbd_macro))
108 error ("Not defining kbd macro."); 108 error ("Not defining kbd macro");
109 109
110 if (NILP (arg)) 110 if (NILP (arg))
111 repeat = -1; 111 repeat = -1;
112 else 112 else
113 repeat = XINT (Fprefix_numeric_value (arg)); 113 repeat = XINT (Fprefix_numeric_value (arg));
273 repeat = XINT (prefixarg); 273 repeat = XINT (prefixarg);
274 } 274 }
275 275
276 final = indirect_function (macro, 1); 276 final = indirect_function (macro, 1);
277 if (!STRINGP (final) && !VECTORP (final)) 277 if (!STRINGP (final) && !VECTORP (final))
278 error ("Keyboard macros must be strings or vectors."); 278 error ("Keyboard macros must be strings or vectors");
279 279
280 tem = Fcons (Vexecuting_macro, make_int (executing_macro_index)); 280 tem = Fcons (Vexecuting_macro, make_int (executing_macro_index));
281 record_unwind_protect (pop_kbd_macro, tem); 281 record_unwind_protect (pop_kbd_macro, tem);
282 282
283 GCPRO1 (final); 283 GCPRO1 (final);