This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU M4 source repository".

http://git.sv.gnu.org/gitweb/?p=m4.git;a=commitdiff;h=edf2d2a2af08b0d4af530150c1c7b504c803a637

The branch, branch-1.4 has been updated
       via  edf2d2a2af08b0d4af530150c1c7b504c803a637 (commit)
       via  5d1faf478e162ad64075cfdc51ffca697ec7f599 (commit)
       via  a4d4f850ac5c09b9b5d9627ba748321af3429e68 (commit)
      from  76d1c49b8056aaf3f1046ba19c6dea6eb6aecb78 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit edf2d2a2af08b0d4af530150c1c7b504c803a637
Author: Eric Blake <[email protected]>
Date:   Mon Aug 30 12:08:47 2010 -0600

    Test previous commit.
    
    * doc/m4.texinfo (Format): Add a test.
    * NEWS: Document the fix.
    * THANKS: Update.
    
    Signed-off-by: Eric Blake <[email protected]>

commit 5d1faf478e162ad64075cfdc51ffca697ec7f599
Author: Carlo Teubner <[email protected]>
Date:   Sat Aug 28 16:19:16 2010 -0600

    Avoid a crash with bad format string.
    
    * src/format.c (expand_format): Fix off-by-one error.
    
    Signed-off-by: Eric Blake <[email protected]>

commit a4d4f850ac5c09b9b5d9627ba748321af3429e68
Author: Eric Blake <[email protected]>
Date:   Fri Jul 30 08:25:14 2010 -0600

    Document recent bug fixes.
    
    * NEWS: Add some entries.
    * gnulib: Update to latest, for more AIX fixes.
    
    Signed-off-by: Eric Blake <[email protected]>

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog      |   18 ++++++++++++++++++
 NEWS           |    9 ++++++++-
 THANKS         |    1 +
 doc/m4.texinfo |   12 ++++++++++++
 gnulib         |    2 +-
 src/format.c   |    2 +-
 6 files changed, 41 insertions(+), 3 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 709b8c0..ec3852a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,21 @@
+2010-08-30  Eric Blake  <[email protected]>
+
+       Test previous commit.
+       * doc/m4.texinfo (Format): Add a test.
+       * NEWS: Document the fix.
+       * THANKS: Update.
+
+2010-08-30  Carlo Teubner  <[email protected]>  (tiny change)
+
+       Avoid a crash with bad format string.
+       * src/format.c (expand_format): Fix off-by-one error.
+
+2010-08-30  Eric Blake  <[email protected]>
+
+       Document recent bug fixes.
+       * NEWS: Add some entries.
+       * gnulib: Update to latest, for more AIX fixes.
+
 2010-07-30  Eric Blake  <[email protected]>
 
        Update to newer gnulib.
diff --git a/NEWS b/NEWS
index 4ebcb1e..886ab31 100644
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,13 @@
 GNU M4 NEWS - User visible changes.
 
-* Noteworthy changes in release ?.? (????-??-??) [?]
+* Noteworthy changes in release 1.4.15 (2010-08-??) [stable]
+
+** Fix regression introduced in 1.4.9b where the format builtin could
+   crash on an invalid format string.
+
+** Fix compilation against newer glibc, and on AIX 7.1BETA.
+
+** A number of portability improvements inherited from gnulib.
 
 
 * Noteworthy changes in Version 1.4.14 (2010-02-24) [stable]
diff --git a/THANKS b/THANKS
index 5fed251..b0f0c19 100644
--- a/THANKS
+++ b/THANKS
@@ -24,6 +24,7 @@ Bob Badour              [email protected]
 Bob Proulx              [email protected]
 Brendan Kehoe           [email protected]
 Bruno Haible            [email protected]
+Carlo Teubner           [email protected]
 Cesar Strauss           [email protected]
 Chris McGuire           [email protected]
 Chris Penev             [email protected]
diff --git a/doc/m4.texinfo b/doc/m4.texinfo
index 062ecb2..bea0120 100644
--- a/doc/m4.texinfo
+++ b/doc/m4.texinfo
@@ -6097,6 +6097,18 @@ format(`%p', `0')
 @result{}
 @end example
 
+...@ignore
+...@comment Expose a crash with a bad format string fixed in 1.4.15.
+...@comment Unfortuntely, 8-bit bytes are hard to check for; but the
+...@comment exit status is enough to sniff the crash in broken versions.
+
+...@comment xerr: ignore
+...@example
+format(`%'format(`%c', `128'))
+...@result{}
+...@end example
+...@end ignore
+
 @node Arithmetic
 @chapter Macros for doing arithmetic
 
diff --git a/gnulib b/gnulib
index 710aad9..3e38c27 160000
--- a/gnulib
+++ b/gnulib
@@ -1 +1 @@
-Subproject commit 710aad94fa0056e27daee30d23130fd9c9339b71
+Subproject commit 3e38c274dbac15d2288577a4b9da6e2f4a83ab5b
diff --git a/src/format.c b/src/format.c
index 9cf282a..77c7c07 100644
--- a/src/format.c
+++ b/src/format.c
@@ -302,7 +302,7 @@ expand_format (struct obstack *obs, int argc, token_data 
**argv)
         }
 
       c = *fmt++;
-      if (c > sizeof ok || !ok[c])
+      if (sizeof ok <= c || !ok[c])
         {
           M4ERROR ((warning_status, 0,
                     "Warning: unrecognized specifier in `%s'", f));


hooks/post-receive
-- 
GNU M4 source repository

Reply via email to