[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer
From: |
Stephen Berman |
Subject: |
bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer |
Date: |
Sun, 10 Jul 2011 12:25:23 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) |
On Sun, 10 Jul 2011 10:59:26 +0200 martin rudalics <rudalics@gmx.at> wrote:
>> I just encountered a bad effect that I assume is caused by this change,
>> since it didn't happen before:
>
> Before means before the change that sets w->pointm?
Yes
> Are you sure it's
> not related to upgrading to the new window code?
Yes; I don't see the bad effect with my post-new-window-code build
without the w->pointm change.
>> when I type `h'
>> (gnus-summary-select-article-buffer) in the Gnus Summary buffer, this
>> splits the window and selects the Article buffer as it's supposed to,
>> but in the Summary buffer point simultaneously moves to point-min; it's
>> supposed to stay put. The same thing happens when I have split windows
>> with the Summary and Article buffer and in the former type C-x o
>> (other-window). I haven't been able to reproduce this with other
>> buffers, but only with Gnus Summary. Still no abort, but this effect
>> means the fix -- if it is one -- at least needs further tuning.
>
> Just to make sure: This does not happen with the w->pointm hack?
Correct.
> If so,
> that is if it does not happen with the w->pointm hack, then it's
> obviously what I mentioned in the last post: We set window-point to 1
> for the temporary buffer but we don't reset it back to the old buffer's
> position upon exiting `vertical-motion'.
Is window-point set to 1 as a side effect of making the temporary
buffer?
> Rather _you_ did set the old
> buffer's window point to 1 and it stays put there when you set w->buffer
> to old_buffer upon exiting `vertical-motion'.
Do you have a suggestion how to reset point?
> (Note that
> `vertical-motion' gets called by `split-window-above-each-other'.)
I don't see point moving when the window is split, only when -- with an
already split window -- the other window is selected. Indeed, stepping
through both gnus-summary-select-article-buffer and other-window, I see
point move upon the call to select-window. The comment at the top of
select_window seems relevant:
/* If select_window is called with inhibit_point_swap non-zero it will
not store point of the old selected window's buffer back into that
window's pointm slot. This is needed by Fset_window_configuration to
avoid that the display routine is called with selected_window set to
Qnil causing a subsequent crash. */
However, when I set a conditional breakpoint inhibit_point_swap!=0 this
did not interrupt execution, whereas with breakpoint select_window,
execution interrupts with inhibit_point_swap == 0, so I guess I don't
understand the comment.
Steve Berman
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, (continued)
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, martin rudalics, 2011/07/07
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, Stephen Berman, 2011/07/07
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, martin rudalics, 2011/07/07
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, Stephen Berman, 2011/07/08
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, martin rudalics, 2011/07/09
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, Stephen Berman, 2011/07/09
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, martin rudalics, 2011/07/09
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, Stephen Berman, 2011/07/09
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, Stephen Berman, 2011/07/09
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, martin rudalics, 2011/07/10
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer,
Stephen Berman <=
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, martin rudalics, 2011/07/10
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, Stephen Berman, 2011/07/10
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, martin rudalics, 2011/07/11
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, Stephen Berman, 2011/07/11
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, martin rudalics, 2011/07/12
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, Stephen Berman, 2011/07/12
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, Stephen Berman, 2011/07/13
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, Eli Zaretskii, 2011/07/13
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, Stephen Berman, 2011/07/13
- bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer, Eli Zaretskii, 2011/07/13