diff options
Diffstat (limited to 'php')
-rw-r--r-- | php/ext/google/protobuf/package.xml | 11 | ||||
-rw-r--r-- | php/src/Google/Protobuf/Internal/Message.php | 45 | ||||
-rw-r--r-- | php/tests/test_util.php | 4 |
3 files changed, 33 insertions, 27 deletions
diff --git a/php/ext/google/protobuf/package.xml b/php/ext/google/protobuf/package.xml index b4661832..14d46c43 100644 --- a/php/ext/google/protobuf/package.xml +++ b/php/ext/google/protobuf/package.xml @@ -10,11 +10,11 @@ <email>protobuf-opensource@google.com</email> <active>yes</active> </lead> - <date>2016-09-02</date> + <date>2016-09-23</date> <time>16:06:07</time> <version> <release>3.1.0a1</release> - <api>3.1.0</api> + <api>3.1.0a1</api> </version> <stability> <release>alpha</release> @@ -57,14 +57,15 @@ First alpha release. <changelog> <release> <version> - <release>3.1.0</release> - <api>3.1.0</api> + <release>3.1.0a1</release> + <api>3.1.0a1</api> </version> <stability> <release>alpha</release> <api>alpha</api> </stability> - <date>2016-09-02</date> + <date>2016-09-23</date> + <time>16:06:07</time> <license uri="http://www.opensource.org/licenses/bsd-license.php">New BSD License</license> <notes> First alpha release diff --git a/php/src/Google/Protobuf/Internal/Message.php b/php/src/Google/Protobuf/Internal/Message.php index a8de6a11..7bdc6a8c 100644 --- a/php/src/Google/Protobuf/Internal/Message.php +++ b/php/src/Google/Protobuf/Internal/Message.php @@ -81,41 +81,44 @@ class Message switch ($value_field->getType()) { case GPBType::MESSAGE: case GPBType::GROUP: - $this->$setter( - new MapField( - $key_field->getType(), - $value_field->getType(), - $value_field->getMessageType()->getClass())); + $map_field = new MapField( + $key_field->getType(), + $value_field->getType(), + $value_field->getMessageType()->getClass()); + $this->$setter($map_field); break; case GPBType::ENUM: - $this->$setter( - new MapField( - $key_field->getType(), - $value_field->getType(), - $value_field->getEnumType()->getClass())); + $map_field = new MapField( + $key_field->getType(), + $value_field->getType(), + $value_field->getEnumType()->getClass()); + $this->$setter($map_field); break; default: - $this->$setter(new MapField($key_field->getType(), - $value_field->getType())); + $map_field = new MapField( + $key_field->getType(), + $value_field->getType()); + $this->$setter($map_field); break; } } else if ($field->getLabel() === GPBLabel::REPEATED) { switch ($field->getType()) { case GPBType::MESSAGE: case GPBType::GROUP: - $this->$setter( - new RepeatedField( - $field->getType(), - $field->getMessageType()->getClass())); + $repeated_field = new RepeatedField( + $field->getType(), + $field->getMessageType()->getClass()); + $this->$setter($repeated_field); break; case GPBType::ENUM: - $this->$setter( - new RepeatedField( - $field->getType(), - $field->getEnumType()->getClass())); + $repeated_field = new RepeatedField( + $field->getType(), + $field->getEnumType()->getClass()); + $this->$setter($repeated_field); break; default: - $this->$setter(new RepeatedField($field->getType())); + $repeated_field = new RepeatedField($field->getType()); + $this->$setter($repeated_field); break; } } else if ($field->getOneofIndex() !== -1) { diff --git a/php/tests/test_util.php b/php/tests/test_util.php index decd1a78..2f6e4dd8 100644 --- a/php/tests/test_util.php +++ b/php/tests/test_util.php @@ -50,6 +50,8 @@ class TestUtil public static function setTestMessage(TestMessage $m) { + $sub = new TestMessage_Sub(); + $m->setOptionalInt32(-42); $m->setOptionalInt64(-43); $m->setOptionalUint32(42); @@ -66,7 +68,7 @@ class TestUtil $m->setOptionalString('a'); $m->setOptionalBytes('b'); $m->setOptionalEnum(TestEnum::ONE); - $m->setOptionalMessage(new TestMessage_Sub()); + $m->setOptionalMessage($sub); $m->getOptionalMessage()->SetA(33); $m->getRepeatedInt32() []= -42; |