Fix array constructor in c extension for compatibility (#4667)

In old generated code, the constructor of message doesn't provide a
default null to parent's constructor. Previously, in c extesnion, this
case was not handled.
This commit is contained in:
Paul Yang 2018-05-23 18:14:34 -07:00
parent 6737954661
commit 00d32539c6

View File

@ -387,9 +387,9 @@ void Message_construct(zval* msg, zval* array_wrapper) {
// object. Here, we manually modify it to our message in such a case.
PHP_METHOD(Message, __construct) {
// Init message with array
zval* array_wrapper;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "a!", &array_wrapper,
message_type) == FAILURE) {
zval* array_wrapper = NULL;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC,
"|a!", &array_wrapper) == FAILURE) {
return;
}