[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Emacs crashes accidentally
From: |
Andreas Schwab |
Subject: |
Re: Emacs crashes accidentally |
Date: |
Fri, 08 Sep 2006 10:49:16 +0200 |
User-agent: |
Gnus/5.110006 (No Gnus v0.6) Emacs/22.0.50 (gnu/linux) |
"Herbert Euler" <address@hidden> writes:
> PRINT_STRING calls STROUT in this way:
>
> (print.c, version 1.190.2.21, line 505-508)
>
> /* strout is safe for output to a frame (echo area) or to
> print_buffer. */
> strout (SDATA (string),
> chars, SBYTES (string),
> printcharfun, STRING_MULTIBYTE (string));
>
> "SDATA (string)" shall be 0x243d8ac (see also result of P *$ in gdb),
> but value of the first argument (PTR) of STROUT is 0x2469648.
> This is the reason why Emacs crashed.
>
> But, why did this happen? Memory leak?
Looks like a GC violation. See the comment for message_nolog:
This may GC (insert may run before/after change hooks),
so the buffer M must NOT point to a Lisp string. */
Can you find out whether GC was called during the call to message_nolog
in strout?
Andreas.
--
Andreas Schwab, SuSE Labs, address@hidden
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
PGP key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."
Re: Emacs crashes accidentally, Richard Stallman, 2006/09/07