emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r111318: * buffer.c (Fset_buffer_modi


From: Dmitry Antipov
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r111318: * buffer.c (Fset_buffer_modified_p): Use buffer_window_count
Date: Mon, 24 Dec 2012 16:21:42 +0400
User-agent: Bazaar (2.5.0)

------------------------------------------------------------
revno: 111318
committer: Dmitry Antipov <address@hidden>
branch nick: trunk
timestamp: Mon 2012-12-24 16:21:42 +0400
message:
  * buffer.c (Fset_buffer_modified_p): Use buffer_window_count
  to check whether the buffer is displayed in some window.
  * xdisp.c (message_dolog): Likewise.
modified:
  src/ChangeLog
  src/buffer.c
  src/xdisp.c
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2012-12-24 11:41:28 +0000
+++ b/src/ChangeLog     2012-12-24 12:21:42 +0000
@@ -5,6 +5,9 @@
        struct buffer_text to avoid accessing an uninitialized value
        when compact_buffer is called for the first time.
        (compact_buffer): Use convenient BUF_COMPACT and BUF_MODIFF.
+       (Fset_buffer_modified_p): Use buffer_window_count to check
+       whether the buffer is displayed in some window.
+       * xdisp.c (message_dolog): Likewise.
 
 2012-12-23  Eli Zaretskii  <address@hidden>
 

=== modified file 'src/buffer.c'
--- a/src/buffer.c      2012-12-24 11:41:28 +0000
+++ b/src/buffer.c      2012-12-24 12:21:42 +0000
@@ -1341,7 +1341,7 @@
 A non-nil FLAG means mark the buffer modified.  */)
   (Lisp_Object flag)
 {
-  Lisp_Object fn, buffer, window;
+  Lisp_Object fn;
 
 #ifdef CLASH_DETECTION
   /* If buffer becoming modified, lock the file.
@@ -1394,9 +1394,7 @@
      Ideally, I think there should be another mechanism for fontifying
      buffers without "modifying" buffers, or redisplay should be
      smarter about updating the `*' in mode lines.  --gerd  */
-  XSETBUFFER (buffer, current_buffer);
-  window = Fget_buffer_window (buffer, Qt);
-  if (WINDOWP (window))
+  if (buffer_window_count (current_buffer))
     {
       ++update_mode_lines;
       current_buffer->prevent_redisplay_optimizations_p = 1;

=== modified file 'src/xdisp.c'
--- a/src/xdisp.c       2012-12-20 14:57:40 +0000
+++ b/src/xdisp.c       2012-12-24 12:21:42 +0000
@@ -9397,7 +9397,8 @@
       int old_windows_or_buffers_changed = windows_or_buffers_changed;
       ptrdiff_t point_at_end = 0;
       ptrdiff_t zv_at_end = 0;
-      Lisp_Object old_deactivate_mark, tem;
+      Lisp_Object old_deactivate_mark;
+      bool shown;
       struct gcpro gcpro1;
 
       old_deactivate_mark = Vdeactivate_mark;
@@ -9539,9 +9540,9 @@
       unchain_marker (XMARKER (oldbegv));
       unchain_marker (XMARKER (oldzv));
 
-      tem = Fget_buffer_window (Fcurrent_buffer (), Qt);
+      shown = buffer_window_count (current_buffer) > 0;
       set_buffer_internal (oldbuf);
-      if (NILP (tem))
+      if (!shown)
        windows_or_buffers_changed = old_windows_or_buffers_changed;
       message_log_need_newline = !nlflag;
       Vdeactivate_mark = old_deactivate_mark;


reply via email to

[Prev in Thread] Current Thread [Next in Thread]