view etc/recycle2.xpm @ 4745:0c54de4c4b9d

Resolve the unregistered-CCL-programs-get-garbage-collected problem correctly src/ChangeLog addition: 2009-11-15 Aidan Kehoe <kehoea@parhasard.net> * mule-ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Assert that we always have a symbol in this macro. (setup_ccl_program): Ensure we're not allocating unreachable memory in this function; all symbols must have been resolved in a given CCL program before this function is called. (find_ccl_program): New function, return a CCL program with all its symbols resolved if it is valid (possibly allocating memory), Qnil otherwise. (get_ccl_program): New function, exported to other files; call find_ccl_program, and error if it gives nil. (Fccl_program_p): Call find_ccl_program from this function instead of implementing the bulk of it here. (Fccl_execute): Call get_ccl_program instead of implementing the bulk of it here. (Fccl_execute_on_string): Ditto. * mule-ccl.h (Vfont_ccl_encoder_alist): Remove this declaration, it hasn't been used in years. (get_ccl_program): Declare this function. * mule-coding.c (ccl_putprop): Use get_ccl_program on any specified encode or decode CCL program property. (fixed_width_putprop): Ditto. * mule-charset.c (Fmake_charset): Use get_ccl_program on any specified ccl-program. (Fset_charset_ccl_program): Ditto.
author Aidan Kehoe <kehoea@parhasard.net>
date Sun, 15 Nov 2009 16:53:14 +0000
parents 376386a54a3c
children 7910031dd78a
line wrap: on
line source

/* XPM */
static char * recycle2_xpm[] = {
/* width height ncolors cpp [x_hot y_hot] */
"32 32 4 1 26 23",
/* colors */
" 	s none	m none	c none",
".	s iconColor1	m black	c black",
"X	c #7F7FFFFF0000",
"o	c #45458B8B0000",
/* pixels */
"                                ",
"           ............         ",
"         .XXXXXXXX.oooXX.       ",
"         XXXXXXXX.ooXXXXX.      ",
"        .XXXXXXXX.ooXXXXXX  ..  ",
"        .XXXXXXX..XXXXXXXX .o.  ",
"       .XXXXXXXX  .XXXXXXXXX.   ",
"       XXXXXXXX.   XXXXXXXX.    ",
"      .XXXXXXXX.   XXXXXXXX     ",
"        .XXXXX.    .XXXXXX.     ",
"         ..XXX   ..XXXXXXX      ",
" .........  ..            .XX   ",
"  .XXXXXXX.             .XXXX.  ",
"   .XXXXXX.           ..XXXXXX. ",
"   .XXXXXXX.          XXXXXXXXX ",
"   .XXXXXXX.          .XXXXXXXX ",
"  .XXXXXXXXX.          .XXXXXXX.",
"  .XXXXXXX..X.          XXXXXXX.",
"  .XXXXXXX. ..      .   XXXXXXX.",
"   .XXXXX.         .X   .XXXXXX ",
"    XXXXX          .X    .XXXX. ",
"    .XXX........   XX.........  ",
"     .X.ooXXXXXX  .XXXXXXXXXo   ",
"     .X.oXoXXXXX .XXXXXXXXXXo   ",
"      XooXXXXXXX XXXXXXXXXXo.   ",
"      .ooXXXXXXX XXXXXXXXXX.    ",
"       ooXXXXXXX .XXXXXXXXo     ",
"        .XXXXXXX  .XXXXXo.      ",
"         .......   XX....       ",
"                   .X           ",
"                   .X           ",
"                    .           "};