Github user RobberPhex commented on a diff in the pull request: https://github.com/apache/thrift/pull/1401#discussion_r147051880 --- Diff: lib/php/src/ext/thrift_protocol/php_thrift_protocol.cpp --- @@ -537,6 +537,9 @@ void binary_deserialize(int8_t thrift_typeID, PHPInputTransport& transport, zval } zval* spec = zend_read_static_property(Z_OBJCE_P(return_value), "_TSPEC", sizeof("_TSPEC")-1, false); + if (spec) { --- End diff -- After `zend_read_static_property` with `slient=false`, we should detect exception. If no exception, we needn't detect spec is null. but we need detect that `Z_TYPE_P(prop) == IS_REFERENCE`
---