From 99564c3347223b92e49bd40f37b8c0d6fc6a3971 Mon Sep 17 00:00:00 2001 From: Paul Yang Date: Wed, 16 Nov 2016 11:07:43 -0800 Subject: Rename Empty to GPBEmpty in php generated file. In php, class name cannot be "Empty". Modified code generator to (#2375) generate GPBEmpty instead (for google.protobuf.Empty only). Also change runtime code to work with the new generated code accordingly. --- php/src/Google/Protobuf/descriptor.php | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'php/src/Google/Protobuf') diff --git a/php/src/Google/Protobuf/descriptor.php b/php/src/Google/Protobuf/descriptor.php index e5cff0ba..ef6b9dcf 100644 --- a/php/src/Google/Protobuf/descriptor.php +++ b/php/src/Google/Protobuf/descriptor.php @@ -215,6 +215,18 @@ class Descriptor return $desc; } } + +function addPrefixIfSpecial( + $name, + $package) +{ + if ($name === "Empty" && $package === "google.protobuf") { + return "GPBEmpty"; + } else { + return $name; + } +} + function getFullClassName( $proto, $containing, @@ -224,7 +236,8 @@ function getFullClassName( &$fullname) { // Full name needs to start with '.'. - $message_name_without_package = $proto->getName(); + $message_name_without_package = + addPrefixIfSpecial($proto->getName(), $package); if ($containing !== "") { $message_name_without_package = $containing . "." . $message_name_without_package; -- cgit v1.2.3