diff options
Diffstat (limited to 'src')
-rwxr-xr-x | src/libphpcpp.so | bin | 137206 -> 137255 bytes | |||
-rw-r--r-- | src/value.cpp | 9 |
2 files changed, 9 insertions, 0 deletions
diff --git a/src/libphpcpp.so b/src/libphpcpp.so Binary files differindex baef04f..ed993df 100755 --- a/src/libphpcpp.so +++ b/src/libphpcpp.so diff --git a/src/value.cpp b/src/value.cpp index 9d382f1..603508e 100644 --- a/src/value.cpp +++ b/src/value.cpp @@ -789,6 +789,15 @@ Value Value::exec(int argc, zval ***params) */ Type Value::type() const { + // When the type should be a callable Z_TYPE_P returns objectType + // To circumvent this, we check whether _val is callable + char *func_name; + if(zend_is_callable(_val, 0, &func_name)) + { + return callableType; + } + + // return regular type return (Type)Z_TYPE_P(_val); } |