Subject: bug#872: Crash displaying byte-code

From: "Juanma Barranquero" <[email-masked]>
Date: Wed, 3 Sep 2008 18:06:12 +0200

emacs -Q
M-x ielm <RET>

then typing

(let ((standard-output (current-buffer)))
  (setq unibyte-display-via-language-environment t)
  (set-buffer-multibyte nil)
  (backtrace))

makes Emacs crash on Windows.

Notes:
 - If Emacs is run from inside GDB, it "hangs" for a while and finally
crashes.
 - If run from the command-line, after doing the above it crashes
immediately; the DrMingw backtrace is a bit different.
 - It only happens with an optimized build.
 - All the above steps are required, including executing the `let'
from inside IELM. In fact, the crash happens while IELM is trying to
display byte-code("...")

It apparently started happening after this change:

2008-04-09  Jason Rumney  <address@hidden>

        * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
        for new font backend and composite cases.

emacs-devel discussion:

http://lists.gnu.org/archive/html/emacs-devel/2008-08/msg00236.html