bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Emacs Windows NT crashes when loading/evaluating term/w32-win


From: Christoph Conrad
Subject: Emacs Windows NT crashes when loading/evaluating term/w32-win
Date: Wed, 12 Dec 2001 16:29:06 +0100
User-agent: Gnus/5.090004 (Oort Gnus v0.04) Emacs/21.1 (i386-msvc-nt4.0.1381)

In GNU Emacs 21.1.1 (i386-msvc-nt4.0.1381)
 of 2001-10-23 on CLI119
configured using `configure --with-msvc (12.00)'
Important settings:
  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: DEU
  locale-coding-system: iso-latin-1
  default-enable-multibyte-characters: nil

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:

emacs -q --no-site-file

(require 'w32-win "term/w32-win")      => crash
(load "c:/emacs/lisp/term/w32-win")    => crash
(load "c:/emacs/lisp/term/w32-win.el") => crash
C-x C-f w32-win.el <RET> M-x eval-buffer <RET => crash

BTW: w32-win doesn't get preloaded when starting GNU Emacs on Windows
NT, now i know why...

DETAILS:

crash in w32term.c, line 2064

          font = FRAME_FONT (it->f);
          boff = it->f->output_data.w32->baseline_offset;
          font_info = NULL;
        }
      else
        {
          font_info = FONT_INFO_FROM_ID (it->f, face->font_info_id);
          boff = font_info->baseline_offset;
===>      if (font_info->vertical_centering)
            boff = VCENTER_BASELINE_OFFSET (font, it->f) - boff;
        }

      if (it->char_to_display >= ' '
          && (!it->multibyte_p || it->char_to_display < 128))
        {
          /* Either unibyte or ASCII.  */
          int stretched_p;


assembly code

010C79CF   jmp         x_produce_glyphs+160h (010c79d3)
010C79D1   xor         eax,eax
2063:       boff = font_info->baseline_offset;
2064:       if (font_info->vertical_centering)
===> 010C79D3   cmp         dword ptr [eax+20h],0
010C79D7   mov         ebx,dword ptr [eax+124h]
010C79DD   mov         dword ptr [boff],ebx

mhmmmm. Looks like a bug in the code generation!!!! eax is zeroed then
the access!!!




reply via email to

[Prev in Thread] Current Thread [Next in Thread]