emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] /srv/bzr/emacs/trunk r106820: Fix bug #6540 with a crash w


From: Eli Zaretskii
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r106820: Fix bug #6540 with a crash while inserting non-ASCII text under cache-long-line-scans.
Date: Sat, 07 Jan 2012 13:57:48 +0200
User-agent: Bazaar (2.3.1)

------------------------------------------------------------
revno: 106820
fixes bug(s): http://debbugs.gnu.org/6540
committer: Eli Zaretskii <address@hidden>
branch nick: trunk
timestamp: Sat 2012-01-07 13:57:48 +0200
message:
  Fix bug #6540 with a crash while inserting non-ASCII text under 
cache-long-line-scans.
  
   src/search.c (scan_buffer): Pass character positions to
   know_region_cache, not byte positions.  (Bug#6540)
modified:
  src/ChangeLog
  src/search.c
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2012-01-07 09:50:57 +0000
+++ b/src/ChangeLog     2012-01-07 11:57:48 +0000
@@ -1,3 +1,8 @@
+2012-01-07  Eli Zaretskii  <address@hidden>
+
+       * search.c (scan_buffer): Pass character positions to
+       know_region_cache, not byte positions.  (Bug#6540)
+
 2012-01-07  LynX  <address@hidden>  (tiny change)
 
        * w32.c (sys_rename): Report EXDEV when rename of a directory

=== modified file 'src/search.c'
--- a/src/search.c      2012-01-05 09:46:05 +0000
+++ b/src/search.c      2012-01-07 11:57:48 +0000
@@ -725,8 +725,8 @@
                  the region from start to cursor is free of them. */
               if (target == '\n' && newline_cache)
                 know_region_cache (current_buffer, newline_cache,
-                                   start_byte + scan_start - base,
-                                   start_byte + cursor - base);
+                                   BYTE_TO_CHAR (start_byte + scan_start - 
base),
+                                   BYTE_TO_CHAR (start_byte + cursor - base));
 
               /* Did we find the target character?  */
               if (cursor < ceiling_addr)
@@ -791,8 +791,8 @@
                  the region from after the cursor to start is free of them.  */
               if (target == '\n' && newline_cache)
                 know_region_cache (current_buffer, newline_cache,
-                                   start_byte + cursor - base,
-                                   start_byte + scan_start - base);
+                                   BYTE_TO_CHAR (start_byte + cursor - base),
+                                   BYTE_TO_CHAR (start_byte + scan_start - 
base));
 
               /* Did we find the target character?  */
               if (cursor >= ceiling_addr)


reply via email to

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