Thank you Olle, I can reproduce the crash without problems with that recipe.
Here’s a patch that addresses it for me; please check if it works for you.
diff -r 8418d1ad4944 src/ChangeLog
--- a/src/ChangeLog Sun Nov 02 00:34:13 2008 +0900
+++ b/src/ChangeLog Sat Jan 10 22:50:17 2009 +0000
@@ -1,3 +1,8 @@
+2009-01-10 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * objects-msw.c (mswindows_font_spec_matches_charset_stage_2):
+ Accept msprinter as well as mswindows devices here.
+
2008-11-01 Stephen J. Turnbull <stephen(a)xemacs.org>
* regex.c (re_search_2): Fix at_dot by changing charpos to bytepos.
diff -r 8418d1ad4944 src/objects-msw.c
--- a/src/objects-msw.c Sun Nov 02 00:34:13 2008 +0900
+++ b/src/objects-msw.c Sat Jan 10 22:50:17 2009 +0000
@@ -2064,8 +2064,21 @@
else
{
HDC hdc = CreateCompatibleDC (NULL);
- Lisp_Object font_list = DEVICE_MSWINDOWS_FONTLIST (d);
- Lisp_Object truename;
+ Lisp_Object font_list = Qnil, truename;
+
+ if (DEVICE_TYPE_P (d, mswindows))
+ {
+ font_list = DEVICE_MSWINDOWS_FONTLIST (d);
+ }
+ else if (DEVICE_TYPE_P (d, msprinter))
+ {
+ font_list = DEVICE_MSPRINTER_FONTLIST (d);
+ }
+ else
+ {
+ assert(0);
+ }
+
HFONT hfont = create_hfont_from_font_spec (the_nonreloc, hdc, Qnil,
font_list,
ERROR_ME_DEBUG_WARN,
Ar an seachtú lá de mí Eanair, scríobh Olle Olsson:
A possible cause of the printing problem could be a font issue!
It seems that when I get the warning (in the *Warnings* buffer)
(1) (font/notice) Unable to instantiate font for charset
jit-ucs-charset-0, face default
the printing crash occurs.
Do not know where the relevant code might be found, but at least it is
something that you might try to reproduce.
And I would hope that it is something that XEmacs can catch and handle
in some way.
Regards,
/olle
Olle Olsson wrote:
> ================================================================
> Dear Bug Team!
>
> Background: the three ways of printing a buffer (well, there are more
> ways, but
> lets be simple-minded first):
> - M-x print-buffer: FAILS ... cannot find program "pr"
> - the print icon on the top menu: FAILS ... cannot find program ""
> - the File > Print menu item: sometimes works, but not this time ;-(
>
> I get the Windows window for selecting a printer, selects it, and does
> the "OK"
> there.
>
> Then the crash came. No output seen on printer.
>
> The printout in the DOS-box is pasted below.
>
> By the way ...
> - `M-x recover-session' did not work .... "nothing to recover"
> - maybe I should go back to a more stable version of
> XEmacs-for-MSWindows.
>
> BEGIN DOS BOX =================================>>>
>
> Fatal error: assertion failed, file
> c:\XEmacsBuild\xemacs-21.5-2008-10-12\src\device-impl.h, line 166, EQ
> (DEVICE_TYPE (d), sym)
>
> Fatal error.
>
> Your files have been auto-saved.
> Use `M-x recover-session' to recover them.
>
> Your version of XEmacs was distributed with a PROBLEMS file that may
> describe
> your crash, and with luck a workaround. Please check it first, but do
> report
> the crash anyway.
>
> Please report this bug by invoking M-x report-emacs-bug, or by selecting
> `Send Bug Report' from the Help menu. If that won't work, send ordinary
> email to `xemacs-beta(a)xemacs.org'. *MAKE SURE* to include this entire
> output from this crash, especially including the Lisp backtrace, as
> well as
> the XEmacs configuration from M-x describe-installation (or equivalently,
> the file `Installation' in the top of the build tree).
>
> If you are fortunate enough to have some sort of debugging aid installed
> on your system, for example Visual C++, and you can get a C stack
> backtrace,
> *please* include it, as it will make our life far easier.
>
>
> Lisp backtrace follows:
>
> # (unwind-protect ...)
> # (unwind-protect ...)
> # (unwind-protect ...)
> # (unwind-protect ...)
> # (unwind-protect ...)
> # (unwind-protect ...)
> # (unwind-protect ...)
> # (unwind-protect ...)
> # (catch #<INTERNAL OBJECT (XEmacs bug?) (opaque, size=0) 0x183d030> ...)
> # (unwind-protect ...)
> # bind (inhibit-quit)
> # (unwind-protect ...)
> # bind (inhibit-quit)
> # (unwind-protect ...)
> # (unwind-protect ...)
> # (unwind-protect ...)
> # (unwind-protect ...)
> # (unwind-protect ...)
> # (unwind-protect ...)
> # (unwind-protect ...)
> # (unwind-protect ...)
> # (unwind-protect ...)
> window-end(#<window on "081216-agenda.txt" 0x69891c> t)
> # bind (last-end reached-end pageno footer-window header-window
> context to-page from-page pixel-vertical-clip-threshold vertdpi w)
> # (unwind-protect ...)
> # (unwind-protect ...)
> # (unwind-protect ...)
> window-end(#<window on "081216-agenda.txt" 0x69891c> t)
> # bind (last-end reached-end pageno footer-window header-window
> context to-page from-page pixel-vertical-clip-threshold vertdpi w)
> # (unwind-protect ...)
> # (unwind-protect ...)
> # (unwind-protect ...)
> # bind (d f header-buffer footer-buffer copies default-frame-plist
> props print-device buffer end start)
> generic-print-region(1 5109 nil #<msprinter-device on "tolstoj:694A8C"
> 0x694a8c> (name "tolstoj" selected-page-button all copies 1))
> # bind (really-print-region props d end start print-region)
> byte-code("..." [props d end start print-region buffer region-active-p
> region-beginning point-min region-end point-max valid-device-type-p
> msprinter generic-print-region Printer-get-device make-dialog-box
> print :device :allow-selection :selected-page-button selection all
> plist-get selected-page-button really-print-region
> display-print-dialog] 9)
> # (condition-case ... . ((error (byte-code "Ç┴ Å¿ÇA\"ź" [err
> Printer-clear-device signal] 3))))
> # bind (display-print-dialog buffer)
> #<compiled-function (&optional buffer display-print-dialog)
"...(5)"
> [err (byt %)*+ź" [props d end start print-region buffer
> region-active-p region-beginning point-min region-end point-max
> valid-device-type-p msprinter generic-print-region Printer-get-device
> make-dialog-box print :device :allow-selection :selected-page-button
> selection all plist-get selected-page-button really-print-region
> display-print-dialog] 9) ((error (byte-code "Ç┴ Å¿ÇA\"ź" [err
> Printer-clear-device signal] 3)))] 3 1294996 (list nil (not
> current-prefix-arg))>(nil t)
> call-interactively(generic-print-buffer)
> (dispatch-event "[internal]")
> # (condition-case ... . error)
> # (catch top-level ...)
>
> <<<=================================END DOS BOX
>
>
> ================================================================
>
> System Info to help track down your bug:
> ---------------------------------------
>
> OS version:
>
> Microsoft Windows XP [Version 5.1.2600]
> OS: Windows_NT
>
> XEmacs 21.5-b28 "fuki" configured for `i586-pc-win32'.
>
> Building XEmacs using "nmake".
> Building XEmacs using make flags " ".
> Building XEmacs in source tree "c:\\XEmacsBuild\\xemacs-21.5-2008-10-12".
> For src, using compiler "cl -nologo -W3 -DSTRICT -Zi -Od -MD -c -TP
> -Ic:\XEmacsBuild\xemacs-21.5-2008-10-12\nt\inc
> -Ic:\XEmacsBuild\xemacs-21.5-2008-10-12\src
> -I"e:/cygwin/usr/local/src\xpm-3.4k"
> -I"e:/cygwin/usr/local/src\xpm-3.4k\lib"
> -I"e:/cygwin/usr/local/src\libpng-1.2.8"
> -I"e:/cygwin/usr/local/src/zlib"
> -I"e:/cygwin/usr/local/src/tiff-3.7.3\libtiff"
> -I"e:/cygwin/usr/local/src\jpeg-6b"
-I"e:/cygwin/usr/local/src/zlib"
> -DHAVE_MS_WINDOWS -DHAVE_MENUBARS -DHAVE_SCROLLBARS -DHAVE_TOOLBARS
> -DHAVE_WIDGETS -DHAVE_DIALOGS -DHAVE_XPM -DFOR_MSW -DHAVE_GIF
> -DHAVE_PNG -DHAVE_TIFF -DHAVE_JPEG -DHAVE_ZLIB -DHAVE_NATIVE_SOUND
> -DMULE -DERROR_CHECK_ALL -DPDUMP -DUSE_KKCC -DSYSTEM_MALLOC
> -DDEBUG_XEMACS -D_DEBUG -DWIN32_LEAN_AND_MEAN -DWIN32_NATIVE -Demacs
> -DHAVE_CONFIG_H -DPATH_VERSION=\"21.5-b28\"
-DPATH_PROGNAME=\"xemacs\"
> -DEMACS_VERSION=\"21.5-b28\" -DEMACS_PROGNAME=\"xemacs\"
> -DSHEBANG_PROGNAME=\"xemacs-script\"
> -DSTACK_TRACE_EYE_CATCHER=xemacs_21_5_b28_i586_pc_win32
>
-DPATH_PREFIX=\""c:/XEmacsBuild/installed/2008-10-12/XEmacs-21.5-b28"\"
> -DEMACS_MAJOR_VERSION=21 -DEMACS_MINOR_VERSION=5
> -DEMACS_BETA_VERSION=28 -DXEMACS_CODENAME=\""fuki"\"
> -DXEMACS_EXTRA_NAME=\"""\"
-DEMACS_CONFIGURATION=\"i586-pc-win32\"".
> For lib-src, using compiler "cl -nologo -W3 -DSTRICT -Zi -Od -MD
> -Ic:\XEmacsBuild\xemacs-21.5-2008-10-12\lib-src
> -Ic:\XEmacsBuild\xemacs-21.5-2008-10-12\src -DHAVE_CONFIG_H
> -DWIN32_NATIVE".
> Compiling as C++.
> Installing XEmacs in
> "c:/XEmacsBuild/installed/2008-10-12/XEmacs-21.5-b28".
> Compiling in support for Microsoft Windows native GUI.
> Compiling in international (MULE) support.
> Compiling in support for XPM images.
> Compiling in support for GIF images.
> Compiling in support for PNG images.
> Compiling in support for TIFF images.
> Compiling in support for JPEG images.
> Compiling in support for GZIP compression/decompression.
> Compiling in support for toolbars.
> Compiling in support for dialogs.
> Compiling in support for widgets.
> Compiling in support for native sounds.
> Using portable dumper.
> Using system malloc.
> Using DLL version of C runtime library.
> Compiling in extra internal error-checking.
> NOTE: ---------------------------------------------------------
> NOTE: Compiling in support for runtime error-checking.
> NOTE: XEmacs will run noticeably more slowly as a result.
> NOTE: Error-checking is on by default for XEmacs beta releases.
> NOTE: ---------------------------------------------------------
> Compiling in debugging support (no slowdown).
> Using new experimental GC mark algorithms.
>
>
> Load-Path Lisp Shadows:
> ----------------------
> (c:\Program Files\XEmacs\mule-packages\lisp\mule-base\viet-util
> c:\Program
> Files\XEmacs\XEmacs-21.5-b28\lisp\mule\viet-util c:\Program
> Files\XEmacs\mule-packages\lisp\mule-base\korea-util c:\Program
> Files\XEmacs\XEmacs-21.5-b28\lisp\mule\korea-util c:\Program
> Files\XEmacs\mule-packages\lisp\mule-base\japan-util c:\Program
> Files\XEmacs\XEmacs-21.5-b28\lisp\mule\japan-util c:\Program
> Files\XEmacs\mule-packages\lisp\mule-base\ethio-util c:\Program
> Files\XEmacs\XEmacs-21.5-b28\lisp\mule\ethio-util c:\Program
> Files\XEmacs\mule-packages\lisp\mule-base\china-util c:\Program
> Files\XEmacs\XEmacs-21.5-b28\lisp\mule\china-util c:\Program
> Files\XEmacs\xemacs-packages\lisp\xemacs-base\regexp-opt c:\Program
> Files\XEmacs\XEmacs-21.5-b28\lisp\regexp-opt c:\Program
> Files\XEmacs\xemacs-packages\lisp\xemacs-base\easy-mmode c:\Program
> Files\XEmacs\XEmacs-21.5-b28\lisp\easy-mmode ~/.xemacs/custom c:\Program
> Files\XEmacs\XEmacs-21.5-b28\lisp\custom)
>
> Internationalization Settings:
> -------------------------
>
> Environment:
>
> Value of LC_ALL : nil
> Value of LC_COLLATE : nil
> Value of LC_CTYPE : nil
> Value of LC_MESSAGES : nil
> Value of LC_MONETARY : nil
> Value of LC_NUMERIC : nil
> Value of LC_TIME : nil
> Value of LANG : nil
>
> Lisp locale settings:
>
> current-language-environment => "Latin-1"
> default-buffer-file-coding-system => mswindows-multibyte-dos
> default-process-coding-system => (undecided .
> mswindows-multibyte-system-default)
> (current-locale) => "Swedish_Sweden.1252"
> keyboard-coding-system => mswindows-multibyte-system-default
> terminal-coding-system => mswindows-multibyte-system-default
> (coding-priority-list) =>
> (iso-8-1 utf-16-little-endian-bom utf-16-bom utf-8-bom iso-7
> no-conversion
> utf-8 iso-8-2 iso-8-designate iso-lock-shift shift-jis big5
> utf-16-little-endian utf-16 ucs-4)
>
> Coding system aliases:
>
> 'native is aliased to mswindows-multibyte-system-default-dos
> 'file-name is aliased to native
> 'mswindows-multibyte-system-default is not a coding system alias
>
>
> Installed XEmacs Packages:
> -------------------------
> (xemacs-devel ver: 1.78 upstream: No-Upstream-Ver)
> (xemacs-base ver: 2.18 upstream: No-Upstream-Ver)
> (time ver: 1.14 upstream: 1.17)
> (text-modes ver: 1.95 upstream: No-Upstream-Ver)
> (texinfo ver: 1.3 upstream: No-Upstream-Ver)
> (speedbar ver: 1.29 upstream: 1.0pre4)
> (sounds-wav ver: 1.12 upstream: No-Upstream-Ver)
> (sh-script ver: 1.24 upstream: 2.0f)
> (semantic ver: 1.2 upstream: 1.4.4)
> (ps-print ver: 1.12 upstream: 6.5.6)
> (prog-modes ver: 2.16 upstream: No-Upstream-Ver)
> (perl-modes ver: 1.14 upstream: No-Upstream-Ver)
> (pc ver: 1.28 upstream: No-Upstream-Ver)
> (os-utils ver: 1.41 upstream: No-Upstream-Ver)
> (net-utils ver: 1.56 upstream: N/A)
> (mail-lib ver: 1.8 upstream: No-Upstream-Ver)
> (jde ver: 1.51 upstream: 2.3.3)
> (hm--html-menus ver: 1.24 upstream: 5.9)
> (fsf-compat ver: 1.17 upstream: No-Upstream-Ver)
> (eieio ver: 1.06 upstream: 1.0pre4)
> (efs ver: 1.34 upstream: 1.24)
> (edit-utils ver: 2.4 upstream: No-Upstream-Ver)
> (ediff ver: 1.75 upstream: 2.75)
> (edebug ver: 1.22 upstream: No-Upstream-Ver)
> (ecb ver: 1.22 upstream: 2.31)
> (dired ver: 1.19 upstream: 7.16)
> (debug ver: 1.18 upstream: No-Upstream-Ver)
> (cc-mode ver: 1.45 upstream: 5.30.10)
> (c-support ver: 1.22 upstream: No-Upstream-Ver)
> (mule-base ver: 1.53 upstream: No-Upstream-Ver)
> (lookup ver: 1.15 upstream: 1.0)
> (locale ver: 1.28 upstream: No-Upstream-Ver)
> (latin-unity ver: 1.2 upstream: 1.20)
> (latin-euro-standards ver: 1.08 upstream: 1.08)
>
>
>
> Features:
> --------
>
> (mail-abbrevs xemacsbug shadow sendmail rfc822 mwheel view-less view
> outline
> efs-cu cus-face paren blink-paren xemacs-devel-autoloads
> xemacs-base-autoloads
> time-autoloads text-modes-autoloads texinfo-autoloads speedbar-autoloads
> sounds-wav-autoloads sh-script-autoloads semantic-autoloads
> ps-print-autoloads
> prog-modes-autoloads perl-modes-autoloads pc-autoloads os-utils-autoloads
> net-utils-autoloads mail-lib-autoloads jde-autoloads
> hm--html-menus-autoloads
> fsf-compat-autoloads eieio-autoloads efs-autoloads edit-utils-autoloads
> ediff-autoloads edebug-autoloads ecb-autoloads dired-autoloads
> debug-autoloads
> cc-mode-autoloads c-support-autoloads mule-base-autoloads
> lookup-autoloads
> locale-autoloads latin-unity-autoloads latin-euro-standards-autoloads
> mule-autoloads auto-autoloads auto-show fontl-hooks canna-leim tibetan
> slovenian czech romanian lao devanagari indian cyrillic code-cmds
> gutter-items
> menubar-items x-menubar dragdrop mode-motion mouse behavior itimer
> auto-save
> lisp-mode easymenu easy-mmode iso8859-1 page buff-menu lib-complete
> loadhist
> cus-file derived newcomment rsz-minibuf env text-props frame obsolete
> cus-start
> custom widget cl-extra cl cl-19 packages backquote unicode
> mswindows-scrollbars
> mswindows toolbar native-sound scrollbar network-streams subprocesses
> menu-accelerator-support menubar md5 xemacs mule gutter tiff png gif
> jpeg xpm
> xbm lisp-float-type file-coding dde windows-nt dragdrop-api dialog
> devices
> window-system base64)
>
>
> Recent keystrokes:
> -----------------
>
> misc-user misc-user misc-user misc-user misc-user misc-user
> misc-user misc-user misc-user misc-user misc-user misc-user
> misc-user misc-user misc-user misc-user misc-user misc-user
> misc-user misc-user misc-user misc-user misc-user misc-user
> misc-user misc-user misc-user misc-user misc-user misc-user
> misc-user misc-user misc-user misc-user misc-user misc-user
> misc-user misc-user misc-user misc-user misc-user misc-user
> misc-user misc-user misc-user misc-user misc-user misc-user
> misc-user misc-user misc-user misc-user misc-user misc-user
> misc-user misc-user misc-user misc-user misc-user misc-user
> misc-user misc-user button4up button4up button5up button5up
> button5up button4up button5up button5up button5up button5up
> button5up C-g C-g C-g C-g C-g C-g misc-user SPC button1
> button1up C-x 1 ESC x r e p o r t SPC e BS SPC x TAB
> RET
>
>
> Recent messages (most recent first):
> -----------------------------------
>
> Loading xemacsbug...done
> Loading xemacsbug...
> Making completion list...
> space = page forward; b = page back; h = help; q = quit.
> Quit
> Quit
> Quit
> Quit
> Quit
> Quit
> Loading mwheel...done
> Loading mwheel...
> space = page forward; b = page back; h = help; q = quit.
> (New file)
> Loading view-less...done
> Loading view-less...
> Quit: isearch
> Loading outline...done
> Loading outline...
> Notice: Unable to instantiate font for charset jit-ucs-charset-0, face
> zmacs-region
>
>
>
>
--
------------------------------------------------------------------
Olle Olsson olleo(a)sics.se Tel: +46 8 633 15 19 Fax: +46 8 751 72 30
[Svenska W3C-kontoret: olleo(a)w3.org]
SICS [Swedish Institute of Computer Science]
Box 1263
SE - 164 29 Kista
Sweden
------------------------------------------------------------------
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-beta
--
¿Dónde estará ahora mi sobrino Yoghurtu Nghe, que tuvo que huir
precipitadamente de la aldea por culpa de la escasez de rinocerontes?
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-beta