[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: And another crash when scrolling around. No xassert this time.
From: |
Kim F. Storm |
Subject: |
Re: And another crash when scrolling around. No xassert this time. |
Date: |
Mon, 21 Feb 2005 09:47:41 +0100 |
User-agent: |
Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux) |
David Kastrup <address@hidden> writes:
> Which would be the UNBLOCK_INPUT line in xdisp.c at
>
> #ifdef HAVE_WINDOW_SYSTEM
> if (FRAME_WINDOW_P (f)
> && update_window_fringes (w, 0)
> && !just_this_one_p
> && (used_current_matrix_p || overlay_arrow_seen)
> && !w->pseudo_window_p)
> {
> update_begin (f);
> BLOCK_INPUT;
> if (draw_window_fringes (w, 1))
> x_draw_vertical_border (w);
> UNBLOCK_INPUT;
> update_end (f);
> }
> #endif /* HAVE_WINDOW_SYSTEM */
I don't see how interrupt_input_blocked got zeroed out in that
context -- unless TOTALLY_UNBLOCK_INPUT was called, and that
only happens if an error is signalled or the X server connection
is lost. But in those cases, emacs should have longjmp'ed to the
error handler. So I'm puzzled.
Could this be GTK related?
> In GNU Emacs 22.0.50.6 (i686-pc-linux-gnu, GTK+ Version 2.6.2)
> of 2005-02-20 on lola.goethe.zz
> #0 abort () at /home/tmp/emacs/src/emacs.c:456
> #1 0x080a5e8b in redisplay_window (window=141773068, just_this_one_p=1)
> at /home/tmp/emacs/src/xdisp.c:12478
> #6 0x08089f3e in sit_for (sec=0, usec=0, reading=0, display=1,
> initial_display=1) at /home/tmp/emacs/src/dispnew.c:6358
> (gdb) xbacktrace
> "sit-for"
> "line-move"
I don't know why calling sit-for there should cause problems.
The only reason you may see the problem _now_ is that calling
sit-for in line-move causes it the be called much more frequently
than before... so perhaps the error has been there for a long time...
--
Kim F. Storm <address@hidden> http://www.cua.dk