emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] /srv/bzr/emacs/trunk r105786: * editfns.c (Fformat): Fix o


From: Paul Eggert
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r105786: * editfns.c (Fformat): Fix off-by-1 bug for "%%b" (Bug#9514).
Date: Thu, 15 Sep 2011 09:10:37 -0700
User-agent: Bazaar (2.3.1)

------------------------------------------------------------
revno: 105786
fixes bug(s): http://debbugs.gnu.org/9514
committer: Paul Eggert <address@hidden>
branch nick: trunk
timestamp: Thu 2011-09-15 09:10:37 -0700
message:
  * editfns.c (Fformat): Fix off-by-1 bug for "%%b" (Bug#9514).
  
  This occurs when processing a multibyte format, which can happen
  when using 'eval'.  Problem reported by Wolfgang Jenker.
modified:
  src/ChangeLog
  src/editfns.c
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2011-09-15 16:02:49 +0000
+++ b/src/ChangeLog     2011-09-15 16:10:37 +0000
@@ -1,3 +1,9 @@
+2011-09-15  Paul Eggert  <address@hidden>
+
+       * editfns.c (Fformat): Fix off-by-1 bug for "%%b" (Bug#9514).
+       This occurs when processing a multibyte format, which can happen
+       when using 'eval'.  Problem reported by Wolfgang Jenker.
+
 2011-09-15  Johan Bockgård  <address@hidden>
 
        * xdisp.c (try_cursor_movement): Only check for exact match if

=== modified file 'src/editfns.c'
--- a/src/editfns.c     2011-09-09 01:06:52 +0000
+++ b/src/editfns.c     2011-09-15 16:10:37 +0000
@@ -4137,8 +4137,9 @@
                format++;
              while (! CHAR_HEAD_P (*format));
 
-             convbytes = format - format0;
-             memset (&discarded[format0 + 1 - format_start], 2, convbytes - 1);
+             convbytes = format - src;
+             memset (&discarded[format0 + 1 - format_start], 2,
+                     format - (format0 + 1));
            }
          else
            {


reply via email to

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