While Resin 4.0.5 choked on this particular PHP construct everywhere, 4.0.4 chokes on it a bit differently only here (so far). Resin 4.0.5 would get a StackOverflowError trying to parse it, 4.0.4 gets this java.lang.UnsupportedOperationException. The PHP causing the error is:
do { foreach ( (array) current($wp_filter[$tag]) as $the_ ) if ( !is_null($the_['function']) ) call_user_func_array($the_['function'], array_slice($args, 0, (int) $the_['accepted_args'])); } while ( next($wp_filter[$tag]) !== false ); In previous investigations, I determined that it is the while clause that triggers the problem. [03-21 13:17:14.478] {http://*:80-8} WARNING (com.caucho.server.webapp.ErrorPageManager) java.lang.UnsupportedOperationException: com.caucho.quercus.env.ArgGetValue [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.env.Value.serialize(Value.java:2759) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.env.Value.serialize(Value.java:2741) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.env.ArrayValue.serialize(ArrayValue.java:1294) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.lib.VariableModule.serialize(VariableModule.java:631) [03-21 13:17:14.478] {http://*:80-8} at sun.reflect.GeneratedMethodAccessor151.invoke(Unknown Source) [03-21 13:17:14.478] {http://*:80-8} at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [03-21 13:17:14.478] {http://*:80-8} at java.lang.reflect.Method.invoke(Method.java:597) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.module.StaticFunction.invoke(StaticFunction.java:135) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.env.JavaInvoker.callMethod(JavaInvoker.java:727) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.env.JavaInvoker.call(JavaInvoker.java:641) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.CallExpr.evalImpl(CallExpr.java:238) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.CallExpr.eval(CallExpr.java:151) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.Expr.evalValue(Expr.java:469) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.ReturnStatement.execute(ReturnStatement.java:69) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.IfStatement.execute(IfStatement.java:81) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.BlockStatement.execute(BlockStatement.java:105) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.program.Function.callImpl(Function.java:431) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.program.Function.call(Function.java:349) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.CallExpr.evalImpl(CallExpr.java:236) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.CallExpr.evalCopy(CallExpr.java:164) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.BinaryAssignExpr.eval(BinaryAssignExpr.java:88) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.Expr.evalTop(Expr.java:523) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.ExprStatement.execute(ExprStatement.java:67) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.BlockStatement.execute(BlockStatement.java:105) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.program.Function.callImpl(Function.java:431) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.program.Function.call(Function.java:349) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.CallExpr.evalImpl(CallExpr.java:238) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.CallExpr.eval(CallExpr.java:151) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.Expr.evalTop(Expr.java:523) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.ExprStatement.execute(ExprStatement.java:67) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.IfStatement.execute(IfStatement.java:84) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.BlockStatement.execute(BlockStatement.java:105) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.IfStatement.execute(IfStatement.java:81) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.BlockStatement.execute(BlockStatement.java:105) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.program.Function.callImpl(Function.java:431) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.program.Function.call(Function.java:349) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.env.CallbackFunction.call(CallbackFunction.java:171) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.lib.FunctionModule.call_user_func_array(FunctionModule.java:101) [03-21 13:17:14.478] {http://*:80-8} at sun.reflect.GeneratedMethodAccessor86.invoke(Unknown Source) [03-21 13:17:14.478] {http://*:80-8} at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [03-21 13:17:14.478] {http://*:80-8} at java.lang.reflect.Method.invoke(Method.java:597) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.module.StaticFunction.invoke(StaticFunction.java:135) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.env.JavaInvoker.callMethod(JavaInvoker.java:727) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.env.JavaInvoker.call(JavaInvoker.java:641) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.CallExpr.evalImpl(CallExpr.java:238) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.CallExpr.eval(CallExpr.java:151) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.Expr.evalTop(Expr.java:523) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.ExprStatement.execute(ExprStatement.java:67) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.IfStatement.execute(IfStatement.java:81) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.ForeachStatement.execute(ForeachStatement.java:103) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.DoStatement.execute(DoStatement.java:73) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.BlockStatement.execute(BlockStatement.java:105) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.program.Function.callImpl(Function.java:431) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.program.Function.call(Function.java:349) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.CallExpr.evalImpl(CallExpr.java:238) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.CallExpr.eval(CallExpr.java:151) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.Expr.evalTop(Expr.java:523) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.ExprStatement.execute(ExprStatement.java:67) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.BlockStatement.execute(BlockStatement.java:105) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.IfStatement.execute(IfStatement.java:81) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.BlockStatement.execute(BlockStatement.java:105) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.IfStatement.execute(IfStatement.java:81) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.BlockStatement.execute(BlockStatement.java:105) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.program.QuercusProgram.execute(QuercusProgram.java:396) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.page.InterpretedPage.execute(InterpretedPage.java:89) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.env.Env.executePage(Env.java:3839) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.env.Env.include(Env.java:5296) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.env.Env.includeOnce(Env.java:5249) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.FunIncludeOnceExpr.eval(FunIncludeOnceExpr.java:89) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.Expr.evalTop(Expr.java:523) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.ExprStatement.execute(ExprStatement.java:67) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.BlockStatement.execute(BlockStatement.java:105) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.program.QuercusProgram.execute(QuercusProgram.java:396) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.page.InterpretedPage.execute(InterpretedPage.java:89) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.env.Env.executePageTop(Env.java:3850) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.env.Env.executeTop(Env.java:3793) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.servlet.QuercusServletImpl.service(QuercusServletImpl.java:185) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.servlet.QuercusServlet.service(QuercusServlet.java:610) [03-21 13:17:14.478] {http://*:80-8} at javax.servlet.http.HttpServlet.service(HttpServlet.java:96) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:109) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:183) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.server.webapp.AccessLogFilterChain.doFilter(AccessLogFilterChain.java:103) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:286) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:780) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.server.connection.TcpConnection.dispatchRequest(TcpConnection.java:600) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.server.connection.TcpConnection.handleRequestsImpl(TcpConnection.java:566) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.server.connection.TcpConnection.handleRequests(TcpConnection.java:519) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.server.connection.TcpConnection$AcceptTask.doTask(TcpConnection.java:1100) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.server.connection.TcpConnection$ConnectionReadTask.runThread(TcpConnection.java:1037) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.server.connection.TcpConnection$AcceptTask.run(TcpConnection.java:1068) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.util.ThreadPool$PoolThread.runTasks(ThreadPool.java:901) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.util.ThreadPool$PoolThread.run(ThreadPool.java:866) [03-21 13:17:14.478] {http://*:80-8} Caused by: com.caucho.quercus.QuercusExecutionException: java.lang.UnsupportedOperationException com.caucho.quercus.env.ArgGetValue [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.env.Value.serialize(Value.java:2759) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.env.Value.serialize(Value.java:2741) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.env.ArrayValue.serialize(ArrayValue.java:1294) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.lib.VariableModule.serialize(VariableModule.java:631) [03-21 13:17:14.478] {http://*:80-8} at sun.reflect.GeneratedMethodAccessor151.invoke(Unknown Source) [03-21 13:17:14.478] {http://*:80-8} at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [03-21 13:17:14.478] {http://*:80-8} at java.lang.reflect.Method.invoke(Method.java:597) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.module.StaticFunction.invoke(StaticFunction.java:135) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.env.JavaInvoker.callMethod(JavaInvoker.java:727) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.env.JavaInvoker.call(JavaInvoker.java:641) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.CallExpr.evalImpl(CallExpr.java:238) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.CallExpr.eval(CallExpr.java:151) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.Expr.evalValue(Expr.java:469) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.ReturnStatement.execute(ReturnStatement.java:69) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.IfStatement.execute(IfStatement.java:81) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.statement.BlockStatement.execute(BlockStatement.java:105) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.program.Function.callImpl(Function.java:431) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.program.Function.call(Function.java:349) [03-21 13:17:14.478] {http://*:80-8} at com.caucho.quercus.expr.CallExpr.evalImpl(CallExpr.java:236) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.expr.CallExpr.evalCopy(CallExpr.java:164) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.expr.BinaryAssignExpr.eval(BinaryAssignExpr.java:88) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.expr.Expr.evalTop(Expr.java:523) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.statement.ExprStatement.execute(ExprStatement.java:67) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.statement.BlockStatement.execute(BlockStatement.java:105) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.program.Function.callImpl(Function.java:431) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.program.Function.call(Function.java:349) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.expr.CallExpr.evalImpl(CallExpr.java:238) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.expr.CallExpr.eval(CallExpr.java:151) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.expr.Expr.evalTop(Expr.java:523) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.statement.ExprStatement.execute(ExprStatement.java:67) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.statement.IfStatement.execute(IfStatement.java:84) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.statement.BlockStatement.execute(BlockStatement.java:105) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.statement.IfStatement.execute(IfStatement.java:81) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.statement.BlockStatement.execute(BlockStatement.java:105) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.program.Function.callImpl(Function.java:431) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.program.Function.call(Function.java:349) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.env.CallbackFunction.call(CallbackFunction.java:171) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.lib.FunctionModule.call_user_func_array(FunctionModule.java:101) [03-21 13:17:14.480] {http://*:80-8} at sun.reflect.GeneratedMethodAccessor86.invoke(Unknown Source) [03-21 13:17:14.480] {http://*:80-8} at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [03-21 13:17:14.480] {http://*:80-8} at java.lang.reflect.Method.invoke(Method.java:597) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.module.StaticFunction.invoke(StaticFunction.java:135) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.env.JavaInvoker.callMethod(JavaInvoker.java:727) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.env.JavaInvoker.call(JavaInvoker.java:641) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.expr.CallExpr.evalImpl(CallExpr.java:238) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.expr.CallExpr.eval(CallExpr.java:151) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.expr.Expr.evalTop(Expr.java:523) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.statement.ExprStatement.execute(ExprStatement.java:67) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.statement.IfStatement.execute(IfStatement.java:81) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.statement.ForeachStatement.execute(ForeachStatement.java:103) [03-21 13:17:14.480] {http://*:80-8} at com.caucho.quercus.statement.DoStatement.execute(DoStatement.java:73) [03-21 13:17:14.480] {http://*:80-8} at .do_action(/export/home/me/www/org/mysite/mgfb/wp-includes/plugin.php:336) [03-21 13:17:14.480] {http://*:80-8} _______________________________________________ resin-interest mailing list resin-interest@caucho.com http://maillist.caucho.com/mailman/listinfo/resin-interest