From: Dmitry Antipov <dmantipov@yandex.ru>
To: 13007@debbugs.gnu.org
Cc: Juanma Barranquero <lekktu@gmail.com>
Subject: bug#13007: 24.3.50; emacs_backtrace.txt
Date: Wed, 28 Nov 2012 19:51:37 +0400 [thread overview]
Message-ID: <50B63309.1070404@yandex.ru> (raw)
In-Reply-To: <CAAeL0SSVWC6jrp4vW1Mkt-mORRYc9FsjEqqc1b29Bj=Dpq0E0Q@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 618 bytes --]
On 11/28/2012 05:09 PM, Juanma Barranquero wrote:
> What result did you expect? In my use case, the assertion still fails.
OK. Your crash recipe from Bug#13012 (which I can reproduce) hits the
corner case where XBUFFER (XWINDOW (selected_window)->buffer) !=
current_buffer; this should be fixed by always examining window buffer
instead of current. This should works for mini windows too, but I'm
not 100% sure about pseudo windows.
Drew, since I can't reproduce your crash, could you please a) try this
patch and b) check whether window with non-zero pseudo_window_p field
is passed to window_outdated_p?
Dmitry
[-- Attachment #2: 2.patch --]
[-- Type: text/plain, Size: 772 bytes --]
=== modified file 'src/xdisp.c'
--- src/xdisp.c 2012-11-27 03:10:32 +0000
+++ src/xdisp.c 2012-11-28 15:39:55 +0000
@@ -10898,14 +10898,17 @@
}
/* Nonzero if W doesn't reflect the actual state of
- current buffer due to its text or overlays change. */
+ its buffer due to its text or overlays change. */
static int
window_outdated (struct window *w)
{
- eassert (XBUFFER (w->buffer) == current_buffer);
- return (w->last_modified < MODIFF
- || w->last_overlay_modified < OVERLAY_MODIFF);
+ struct buffer *b = XBUFFER (w->buffer);
+
+ eassert (BUFFER_LIVE_P (b));
+
+ return (w->last_modified < BUF_MODIFF (b)
+ || w->last_overlay_modified < BUF_OVERLAY_MODIFF (b));
}
/* Nonzero if W's buffer was changed but not saved or Transient Mark mode
next prev parent reply other threads:[~2012-11-28 15:51 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-11-27 6:23 bug#13007: 24.3.50; emacs_backtrace.txt Drew Adams
2012-11-27 6:28 ` Drew Adams
2012-11-27 15:15 ` Eli Zaretskii
2012-11-27 15:41 ` Drew Adams
2012-11-27 15:44 ` Drew Adams
2012-11-27 16:39 ` Juanma Barranquero
2012-11-27 18:02 ` Eli Zaretskii
2012-11-27 15:14 ` Eli Zaretskii
2012-11-27 16:49 ` Dmitry Antipov
2012-11-27 17:47 ` Eli Zaretskii
2012-11-27 17:58 ` Jambunathan K
2012-11-27 18:10 ` Drew Adams
2012-11-28 7:19 ` Dmitry Antipov
2012-11-28 13:09 ` Juanma Barranquero
2012-11-28 15:51 ` Dmitry Antipov [this message]
2012-11-28 17:59 ` Eli Zaretskii
2012-11-29 6:19 ` Dmitry Antipov
2012-11-29 16:46 ` Eli Zaretskii
2012-11-29 17:02 ` Drew Adams
2012-11-29 17:39 ` Eli Zaretskii
2012-11-29 17:47 ` Drew Adams
2012-11-29 18:08 ` Eli Zaretskii
2012-11-29 18:13 ` Drew Adams
2012-11-29 19:50 ` Eli Zaretskii
2012-11-29 17:23 ` Dmitry Antipov
2012-11-30 9:53 ` Eli Zaretskii
2012-11-30 15:50 ` Dmitry Antipov
2012-11-30 16:59 ` Eli Zaretskii
2015-12-29 11:08 ` Lars Ingebrigtsen
2015-12-29 17:37 ` Eli Zaretskii
2016-01-02 11:10 ` Eli Zaretskii
2012-11-29 19:14 ` Stefan Monnier
2012-11-29 19:54 ` Eli Zaretskii
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=50B63309.1070404@yandex.ru \
--to=dmantipov@yandex.ru \
--cc=13007@debbugs.gnu.org \
--cc=lekktu@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.