[pcre-dev] [Bug 1054] New: Infinite recursion on pcregrep on…

Kezdőlap
Üzenet törlése
Szerző: Dagobert Michelsen
Dátum:  
Címzett: pcre-dev
Tárgy: [pcre-dev] [Bug 1054] New: Infinite recursion on pcregrep on Solaris 9 Sparc 64 bit
------- You are receiving this mail because: -------
You are on the CC list for the bug.

http://bugs.exim.org/show_bug.cgi?id=1054
           Summary: Infinite recursion on pcregrep on Solaris 9 Sparc 64 bit
           Product: PCRE
           Version: 8.11
          Platform: Sun
        OS/Version: Solaris
            Status: NEW
          Severity: bug
          Priority: medium
         Component: Code
        AssignedTo: ph10@???
        ReportedBy: dam@???
                CC: pcre-dev@???



The testsuite issues an error on Solaris 9 Sparc 64 bit w/Sun Studio 12
compiler. This happens only on Sparc with 64 bit (sparcv9). It does not happen
on 32 bit sparcv8, nor on i386 and amd64.

current9s% ./RunGrepTest

Testing pcregrep
pcregrep version 8.11 2010-12-10
No differences encountered
No differences encountered
Segmentation Fault - core dumped
Segmentation Fault - core dumped
--- ./testdata/grepoutput       Sun Oct 31 18:40:03 2010
+++ testtry     Mon Jan  3 14:58:47 2011
@@ -506,25 +506,9 @@
 Check up on PATTERN near the end.
 RC=0
 ---------------------------- Test 62 -----------------------------
-pcregrep: pcre_exec() gave error -8 while matching text that starts:
-
-This is a file of miscellaneous text that is used as test data for checking
-that the pcregrep command is working correctly. The file must be more than 24K
-long so that it needs more than a single read
-
-pcregrep: Error -8 or -21 means that a resource limit was exceeded.
-pcregrep: Check your regex for nested unlimited loops.
-RC=1
+RC=139
 ---------------------------- Test 63 -----------------------------
-pcregrep: pcre_exec() gave error -21 while matching text that starts:
-
-This is a file of miscellaneous text that is used as test data for checking
-that the pcregrep command is working correctly. The file must be more than 24K
-long so that it needs more than a single read
-
-pcregrep: Error -8 or -21 means that a resource limit was exceeded.
-pcregrep: Check your regex for nested unlimited loops.
-RC=1
+RC=139
 ---------------------------- Test 64 ------------------------------
 appears
 RC=0
current9s% 



The core file looks like this:

... (lots of deeper calls snipped)
ffffffff7e6198ec match (5, 100109930, 2, 3, 4, ffffffff7fff6a60) + 73c
ffffffff7e61b23c match (2, 10010993a, 100109930, ffffffff7e6342c4, 4,
ffffffff7fff6a60) + 208c
ffffffff7e6198ec match (3, 100109930, 2, 3, 4, ffffffff7fff6a60) + 73c
ffffffff7e61b23c match (2, 10010993a, 100109930, ffffffff7e6342c4, 4,
ffffffff7fff6a60) + 208c
ffffffff7e6198ec match (1, 100109930, 2, 3, 2, ffffffff7fff6a60) + 73c
ffffffff7e61add4 match (58, 100109930, 2, ffffffff7e6342c4, 2,
ffffffff7fff6a60) + 1c24
ffffffff7e62e824 pcre_exec (ffffffffffffffff, 1001098e0, 400,
ffffffff7fff6f00, 240002, ffffffff7fffcf00) + 1030
00000001000022c0 match_patterns (ffffffff7fff6f00, 1001095b0,
ffffffff7fff6d6c, ffffffff7fff6efc, 100107, 100000) + 7c
0000000100002600 pcregrep (100108370, ffffffff7fff6f00, 100107b34,
ffffffff7fffcf00, 6000, 0) + 20c
0000000100003908 grep_or_recurse (ffffffff7ffffba2, 14, 1, 100108370, 4,
1000066e0) + 42c
0000000100005938 main (0, 100107b5c, 0, ffffffff7fffd4cc, 0, 1) + 1570
00000001000013dc _start (0, ffffffff7ffff8f8, ffffffff7f60e640,
ffffffff7f1bf538, ffffff00, ffffffff7f710000) + 17c


--
Configure bugmail: http://bugs.exim.org/userprefs.cgi?tab=email