www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1997/02/13/20:35:25

From: frazer AT rtp DOT ericsson DOT se (Scott Frazer)
Newsgroups: comp.os.msdos.djgpp
Subject: Re: emacs 19.34 crashes immediately on win nt 4.0
Date: Thu, 13 Feb 1997 21:58:39 GMT
Organization: Ericsson Data Services Americas
Lines: 98
Message-ID: <3303886d.15652352@cnn.exu.ericsson.se>
References: <Pine DOT SUN DOT 3 DOT 91 DOT 970213082031 DOT 8898G-100000 AT is>
NNTP-Posting-Host: pc093.rtp.ericsson.se
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp

Eli Zaretskii <eliz AT is DOT elta DOT co DOT il> wrote:

>If you have time and motivation, please download the Emacs sources,
>compile Emacs on your machine and try to debug this.  At this point, I
>would be happy if I only knew where exactly does Emacs crash.  (The
>traceback makes no sense, so it's probably either in the startup code or
>in the DPMI host built into NT, in which case I need to know what is the
>code in Emacs which causes the DPMI host to barf.)

'scuse me for jumping in here, but I am also running Windows NT v4.0
and can't get emacs to run, so I downloaded the sources and compiled
it (after a little makefile massaging).  Oh, and I am using all the
latest official DJGPP releases, which I unzipped using pkunzip ...
meaning I have LFN set to 'n' both in my DOS environment and in the
'djgpp.env' file.  I tried emacs with both LFNs set to 'y' and it
didn't work incidentally.  I figured LFN=n was safer for this
experiment.

After fooling around with gdb for a while, I have the crash area
down to this:

C:\djgpp\GNU\EMACS\SRC>gdb emacs.exe
GDB is free software and you are welcome to distribute copies of it
 under certain conditions; type "show copying" to see the conditions.
There is absolutely no warranty for GDB; type "show warranty" for
details.
GDB 4.16 (go32), Copyright 1996 Free Software Foundation, Inc...
Environment variable "DISPLAY" not defined.
Breakpoint 1 at 0x72ec7: file msdos.c, line 3065.
(gdb) break dosfns.c:init_dosfns
Breakpoint 2 at 0x6f86f: file dosfns.c, line 257.
(gdb) run
Starting program: c:/djgpp/gnu/emacs/src/emacs.exe

Breakpoint 2, init_dosfns () at dosfns.c:257
257       get_lim_data (); /* why the hell isn't this called
elsewhere? */
(gdb) l 260, 285
260       regs.x.ax = 0x3000;
261       intdos (&regs, &regs);
262       Vdos_version = Fcons (make_number (regs.h.al), make_number
(regs.h.ah)
);
263
264       /* Obtain the country code by calling Dos via Dpmi.  Don't
rely on GO3
2.  */
265       info.size = (sizeof(dos_country_info) + 15) / 16;
266       if (_go32_dpmi_allocate_dos_memory (&info))
267         dos_country_code = 1;
268       else
269         {
270           dpmiregs.x.ax = 0x3800;
271           dpmiregs.x.ds = info.rm_segment;
272           dpmiregs.x.dx = 0;
273           dpmiregs.x.ss = dpmiregs.x.sp = 0;
274           _go32_dpmi_simulate_int (0x21, &dpmiregs);
275           dos_country_code = dpmiregs.x.bx;
276           dosmemget (info.rm_segment * 16, DOS_COUNTRY_INFO,
dos_country_inf
o);
277           _go32_dpmi_free_dos_memory (&info);
278         }
279       dos_set_keyboard (dos_country_code, 0);
280
281       regs.x.ax = 0x6601;
282       intdos (&regs, &regs);
283       if (regs.x.cflag)
284         /* Estimate code page from country code */
285         switch (dos_country_code)
(gdb) break 275
Breakpoint 3 at 0x6f8eb: file dosfns.c, line 275.
(gdb) continue
Continuing.

Breakpoint 3, init_dosfns () at dosfns.c:275
275           dos_country_code = dpmiregs.x.bx;
(gdb) step
276           dosmemget (info.rm_segment * 16, DOS_COUNTRY_INFO,
dos_country_inf
o);
(gdb) step
277           _go32_dpmi_free_dos_memory (&info);
(gdb) step

Program received signal SIGSEGV, Segmentation fault.
Fframe_or_buffer_changed_p () at dispnew.c:1942
1942      FOR_EACH_FRAME (tail, frame)
(gdb)

I tried 'next'ing into '_go32_dpmi_free_dos_memory', but it still
SIGSEGVs.  It may be because I don't have any debug information
for the _go32 functions.

Hope this will help,
Scott Frazer
frazer AT rtp DOT ericsson DOT se

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019