Mantis Bugtracker
  

Viewing Issue Advanced Details Jump to Notes ] View Simple ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0002089 [Quercus] minor always 10-18-07 23:35 10-29-07 16:04
Reporter lizongbo View Status public  
Assigned To ferg
Priority normal Resolution fixed Platform
Status closed   OS
Projection none   OS Version
ETA none Fixed in Version 3.1.4 Product Version 3.1.3
  Product Build
Summary 0002089: java.util.regex.PatternSyntaxException: Unknown inline modifier near index 10 &#(x)?0*(?(1)27|39);?
Description HTTP Status 500 -

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

java.util.regex.PatternSyntaxException: Unknown inline modifier near index 10
&#(x)?0*(?(1)27|39);?
          ^
    java.util.regex.Pattern.error(Pattern.java:1713)
    java.util.regex.Pattern.group0(Pattern.java:2519)
    java.util.regex.Pattern.sequence(Pattern.java:1806)
    java.util.regex.Pattern.expr(Pattern.java:1752)
    java.util.regex.Pattern.compile(Pattern.java:1460)
    java.util.regex.Pattern.<init>(Pattern.java:1133)
    java.util.regex.Pattern.compile(Pattern.java:847)
    com.caucho.quercus.lib.regexp.JavaRegexpModule.compileRegexp(JavaRegexpModule.java:1316)
    com.caucho.quercus.lib.regexp.JavaRegexpModule.compileRegexp(JavaRegexpModule.java:1246)
    com.caucho.quercus.lib.regexp.JavaRegexpModule.pregReplaceString(JavaRegexpModule.java:708)
    com.caucho.quercus.lib.regexp.JavaRegexpModule.pregReplace(JavaRegexpModule.java:621)
    com.caucho.quercus.lib.regexp.JavaRegexpModule.preg_replace(JavaRegexpModule.java:572)
    com.caucho.quercus.lib.regexp.RegexpModule.preg_replace(RegexpModule.java:171)
    sun.reflect.GeneratedMethodAccessor40.invoke(Unknown Source)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    com.caucho.quercus.module.StaticFunction.invoke(StaticFunction.java:120)
    com.caucho.quercus.env.JavaInvoker.call(JavaInvoker.java:615)
    com.caucho.quercus.env.JavaInvoker.call(JavaInvoker.java:488)
    com.caucho.quercus.env.JavaInvoker.call(JavaInvoker.java:473)
    com.caucho.quercus.env.JavaInvoker.callCopy(JavaInvoker.java:482)
    com.caucho.quercus.expr.FunctionExpr.evalImpl(FunctionExpr.java:180)
    com.caucho.quercus.expr.FunctionExpr.evalCopy(FunctionExpr.java:150)
    com.caucho.quercus.expr.AssignExpr.eval(AssignExpr.java:86)
    com.caucho.quercus.program.ExprStatement.execute(ExprStatement.java:64)
    com.caucho.quercus.program.BlockStatement.execute(BlockStatement.java:99)
    com.caucho.quercus.program.Function.callImpl(Function.java:334)
    com.caucho.quercus.program.Function.call(Function.java:274)
    com.caucho.quercus.expr.FunctionExpr.evalImpl(FunctionExpr.java:182)
    com.caucho.quercus.expr.FunctionExpr.eval(FunctionExpr.java:126)
    com.caucho.quercus.program.EchoStatement.execute(EchoStatement.java:57)
    com.caucho.quercus.program.BlockStatement.execute(BlockStatement.java:99)
    com.caucho.quercus.program.ForeachStatement.execute(ForeachStatement.java:139)
    com.caucho.quercus.program.BlockStatement.execute(BlockStatement.java:99)
    com.caucho.quercus.program.Function.callImpl(Function.java:334)
    com.caucho.quercus.program.Function.call(Function.java:274)
    com.caucho.quercus.program.AbstractFunction.callMethod(AbstractFunction.java:208)
    com.caucho.quercus.env.QuercusClass.callMethod(QuercusClass.java:724)
    com.caucho.quercus.env.ObjectExtValue.callMethod(ObjectExtValue.java:544)
    com.caucho.quercus.expr.MethodCallExpr.eval(MethodCallExpr.java:104)
    com.caucho.quercus.program.ExprStatement.execute(ExprStatement.java:64)
    com.caucho.quercus.program.BlockStatement.execute(BlockStatement.java:99)
    com.caucho.quercus.program.IfStatement.execute(IfStatement.java:75)
    com.caucho.quercus.program.BlockStatement.execute(BlockStatement.java:99)
    com.caucho.quercus.program.IfStatement.execute(IfStatement.java:75)
    com.caucho.quercus.program.ForeachStatement.execute(ForeachStatement.java:92)
    com.caucho.quercus.program.BlockStatement.execute(BlockStatement.java:99)
    com.caucho.quercus.program.Function.callImpl(Function.java:334)
    com.caucho.quercus.program.Function.call(Function.java:274)
    com.caucho.quercus.program.AbstractFunction.callMethod(AbstractFunction.java:208)
    com.caucho.quercus.env.QuercusClass.callMethod(QuercusClass.java:724)
    com.caucho.quercus.env.ObjectExtValue.callMethod(ObjectExtValue.java:544)
    com.caucho.quercus.expr.MethodCallExpr.eval(MethodCallExpr.java:104)
    com.caucho.quercus.program.ReturnStatement.execute(ReturnStatement.java:68)
    com.caucho.quercus.program.BlockStatement.execute(BlockStatement.java:99)
    com.caucho.quercus.program.Function.callImpl(Function.java:334)
    com.caucho.quercus.program.Function.call(Function.java:274)
    com.caucho.quercus.env.CallbackFunction.call(CallbackFunction.java:153)
    com.caucho.quercus.lib.FunctionModule.call_user_func_array(FunctionModule.java:91)
    sun.reflect.GeneratedMethodAccessor51.invoke(Unknown Source)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    com.caucho.quercus.module.StaticFunction.invoke(StaticFunction.java:120)
    com.caucho.quercus.env.JavaInvoker.call(JavaInvoker.java:615)
    com.caucho.quercus.env.JavaInvoker.call(JavaInvoker.java:488)
    com.caucho.quercus.env.JavaInvoker.call(JavaInvoker.java:473)
    com.caucho.quercus.expr.FunctionExpr.evalImpl(FunctionExpr.java:182)
    com.caucho.quercus.expr.FunctionExpr.eval(FunctionExpr.java:126)
    com.caucho.quercus.program.ExprStatement.execute(ExprStatement.java:64)
    com.caucho.quercus.program.IfStatement.execute(IfStatement.java:75)
    com.caucho.quercus.program.ForeachStatement.execute(ForeachStatement.java:92)
    com.caucho.quercus.program.DoStatement.execute(DoStatement.java:61)
    com.caucho.quercus.program.BlockStatement.execute(BlockStatement.java:99)
    com.caucho.quercus.program.Function.callImpl(Function.java:334)
    com.caucho.quercus.program.Function.call(Function.java:274)
    com.caucho.quercus.expr.FunctionExpr.evalImpl(FunctionExpr.java:182)
    com.caucho.quercus.expr.FunctionExpr.eval(FunctionExpr.java:126)
    com.caucho.quercus.program.ExprStatement.execute(ExprStatement.java:64)
    com.caucho.quercus.program.BlockStatement.execute(BlockStatement.java:99)
    com.caucho.quercus.program.QuercusProgram.execute(QuercusProgram.java:239)
    com.caucho.quercus.page.InterpretedPage.execute(InterpretedPage.java:61)
    com.caucho.quercus.env.Env.include(Env.java:3500)
    com.caucho.quercus.expr.IncludeExpr.eval(IncludeExpr.java:86)
    com.caucho.quercus.program.ExprStatement.execute(ExprStatement.java:64)
    com.caucho.quercus.program.BlockStatement.execute(BlockStatement.java:99)
    com.caucho.quercus.program.SwitchStatement.execute(SwitchStatement.java:98)
    com.caucho.quercus.program.BlockStatement.execute(BlockStatement.java:99)
    com.caucho.quercus.program.QuercusProgram.execute(QuercusProgram.java:239)
    com.caucho.quercus.page.InterpretedPage.execute(InterpretedPage.java:61)
    com.caucho.quercus.page.QuercusPage.executeTop(QuercusPage.java:119)
    com.caucho.quercus.servlet.QuercusServletImpl.service(QuercusServletImpl.java:163)
    com.caucho.quercus.servlet.QuercusServlet.service(QuercusServlet.java:353)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

root cause

com.caucho.quercus.QuercusExecutionException: java.util.regex.PatternSyntaxException Unknown inline modifier near index 10
&#(x)?0*(?(1)27|39);?
          ^
    java.util.regex.Pattern.error(Pattern.java:1713)
    java.util.regex.Pattern.group0(Pattern.java:2519)
    java.util.regex.Pattern.sequence(Pattern.java:1806)
    java.util.regex.Pattern.expr(Pattern.java:1752)
    java.util.regex.Pattern.compile(Pattern.java:1460)
    java.util.regex.Pattern.<init>(Pattern.java:1133)
    java.util.regex.Pattern.compile(Pattern.java:847)
    com.caucho.quercus.lib.regexp.JavaRegexpModule.compileRegexp(JavaRegexpModule.java:1316)
    com.caucho.quercus.lib.regexp.JavaRegexpModule.compileRegexp(JavaRegexpModule.java:1246)
    com.caucho.quercus.lib.regexp.JavaRegexpModule.pregReplaceString(JavaRegexpModule.java:708)
    com.caucho.quercus.lib.regexp.JavaRegexpModule.pregReplace(JavaRegexpModule.java:621)
    com.caucho.quercus.lib.regexp.JavaRegexpModule.preg_replace(JavaRegexpModule.java:572)
    com.caucho.quercus.lib.regexp.RegexpModule.preg_replace(RegexpModule.java:171)
    sun.reflect.GeneratedMethodAccessor40.invoke(Unknown Source)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    com.caucho.quercus.module.StaticFunction.invoke(StaticFunction.java:120)
    com.caucho.quercus.env.JavaInvoker.call(JavaInvoker.java:615)
    com.caucho.quercus.env.JavaInvoker.call(JavaInvoker.java:488)
    com.caucho.quercus.env.JavaInvoker.call(JavaInvoker.java:473)
    com.caucho.quercus.env.JavaInvoker.callCopy(JavaInvoker.java:482)
    com.caucho.quercus.expr.FunctionExpr.evalImpl(FunctionExpr.java:180)
    com.caucho.quercus.expr.FunctionExpr.evalCopy(FunctionExpr.java:150)
    com.caucho.quercus.expr.AssignExpr.eval(AssignExpr.java:86)
    com.caucho.quercus.program.ExprStatement.execute(ExprStatement.java:64)
    com.caucho.quercus.program.BlockStatement.execute(BlockStatement.java:99)
    com.caucho.quercus.program.Function.callImpl(Function.java:334)
    com.caucho.quercus.program.Function.call(Function.java:274)
    com.caucho.quercus.expr.FunctionExpr.evalImpl(FunctionExpr.java:182)
    com.caucho.quercus.expr.FunctionExpr.eval(FunctionExpr.java:126)
    com.caucho.quercus.program.EchoStatement.execute(EchoStatement.java:57)
    com.caucho.quercus.program.BlockStatement.execute(BlockStatement.java:99)
    com.caucho.quercus.program.ForeachStatement.execute(ForeachStatement.java:139)
    com.caucho.quercus.program.BlockStatement.execute(BlockStatement.java:99)
    com.caucho.quercus.program.Function.callImpl(Function.java:334)
    com.caucho.quercus.program.Function.call(Function.java:274)
    com.caucho.quercus.program.AbstractFunction.callMethod(AbstractFunction.java:208)
    com.caucho.quercus.env.QuercusClass.callMethod(QuercusClass.java:724)
    com.caucho.quercus.env.ObjectExtValue.callMethod(ObjectExtValue.java:544)
    com.caucho.quercus.expr.MethodCallExpr.eval(MethodCallExpr.java:104)
    com.caucho.quercus.program.ExprStatement.execute(ExprStatement.java:64)
    com.caucho.quercus.program.BlockStatement.execute(BlockStatement.java:99)
    com.caucho.quercus.program.IfStatement.execute(IfStatement.java:75)
    com.caucho.quercus.program.BlockStatement.execute(BlockStatement.java:99)
    com.caucho.quercus.program.IfStatement.execute(IfStatement.java:75)
    com.caucho.quercus.program.ForeachStatement.execute(ForeachStatement.java:92)
    com.caucho.quercus.program.BlockStatement.execute(BlockStatement.java:99)
    com.caucho.quercus.program.Function.callImpl(Function.java:334)
    com.caucho.quercus.program.Function.call(Function.java:274)
    com.caucho.quercus.program.AbstractFunction.callMethod(AbstractFunction.java:208)
    com.caucho.quercus.env.QuercusClass.callMethod(QuercusClass.java:724)
    com.caucho.quercus.env.ObjectExtValue.callMethod(ObjectExtValue.java:544)
    com.caucho.quercus.expr.MethodCallExpr.eval(MethodCallExpr.java:104)
    com.caucho.quercus.program.ReturnStatement.execute(ReturnStatement.java:68)
    com.caucho.quercus.program.BlockStatement.execute(BlockStatement.java:99)
    com.caucho.quercus.program.Function.callImpl(Function.java:334)
    com.caucho.quercus.program.Function.call(Function.java:274)
    com.caucho.quercus.env.CallbackFunction.call(CallbackFunction.java:153)
    com.caucho.quercus.lib.FunctionModule.call_user_func_array(FunctionModule.java:91)
    sun.reflect.GeneratedMethodAccessor51.invoke(Unknown Source)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    com.caucho.quercus.module.StaticFunction.invoke(StaticFunction.java:120)
    com.caucho.quercus.env.JavaInvoker.call(JavaInvoker.java:615)
    com.caucho.quercus.env.JavaInvoker.call(JavaInvoker.java:488)
    com.caucho.quercus.env.JavaInvoker.call(JavaInvoker.java:473)
    com.caucho.quercus.expr.FunctionExpr.evalImpl(FunctionExpr.java:182)
    com.caucho.quercus.expr.FunctionExpr.eval(FunctionExpr.java:126)
    com.caucho.quercus.program.ExprStatement.execute(ExprStatement.java:64)
    com.caucho.quercus.program.IfStatement.execute(IfStatement.java:75)
    com.caucho.quercus.program.ForeachStatement.execute(ForeachStatement.java:92)
    com.caucho.quercus.program.DoStatement.execute(DoStatement.java:61)
    .do_action(/D:/Java/apache-tomcat-6.0.14/webapps/quercus/wordpress/wp-includes/plugin.php:175)
    .(/D:/Java/apache-tomcat-6.0.14/webapps/quercus/wordpress/wp-admin/users.php:119)

note The full stack trace of the root cause is available in the Apache Tomcat/6.0.14 logs.
Apache Tomcat/6.0.14
Steps To Reproduce
Additional Information I download quercus from : http://quercus.caucho.com/download/quercus-3.1.3.war [^]


From Wordpress 2.3
phpfile : wp-includes/formatting.php

line 1126 :

    $safe_text = preg_replace('/&#(x)?0*(?(1)27|39);?/i', "'", stripslashes($safe_text));


Attached Files

- Relationships

- Notes
(0002411)
ferg
10-29-07 16:04

php/4eh-
 

- Issue History
Date Modified Username Field Change
10-18-07 23:35 lizongbo New Issue
10-29-07 16:04 ferg Note Added: 0002411
10-29-07 16:04 ferg Assigned To  => ferg
10-29-07 16:04 ferg Status new => closed
10-29-07 16:04 ferg Resolution open => fixed
10-29-07 16:04 ferg Fixed in Version  => 3.1.4


Mantis 1.0.0rc3[^]
Copyright © 2000 - 2005 Mantis Group
29 total queries executed.
26 unique queries executed.
Powered by Mantis Bugtracker