comparison src/eval.c @ 4162:8f6a825eb3d3

[xemacs-hg @ 2007-09-04 21:20:18 by aidan] Eliminate a crash when profiling; only pass the backtrace record to profile_record_about_to_call, profile_record_just_called when it's non-nil.
author aidan
date Tue, 04 Sep 2007 21:20:26 +0000
parents 23d7fde3d773
children 8748a3f7ceb4
comparison
equal deleted inserted replaced
4161:08efedad2696 4162:8f6a825eb3d3
3098 (cmd, record_flag, keys)) 3098 (cmd, record_flag, keys))
3099 { 3099 {
3100 /* This function can GC */ 3100 /* This function can GC */
3101 Lisp_Object prefixarg; 3101 Lisp_Object prefixarg;
3102 Lisp_Object final = cmd; 3102 Lisp_Object final = cmd;
3103 struct backtrace backtrace; 3103 PROFILE_DECLARE();
3104 struct console *con = XCONSOLE (Vselected_console); 3104 struct console *con = XCONSOLE (Vselected_console);
3105 3105
3106 prefixarg = con->prefix_arg; 3106 prefixarg = con->prefix_arg;
3107 con->prefix_arg = Qnil; 3107 con->prefix_arg = Qnil;
3108 Vcurrent_prefix_arg = prefixarg; 3108 Vcurrent_prefix_arg = prefixarg;
3531 (form)) 3531 (form))
3532 { 3532 {
3533 /* This function can GC */ 3533 /* This function can GC */
3534 Lisp_Object fun, val, original_fun, original_args; 3534 Lisp_Object fun, val, original_fun, original_args;
3535 int nargs; 3535 int nargs;
3536 struct backtrace backtrace; 3536 PROFILE_DECLARE();
3537 3537
3538 #ifdef ERROR_CHECK_TRAPPING_PROBLEMS 3538 #ifdef ERROR_CHECK_TRAPPING_PROBLEMS
3539 check_proper_critical_section_lisp_protection (); 3539 check_proper_critical_section_lisp_protection ();
3540 #endif 3540 #endif
3541 3541
3839 (int nargs, Lisp_Object *args)) 3839 (int nargs, Lisp_Object *args))
3840 { 3840 {
3841 /* This function can GC */ 3841 /* This function can GC */
3842 Lisp_Object fun; 3842 Lisp_Object fun;
3843 Lisp_Object val; 3843 Lisp_Object val;
3844 struct backtrace backtrace; 3844 PROFILE_DECLARE();
3845 int fun_nargs = nargs - 1; 3845 int fun_nargs = nargs - 1;
3846 Lisp_Object *fun_args = args + 1; 3846 Lisp_Object *fun_args = args + 1;
3847 3847
3848 /* QUIT will check for proper redisplay wrapping */ 3848 /* QUIT will check for proper redisplay wrapping */
3849 3849