Anonymous | Login | Signup for a new account | 09-07-2024 16:35 PDT |
Main | My View | View Issues | Change Log | Docs |
Viewing Issue Simple Details [ Jump to Notes ] | [ View Advanced ] [ Issue History ] [ Print ] | |||||||||||
ID | Category | Severity | Reproducibility | Date Submitted | Last Update | |||||||
0005511 | [Quercus] | major | always | 08-28-13 13:22 | 08-28-13 13:22 | |||||||
Reporter | jpalmisa | View Status | public | |||||||||
Assigned To | ||||||||||||
Priority | normal | Resolution | open | |||||||||
Status | new | Product Version | 4.0.36 | |||||||||
Summary | 0005511: unserialize() fails with IOException when unserializing PHP class the implements Serializabe | |||||||||||
Description |
When I attempt to unserialize objects that implement the PHP Serializable interface Quercus throws: java.io.IOException: option not recognized 'C' at com.caucho.quercus.lib.UnserializeReader.unserialize(UnserializeReader.java:334) at com.caucho.quercus.lib.VariableModule.unserialize(VariableModule.java:697) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.caucho.quercus.module.StaticFunction.invoke(StaticFunction.java:113) at com.caucho.quercus.env.JavaInvoker.callJavaMethod(JavaInvoker.java:814) at com.caucho.quercus.env.JavaInvoker.callMethod(JavaInvoker.java:690) at com.caucho.quercus.env.JavaInvoker.call(JavaInvoker.java:671) at com.caucho.quercus.expr.CallExpr.evalImpl(CallExpr.java:226) at com.caucho.quercus.expr.CallExpr.evalCopy(CallExpr.java:154) at com.caucho.quercus.expr.Expr.evalAssignValue(Expr.java:585) at com.caucho.quercus.expr.BinaryAssignExpr.eval(BinaryAssignExpr.java:88) at com.caucho.quercus.expr.Expr.evalTop(Expr.java:540) at com.caucho.quercus.statement.ExprStatement.execute(ExprStatement.java:67) at com.caucho.quercus.statement.BlockStatement.execute(BlockStatement.java:105) at com.caucho.quercus.statement.TryStatement.execute(TryStatement.java:72)...... I looked at the UnserializeReader.unserialize(...) method and the case statement does not account for 'C' as the leading character of the serialized string. The PHP doc on the Serializable interface (http://php.net/manual/en/class.serializable.php) [^] shows that this is a valid leading character. The serialized objects were written to disk using PHP 5.3. |
|||||||||||
Additional Information | ||||||||||||
Attached Files | ||||||||||||
|
There are no notes attached to this issue. |
Mantis 1.0.0rc3[^]
Copyright © 2000 - 2005 Mantis Group
26 total queries executed. 24 unique queries executed. |