>>>> "Sean" == Sean MacLennan
<seanm(a)seanm.ca> writes:
Hi Sean, Raimona,
I have commited this patch on date: 2002/07/31 10:23:39!
Please update to CVS HEAD and try again:
cvs -f -z3 -d :pserver:cvs@cvs.xemacs.org:/pack/xemacscvs update -PdA
Best regards,
Adrian
Working file: glyphs-x.c
head: 1.70
branch:
locks: strict
access list:
symbolic names:
r21-5-8: 1.69
<lines deleted by Adrian>
xemacs: 1.1.1
keyword substitution: kv
total revisions: 194; selected revisions: 194
description:
----------------------------
revision 1.70
date: 2002/07/31 10:23:39; author: adrian; state: Exp; lines: +16 -13
[S] [PATCH] xemacs-21.5: Fix for xbm crash
-------------------- ChangeLog entries follow: --------------------
src/ChangeLog addition:
2002-07-29 Sean MacLennan <seanm(a)seanm.ca>
* glyphs-x.c (x_locate_pixmap_file): Test path not to be 0, before
using it.
----------------------------
revision 1.69
Sean> Raimona Rowe writes:
> Dear Bug Team!
> XEmacs 21.5-b8 crashes when attempting to load a background pixmap for
> either the default face or for the modeline, either via init.el:
>
> (set-face-background-pixmap 'default [xpm :file
"~/.xemacs/beige.xpm"])
>
> or from ~/.Xdefaults:
>
> Emacs*EmacsFrame.default.attributeBackgroundPixmap:~/.xemacs/beige.xpm
>
> As recently as 21.5-b3 (the version I used previously), this worked. The
> string type conversion pointed to by the C backtrace [line 595 in
> glyphs-x.c] was not present in beta-3:
Sean> I feel bad because I am supposed to be getting someone to commit this
Sean> patch, but I have been way to busy. Here is a patch that fixes your
Sean> problem.
Sean> Cheers,
Sean> Sean
Sean> Index: glyphs-x.c
Sean> ===================================================================
Sean> RCS file: /pack/xemacscvs/XEmacs/xemacs/src/glyphs-x.c,v
Sean> retrieving revision 1.69
Sean> diff -u -u -r1.69 glyphs-x.c
Sean> --- glyphs-x.c 2002/07/10 03:54:45 1.69
Sean> +++ glyphs-x.c 2002/07/30 02:23:59
Sean> @@ -588,20 +588,23 @@
Sean> #ifdef USE_XBMLANGPATH
Sean> {
Sean> Ibyte *path = egetenv ("XBMLANGPATH");
Sean> - Extbyte *pathext;
Sean> - SubstitutionRec subs[1];
Sean> - subs[0].match = 'B';
Sean> - LISP_STRING_TO_EXTERNAL (name, subs[0].substitution, Qfile_name);
Sean> - C_STRING_TO_EXTERNAL (path, pathext, Qfile_name);
Sean> - /* #### Motif uses a big hairy default if $XBMLANGPATH isn't set.
Sean> - We don't. If you want it used, set it. */
Sean> - if (pathext &&
Sean> - (pathext = XtResolvePathname (display, "bitmaps", 0, 0, pathext,
Sean> - subs, XtNumber (subs), 0)))
Sean> + if(path)
Sean> {
Sean> - name = build_ext_string (pathext, Qfile_name);
Sean> - XtFree (pathext);
Sean> - return (name);
Sean> + Extbyte *pathext;
Sean> + SubstitutionRec subs[1];
Sean> + subs[0].match = 'B';
Sean> + LISP_STRING_TO_EXTERNAL (name, subs[0].substitution, Qfile_name);
Sean> + C_STRING_TO_EXTERNAL (path, pathext, Qfile_name);
Sean> + /* #### Motif uses a big hairy default if $XBMLANGPATH isn't set.
Sean> + We don't. If you want it used, set it. */
Sean> + if (pathext &&
Sean> + (pathext = XtResolvePathname (display, "bitmaps", 0, 0,
pathext,
Sean> + subs, XtNumber (subs), 0)))
Sean> + {
Sean> + name = build_ext_string (pathext, Qfile_name);
Sean> + XtFree (pathext);
Sean> + return (name);
Sean> + }
Sean> }
Sean> }
Sean> #endif
--
Adrian Aichner
mailto:adrian@xemacs.org
http://www.xemacs.org/