aboutsummaryrefslogtreecommitdiffstats
path: root/src/eval.c
diff options
context:
space:
mode:
authorAndreas Schwab2008-07-28 12:25:11 +0000
committerAndreas Schwab2008-07-28 12:25:11 +0000
commitddaa36e16efa267f40158baca709a58d2d748743 (patch)
tree0f2975e0a7d7babd50c7870800120516f6ca0880 /src/eval.c
parentd5875b259c24498d742b526d690abe1e59584b6c (diff)
downloademacs-ddaa36e16efa267f40158baca709a58d2d748743.tar.gz
emacs-ddaa36e16efa267f40158baca709a58d2d748743.zip
* lisp.h (init_weak_hash_tables, syms_of_font)
(xd_read_queued_messages, syms_of_dbusbind): Declare. (remove_hash_entry): Don't declare. * eval.c (maybe_call_debugger): Make static and move before use. * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT. * xdisp.c: Include "gtkutil.h" if USE_GTK. * xterm.h (x_set_frame_alpha): Declare.
Diffstat (limited to 'src/eval.c')
-rw-r--r--src/eval.c60
1 files changed, 30 insertions, 30 deletions
diff --git a/src/eval.c b/src/eval.c
index 045d6090a3f..fc69f8bb807 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -1875,6 +1875,36 @@ skip_debugger (conditions, data)
1875 return 0; 1875 return 0;
1876} 1876}
1877 1877
1878/* Call the debugger if calling it is currently enabled for CONDITIONS.
1879 SIG and DATA describe the signal, as in find_handler_clause. */
1880
1881static int
1882maybe_call_debugger (conditions, sig, data)
1883 Lisp_Object conditions, sig, data;
1884{
1885 Lisp_Object combined_data;
1886
1887 combined_data = Fcons (sig, data);
1888
1889 if (
1890 /* Don't try to run the debugger with interrupts blocked.
1891 The editing loop would return anyway. */
1892 ! INPUT_BLOCKED_P
1893 /* Does user want to enter debugger for this kind of error? */
1894 && (EQ (sig, Qquit)
1895 ? debug_on_quit
1896 : wants_debugger (Vdebug_on_error, conditions))
1897 && ! skip_debugger (conditions, combined_data)
1898 /* rms: what's this for? */
1899 && when_entered_debugger < num_nonmacro_input_events)
1900 {
1901 call_debugger (Fcons (Qerror, Fcons (combined_data, Qnil)));
1902 return 1;
1903 }
1904
1905 return 0;
1906}
1907
1878/* Value of Qlambda means we have called debugger and user has continued. 1908/* Value of Qlambda means we have called debugger and user has continued.
1879 There are two ways to pass SIG and DATA: 1909 There are two ways to pass SIG and DATA:
1880 = SIG is the error symbol, and DATA is the rest of the data. 1910 = SIG is the error symbol, and DATA is the rest of the data.
@@ -1975,36 +2005,6 @@ find_handler_clause (handlers, conditions, sig, data)
1975 return Qnil; 2005 return Qnil;
1976} 2006}
1977 2007
1978/* Call the debugger if calling it is currently enabled for CONDITIONS.
1979 SIG and DATA describe the signal, as in find_handler_clause. */
1980
1981int
1982maybe_call_debugger (conditions, sig, data)
1983 Lisp_Object conditions, sig, data;
1984{
1985 Lisp_Object combined_data;
1986
1987 combined_data = Fcons (sig, data);
1988
1989 if (
1990 /* Don't try to run the debugger with interrupts blocked.
1991 The editing loop would return anyway. */
1992 ! INPUT_BLOCKED_P
1993 /* Does user wants to enter debugger for this kind of error? */
1994 && (EQ (sig, Qquit)
1995 ? debug_on_quit
1996 : wants_debugger (Vdebug_on_error, conditions))
1997 && ! skip_debugger (conditions, combined_data)
1998 /* rms: what's this for? */
1999 && when_entered_debugger < num_nonmacro_input_events)
2000 {
2001 call_debugger (Fcons (Qerror, Fcons (combined_data, Qnil)));
2002 return 1;
2003 }
2004
2005 return 0;
2006}
2007
2008/* dump an error message; called like printf */ 2008/* dump an error message; called like printf */
2009 2009
2010/* VARARGS 1 */ 2010/* VARARGS 1 */