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.
pull/4676/head
Paul Yang 7 years ago
parent 6737954661
commit 00d32539c6
  1. 6
      php/ext/google/protobuf/message.c

@ -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;
}

Loading…
Cancel
Save