[Pcre-svn] [1684] code/trunk: Avoid use of a potentially ov…

Top Page
Delete this message
Author: Subversion repository
Date:  
To: pcre-svn
Subject: [Pcre-svn] [1684] code/trunk: Avoid use of a potentially overflowing buffer in pcregrep.
Revision: 1684
          http://vcs.pcre.org/viewvc?view=rev&revision=1684
Author:   ph10
Date:     2017-02-22 17:17:49 +0000 (Wed, 22 Feb 2017)
Log Message:
-----------
Avoid use of a potentially overflowing buffer in pcregrep.


Modified Paths:
--------------
    code/trunk/ChangeLog
    code/trunk/pcregrep.c


Modified: code/trunk/ChangeLog
===================================================================
--- code/trunk/ChangeLog    2017-02-20 18:23:39 UTC (rev 1683)
+++ code/trunk/ChangeLog    2017-02-22 17:17:49 UTC (rev 1684)
@@ -20,7 +20,10 @@
 4.  A (?# style comment is now ignored between a basic quantifier and a 
 following '+' or '?' (example: /X+(?#comment)?Y/.


+5. Avoid use of a potentially overflowing buffer in pcregrep (patch by Petr
+Pisar).

+
Version 8.40 11-January-2017
----------------------------


Modified: code/trunk/pcregrep.c
===================================================================
--- code/trunk/pcregrep.c    2017-02-20 18:23:39 UTC (rev 1683)
+++ code/trunk/pcregrep.c    2017-02-22 17:17:49 UTC (rev 1684)
@@ -3190,9 +3190,11 @@
   cp->hint = pcre_study(cp->compiled, study_options, &error);
   if (error != NULL)
     {
-    char s[16];
-    if (patterns->next == NULL) s[0] = 0; else sprintf(s, " number %d", j);
-    fprintf(stderr, "pcregrep: Error while studying regex%s: %s\n", s, error);
+    if (patterns->next == NULL)
+      fprintf(stderr, "pcregrep: Error while studying regex: %s\n", error);
+    else
+      fprintf(stderr, "pcregrep: Error while studying regex number %d: %s\n",
+        j, error);
     goto EXIT2;
     }
 #ifdef SUPPORT_PCREGREP_JIT