view etc/xemacs-icon2.xpm @ 5014:c2e0c3af5fe3

cleanups to debug-print, try harder to make it work during GC -------------------- ChangeLog entries follow: -------------------- src/ChangeLog addition: 2010-02-08 Ben Wing <ben@xemacs.org> * emacs.c: * emacs.c (assert_failed): Fix comments about when inhibit_non_essential_printing_operations is set and how used. Increment/decrement in assert_failed rather than just setting/resetting to avoid hosing things in case we're called when the value is already non-zero. Similarly increment/ decrement in_assert_failed. * gc.c (gc_prepare): * gc.c (gc_finish): Increment/decrement inhibit_non_essential_printing_operations rather than setting/resetting. * print.c: * print.c (debug_out): * print.c (write_string_to_alternate_debugging_output): * print.c (restore_inhibit_non_essential_conversion_operations): * print.c (debug_print_exit): * print.c (debug_print_enter): * print.c (debug_prin1): * print.c (debug_p4): * print.c (ext_print_begin): * print.c (ext_print_end): * print.c (external_debug_print): * print.c (debug_p3): * print.c (debug_backtrace): * print.c (debug_short_backtrace): * print.c (vars_of_print): Lots of cleanup. Fix debug_out() so it binds inhibit_non_essential_printing_operations around it to ensure no conversion. Remove many other places that set the same var since the lower-level functions now all do it. A few other places, add inhibit_non_essential_printing_operations bindings.Extract the code out that sets up and resets lots of bindings in debug_prin1() so that debug_backtrace() can use it, and rewrite it to use the new STORE_VOID_IN_LISP() rather than having to have a single static opaque structure holding all the bindings (and not handling reentrancy). Fix raw `char' to be `CIbyte' in the declaration of `alternate_do_string'. * signal.c (check_what_happened): Fix bug: Don't try to check for QUIT when inhibit_non_essential_printing_operations or we may screw things up if QUIT happens during debug printing.
author Ben Wing <ben@xemacs.org>
date Mon, 08 Feb 2010 07:00:24 -0600
parents 376386a54a3c
children 7910031dd78a
line wrap: on
line source

/* XPM */
static char * xemacs_xpm[] = {
/* XEmacs pixmap
 * width height ncolors chars_per_pixel */
"50 50 5 1",
/**/
"       s None  c None",
".      m black c darkslategrey",
"X      m white c orange",
"o      m black c slate blue",
"O      m white c white",
/* pixels */
"                                                  ",
"                                                  ",
"                                ......    ...     ",
"                                    ..    ...     ",
"                                .............     ",
"                               .XXXXXXXXXX...     ",
"                              .XX............     ",
"                              .X.         ...     ",
"                             .....        ...     ",
"                                          ...     ",
"                               o          ...     ",
"                              o           ...     ",
"                                          ...     ",
"                            o  o  o       ...     ",
"                            oo   oo       ...     ",
"                              ooo         ...     ",
"    ..........................................    ",
"   o .........................................    ",
"   o  .......................................     ",
"   o   .....................................      ",
"   o   .....................................      ",
"       .....................................      ",
"       .....................................      ",
"   o   .....................................      ",
"  oo   ..O...O.OOOOO........................      ",
"   o   ..O...O.O............................      ",
"       ...O.O..O.....OO.OO..OOO...OO...OOO..      ",
"       ....O...OOOO..O.O.O.O..O..O..O.O.....      ",
"       ...O.O..O.....O.O.O.O..O..O.....OO...      ",
"  o    ..O...O.O.....O...O.O..O..O..O....O..      ",
"  oo   ..O...O.OOOOO.O...O..OO.O..OO..OOO...      ",
"   o   .....................................      ",
"       .....................................      ",
"       .....................................      ",
"       .....................................      ",
"       .....................................      ",
"   o    ...................................       ",
"   o     .................................        ",
"  oo                 ..X..                        ",
"                      .X.    ....                 ",
"                      .X.   .XXXX.                ",
"                      .X.  .XX..XX.               ",
"                      .X.  .X.  .X.               ",
"   o                  .XX..XX.  .X.               ",
"   o                   .XXXX.   .X.               ",
"  o o                   ....    .X.               ",
"                                .X.               ",
"                                                  ",
"                                                  ",
"                                                  "};