all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* UNBLOCK_INPUT in change_frame_size_1
       [not found] <20060209040953.GG10564@boetes.org>
@ 2006-02-09  6:28 ` Dan Nicolaescu
  2006-02-10  1:13   ` Richard M. Stallman
  0 siblings, 1 reply; 2+ messages in thread
From: Dan Nicolaescu @ 2006-02-09  6:28 UTC (permalink / raw)


Shouldn't UNBLOCK_INPUT in dispnew.c:change_frame_size_1 be placed
after the call to record_unwind_protect?

record_unwind_protect calls grow_specdpl that in turn calls xrealloc
which might allocate memory.... 

change_frame_size_1 can be called like this:

window_change_signal -> change_frame_size -> change_frame_size_1 

I am not quite sure I understand the rules for BLOCK/UNBLOCK_INPUT but
the above looks suspicious.


This was inspired by the following bug reported for the multi-tty branch:

Han Boetes <han@mijncomputer.nl> writes:

  > I really don't know what I was doing, but here it is:
  > 
  > ~/nfs/Emacs/multi-tty/src% gdb =emacs ~/emacs.core
  > GNU gdb 6.3
  > Copyright 2004 Free Software Foundation, Inc.
  > GDB is free software, covered by the GNU General Public License, and you are
  > welcome to change it and/or 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.
  > This GDB was configured as "i386-unknown-openbsd3.9"...
  > Core was generated by `emacs'.
  > Program terminated with signal 11, Segmentation fault.
  > Reading symbols from /usr/lib/libossaudio.so.3.0...done.
  > Loaded symbols for /usr/lib/libossaudio.so.3.0
  > Reading symbols from /usr/lib/libncurses.so.10.0...done.
  > Loaded symbols for /usr/lib/libncurses.so.10.0
  > Reading symbols from /usr/lib/libm.so.2.1...done.
  > Loaded symbols for /usr/lib/libm.so.2.1
  > Reading symbols from /usr/lib/libc.so.39.0...done.
  > Loaded symbols for /usr/lib/libc.so.39.0
  > Reading symbols from /usr/libexec/ld.so...done.
  > Loaded symbols for /usr/libexec/ld.so
  > #0  0x08051798 in window_change_signal (signalnum=28) at /home/public/han/Emacs/multi-tty/src/dispnew.c:6069
  > 6069        get_tty_size (fileno (tty->input), &width, &height);
  > Environment variable "DISPLAY" not defined.
  > TERM = screen
  > Breakpoint 1 at 0x809bb5e: file /home/public/han/Emacs/multi-tty/src/emacs.c, line 465.
  > Breakpoint 2 at 0x80b1877: file /home/public/han/Emacs/multi-tty/src/sysdep.c, line 1441.
  > (gdb) bt
  > #0  0x08051798 in window_change_signal (signalnum=28) at /home/public/han/Emacs/multi-tty/src/dispnew.c:6069
  > #1  0x48e8502d in ?? ()
  > #2  0x0000001c in ?? ()
  > #3  0x00000000 in ?? ()
  > 
  > Lisp Backtrace:
  > "yes-or-no-p"
  > "kill-buffer"
  > "server-delete-client"
  > "server-sentinel"
  > (gdb) 
  > 
  > 
  > This is on OpenBSD, without X installed.
  > 
  > 
  > # Han
  > _______________________________________________
  > multi-tty mailing list
  > multi-tty@lists.fnord.hu
  > http://lists.fnord.hu/mailman/listinfo/multi-tty

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: UNBLOCK_INPUT in change_frame_size_1
  2006-02-09  6:28 ` UNBLOCK_INPUT in change_frame_size_1 Dan Nicolaescu
@ 2006-02-10  1:13   ` Richard M. Stallman
  0 siblings, 0 replies; 2+ messages in thread
From: Richard M. Stallman @ 2006-02-10  1:13 UTC (permalink / raw)
  Cc: emacs-devel

    Shouldn't UNBLOCK_INPUT in dispnew.c:change_frame_size_1 be placed
    after the call to record_unwind_protect?

    record_unwind_protect calls grow_specdpl that in turn calls xrealloc
    which might allocate memory.... 

No problem here.  xrealloc does BLOCK/UNBLOCK_INPUT.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2006-02-10  1:13 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20060209040953.GG10564@boetes.org>
2006-02-09  6:28 ` UNBLOCK_INPUT in change_frame_size_1 Dan Nicolaescu
2006-02-10  1:13   ` Richard M. Stallman

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.