Return-Path: Delivered-To: apmail-jakarta-oro-dev-archive@apache.org Received: (qmail 2645 invoked from network); 23 Nov 2001 21:27:56 -0000 Received: from unknown (HELO nagoya.betaversion.org) (192.18.49.131) by daedalus.apache.org with SMTP; 23 Nov 2001 21:27:56 -0000 Received: (qmail 16122 invoked by uid 97); 23 Nov 2001 21:28:00 -0000 Delivered-To: qmlist-jakarta-archive-oro-dev@jakarta.apache.org Received: (qmail 16079 invoked by uid 97); 23 Nov 2001 21:27:58 -0000 Mailing-List: contact oro-dev-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Help: List-Post: List-Id: "ORO Developers List" Reply-To: "ORO Developers List" Delivered-To: mailing list oro-dev@jakarta.apache.org Received: (qmail 16065 invoked by uid 50); 23 Nov 2001 21:27:57 -0000 Date: 23 Nov 2001 21:27:57 -0000 Message-ID: <20011123212757.16064.qmail@nagoya.betaversion.org> From: bugzilla@apache.org To: oro-dev@jakarta.apache.org Cc: Subject: DO NOT REPLY [Bug 5055] New: - reproducable StackOverflowError X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT . ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5055 reproducable StackOverflowError Summary: reproducable StackOverflowError Product: ORO Version: 2.0.4 Platform: All OS/Version: Windows NT/2K Status: NEW Severity: Major Priority: Other Component: Main AssignedTo: oro-dev@jakarta.apache.org ReportedBy: loz@cable.a2000.nl Using the program below you get the following error: Exception in thread "main" java.lang.StackOverflowError at org.apache.oro.text.regex.Perl5Matcher.__compare(Perl5Matcher.java:98 ) at org.apache.oro.text.regex.Perl5Matcher.__match(Perl5Matcher.java:929) at org.apache.oro.text.regex.Perl5Matcher.__match(Perl5Matcher.java:1144 ) at org.apache.oro.text.regex.Perl5Matcher.__match(Perl5Matcher.java:1195 ) at org.apache.oro.text.regex.Perl5Matcher.__match(Perl5Matcher.java:1156 ) at org.apache.oro.text.regex.Perl5Matcher.__match(Perl5Matcher.java:1195 ) at org.apache.oro.text.regex.Perl5Matcher.__match(Perl5Matcher.java:1156 ) at org.apache.oro.text.regex.Perl5Matcher.__match(Perl5Matcher.java:1195 ) at org.apache.oro.text.regex.Perl5Matcher.__match(Perl5Matcher.java:1156 ) at org.apache.oro.text.regex.Perl5Matcher.__match(Perl5Matcher.java:1195 The funny thing is that you can delete any few characters from the input string and then the program will work correctly. I encountered this error using 2.0.3, but it's also in 2.0.4. --------------------------------------------------------- import org.apache.oro.text.regex.*; public class TestORO { public static void main(String[] args) { String input = "<box>\n" + " \n" + " \n" + " \n" + " \n" + " \n" + "
\"\"\n" + "
bla bla1\n" + "
\n" + " \n" + " \n" + " \n" + " \n" + "
\"\"\n" + "
bla bla2\n" + "
\n" + " \n" + " \n" + " \n" + " \n" + "
\"\"\n" + "
Bla Blablabla bla bla blablabla bla bla blabla blablablabla blablabla\n" + "
\n" + " \n" + " \n" + " \n" + " \n" + "
\"\"\n" + "
Blabla blablablabla bla blablabla bla bla blablabla bla blablablabla blabla\n" + "
\n" + " \n" + " \n" + " \n" + " \n" + "
\"\"\n" + "
bla bla5\n" + "
</box>\n"; input = substitute(input, "<box>((.|\n)*?)</box>", new StringSubstitution("foobar")); System.out.println(input); System.out.println("\nDone!\n"); } private static String substitute(String input, String expression, Substitution sub) { // Create Perl5Compiler and Perl5Matcher instances. PatternCompiler compiler = new Perl5Compiler(); PatternMatcher matcher = new Perl5Matcher(); Pattern pattern = null; // Attempt to compile the pattern. try { pattern = compiler.compile(expression, Perl5Compiler.CASE_INSENSITIVE_MASK); } catch (MalformedPatternException e) { System.err.println("Bad pattern."); System.err.println(e.getMessage()); return ""; } return Util.substitute(matcher, pattern, sub, input, Util.SUBSTITUTE_ALL); } } -- To unsubscribe, e-mail: For additional commands, e-mail: