>>>> "Paul" == Paul Moore <Moore> writes:
> Windows 2k, XEmacs 21.5.11 (2003-04-02 CVS update).
Paul> Mine's the released 21.5.11. Is there a CVS snapshot
Paul> (source) anywhere I could try with?
OK, there will be within an hour of this post. I'm rolling the
tarball now, it will probably take 15-20 min to upload.
ftp:://ftp.xemacs.org/pub/xemacs/nightly/xemacs-cvs-20030410.tar.gz
[Steve Y: any chance of getting the nightly running again?]
Paul> Hope this helps. If you need any more information, or you
Paul> can tell me how to get something you could use out of MSVC,
Paul> then let me know.
You did exactly what was needed. If you understand the MSVC debugger
and it supports some sort of scripting, there are files called
.gdbinit and .dbxrc which are init files for GDB and dbx respectively
that contain scripts that describe Lisp objects to the debugger.
Perhaps you can adapt them? That would be hugely helpful in the
future. If not, you might try asking Ben Wing <ben(a)xemacs.org>; I
would assume he knows enough about the MS debugger to give you some
ideas.
> Can you get us a C backtrace?
Paul> OK. I had a go. I don't know how to print anything useful
Paul> out of Visual C++, but the crash comes from an abort() call
Paul> in console.c get_console_variant(), marked with a comment /*
Paul> should never happen */.
Ah, bravo, BRAVO! The patch below shows what went wrong.
2003-03-06 Ben Wing <ben(a)xemacs.org>
* console.c (get_console_variant):
* console.c (Fvalid_console_type_p):
* console.c (Fconsole_type):
* console.h (console_variant):
* device-msw.c:
* device.c:
Add accidentally omitted msprinter console and data descriptions.
Index: console.c
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/src/console.c,v
retrieving revision 1.32
retrieving revision 1.34
diff -u -r1.32 -r1.34
--- console.c 12 Jan 2003 11:08:10 -0000 1.32
+++ console.c 9 Mar 2003 02:27:40 -0000 1.34
@@ -247,6 +247,9 @@
if (EQ (type, Qmswindows))
return mswindows_console;
+ if (EQ (type, Qmsprinter))
+ return msprinter_console;
+
if (EQ (type, Qstream))
return stream_console;
@@ -262,7 +265,7 @@
DEFUN ("valid-console-type-p", Fvalid_console_type_p, 1, 1, 0, /*
Return t if CONSOLE-TYPE is a valid console type.
-Valid types are 'x, 'tty, and 'stream.
+Valid types are 'x, 'tty, 'mswindows, 'msprinter, 'gtk, and
'stream.
*/
(console_type))
{
@@ -390,11 +393,12 @@
DEFUN ("console-type", Fconsole_type, 0, 1, 0, /*
Return the console type (e.g. `x' or `tty') of CONSOLE.
-Value is `tty' for a tty console (a character-only terminal),
+Value is
+`tty' for a tty console (a character-only terminal),
`x' for a console that is an X display,
-`mswindows' for a console that is a Windows NT/95/97 connection,
-`pc' for a console that is a direct-write MS-DOS connection (not yet
- implemented),
+`mswindows' for a console that is an MS Windows connection,
+`msprinter' for a console that is an MS Windows printer connection,
+`gtk' for a console that is a GTK connection,
`stream' for a stream console (which acts like a stdio stream), and
`dead' for a deleted console.
*/
--
Institute of Policy and Planning Sciences
http://turnbull.sk.tsukuba.ac.jp
University of Tsukuba Tennodai