]> git.eshelyaron.com Git - emacs.git/commitdiff
(try_window_id) [!GLYPH_DEBUG]: Give up if
authorGerd Moellmann <gerd@gnu.org>
Tue, 18 Sep 2001 10:30:56 +0000 (10:30 +0000)
committerGerd Moellmann <gerd@gnu.org>
Tue, 18 Sep 2001 10:30:56 +0000 (10:30 +0000)
first_unchanged_at_end_row is in front of
last_unchanged_at_beg_row.  This code should be removed after the
release of 21.1.

src/ChangeLog
src/xdisp.c

index 7258c8cce8909c54eef63517532383e92a533524..f6891ec274bdc44e5ddf3c957d00f7213abf8567 100644 (file)
@@ -1,3 +1,10 @@
+2001-09-18  Gerd Moellmann  <gerd@gnu.org>
+
+       * xdisp.c (try_window_id) [!GLYPH_DEBUG]: Give up if
+       first_unchanged_at_end_row is in front of
+       last_unchanged_at_beg_row.  This code should be removed after the
+       release of 21.1.
+
 2001-09-17  Gerd Moellmann  <gerd@gnu.org>
 
        * buffer.h (BUF_COMPUTE_UNCHANGED): Use BUF_MODIFF and
index a3ac927f785ddb5711549eb6e1ef34abbd354d18..df8720ee0e8d0da05106704dc8edf255bb73878b 100644 (file)
@@ -11491,8 +11491,23 @@ try_window_id (w)
   stop_pos = 0;
   if (first_unchanged_at_end_row)
     {
+#if GLYPH_DEBUG
       xassert (last_unchanged_at_beg_row == NULL
               || first_unchanged_at_end_row >= last_unchanged_at_beg_row);
+#else
+      /* This is for the release of 21.1 only, and should be removed
+        after the release.
+
+        This case means that unchanged information is probably bogus,
+        which leads to being unable to compute a correct
+        first_unchanged_at_end_row.  At least that was the case in
+        one debugging session.  I've fixed a bug that can lead to
+        wrong unchanged info, but didn't find a way to reproduce this
+        case.  2001-09-18 gerd.  */
+      if (last_unchanged_at_beg_row 
+         && first_unchanged_at_end_row < last_unchanged_at_beg_row)
+       GIVE_UP (20);
+#endif
       
       /* If this is a continuation line, move forward to the next one
         that isn't.  Changes in lines above affect this line.