[arch-commits] Commit in pcre/repos (testing-i686/r661.diff testing-x86_64/r661.diff)

Allan McRae allan at archlinux.org
Mon Aug 22 13:08:56 UTC 2011


    Date: Monday, August 22, 2011 @ 09:08:56
  Author: allan
Revision: 136077

add patch...

Added:
  pcre/repos/testing-i686/r661.diff
  pcre/repos/testing-x86_64/r661.diff

--------------------------+
 testing-i686/r661.diff   |   26 ++++++++++++++++++++++++++
 testing-x86_64/r661.diff |   26 ++++++++++++++++++++++++++
 2 files changed, 52 insertions(+)

Added: testing-i686/r661.diff
===================================================================
--- testing-i686/r661.diff	                        (rev 0)
+++ testing-i686/r661.diff	2011-08-22 13:08:56 UTC (rev 136077)
@@ -0,0 +1,26 @@
+--- code/trunk/pcre_compile.c	2011/08/02 11:00:40	654
++++ code/trunk/pcre_compile.c	2011/08/21 09:00:54	661
+@@ -2295,8 +2295,13 @@
+ A user pointed out that PCRE was rejecting [:a[:digit:]] whereas Perl was not.
+ It seems that the appearance of a nested POSIX class supersedes an apparent
+ external class. For example, [:a[:digit:]b:] matches "a", "b", ":", or
+-a digit. Also, unescaped square brackets may also appear as part of class
+-names. For example, [:a[:abc]b:] gives unknown class "[:abc]b:]"in Perl.
++a digit. 
++
++In Perl, unescaped square brackets may also appear as part of class names. For
++example, [:a[:abc]b:] gives unknown POSIX class "[:abc]b:]". However, for
++[:a[:abc]b][b:] it gives unknown POSIX class "[:abc]b][b:]", which does not
++seem right at all. PCRE does not allow closing square brackets in POSIX class 
++names.
+ 
+ Arguments:
+   ptr      pointer to the initial [
+@@ -2314,6 +2319,7 @@
+   {
+   if (*ptr == CHAR_BACKSLASH && ptr[1] == CHAR_RIGHT_SQUARE_BRACKET)
+     ptr++;
++  else if (*ptr == CHAR_RIGHT_SQUARE_BRACKET) return FALSE;   
+   else
+     {
+     if (*ptr == terminator && ptr[1] == CHAR_RIGHT_SQUARE_BRACKET)

Added: testing-x86_64/r661.diff
===================================================================
--- testing-x86_64/r661.diff	                        (rev 0)
+++ testing-x86_64/r661.diff	2011-08-22 13:08:56 UTC (rev 136077)
@@ -0,0 +1,26 @@
+--- code/trunk/pcre_compile.c	2011/08/02 11:00:40	654
++++ code/trunk/pcre_compile.c	2011/08/21 09:00:54	661
+@@ -2295,8 +2295,13 @@
+ A user pointed out that PCRE was rejecting [:a[:digit:]] whereas Perl was not.
+ It seems that the appearance of a nested POSIX class supersedes an apparent
+ external class. For example, [:a[:digit:]b:] matches "a", "b", ":", or
+-a digit. Also, unescaped square brackets may also appear as part of class
+-names. For example, [:a[:abc]b:] gives unknown class "[:abc]b:]"in Perl.
++a digit. 
++
++In Perl, unescaped square brackets may also appear as part of class names. For
++example, [:a[:abc]b:] gives unknown POSIX class "[:abc]b:]". However, for
++[:a[:abc]b][b:] it gives unknown POSIX class "[:abc]b][b:]", which does not
++seem right at all. PCRE does not allow closing square brackets in POSIX class 
++names.
+ 
+ Arguments:
+   ptr      pointer to the initial [
+@@ -2314,6 +2319,7 @@
+   {
+   if (*ptr == CHAR_BACKSLASH && ptr[1] == CHAR_RIGHT_SQUARE_BRACKET)
+     ptr++;
++  else if (*ptr == CHAR_RIGHT_SQUARE_BRACKET) return FALSE;   
+   else
+     {
+     if (*ptr == terminator && ptr[1] == CHAR_RIGHT_SQUARE_BRACKET)




More information about the arch-commits mailing list