aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Yang <TeBoring@users.noreply.github.com>2018-05-23 18:14:34 -0700
committerBo Yang <teboring@google.com>2018-05-25 13:04:29 -0700
commitdadc95438ff732cb0c1d2961ce7bcf0d99d179b1 (patch)
tree0069b72edfd5639db022fb985b8a4e57abf6967c
parent2774e5441d8508b7d61cc3786b69149dc43d9f42 (diff)
downloadprotobuf-dadc95438ff732cb0c1d2961ce7bcf0d99d179b1.tar.gz
protobuf-dadc95438ff732cb0c1d2961ce7bcf0d99d179b1.tar.bz2
protobuf-dadc95438ff732cb0c1d2961ce7bcf0d99d179b1.zip
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.
-rw-r--r--php/ext/google/protobuf/message.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/php/ext/google/protobuf/message.c b/php/ext/google/protobuf/message.c
index 69012871..e28e42a1 100644
--- a/php/ext/google/protobuf/message.c
+++ b/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;
}