diff --git a/src/google/protobuf/generated_message_reflection.cc b/src/google/protobuf/generated_message_reflection.cc index b563c459ce..623b27a077 100644 --- a/src/google/protobuf/generated_message_reflection.cc +++ b/src/google/protobuf/generated_message_reflection.cc @@ -213,7 +213,7 @@ void ReportReflectionUsageMessageError(const Descriptor* expected, " Expected type: %s\n" " Actual type : %s\n" " Field : %s\n" - " Problem : Message is not the right type for reflection", + " Problem : Message is not the right object for reflection", method, expected->full_name(), actual->full_name(), field->full_name()); } #endif @@ -288,7 +288,7 @@ static void ReportReflectionUsageEnumTypeError( #define USAGE_CHECK_MESSAGE(METHOD, MESSAGE) #else #define USAGE_CHECK_MESSAGE(METHOD, MESSAGE) \ - if (descriptor_ != (MESSAGE)->GetDescriptor()) \ + if (this != (MESSAGE)->GetReflection()) \ ReportReflectionUsageMessageError(descriptor_, (MESSAGE)->GetDescriptor(), \ field, #METHOD) #endif diff --git a/src/google/protobuf/generated_message_reflection_unittest.cc b/src/google/protobuf/generated_message_reflection_unittest.cc index 29e5843554..62f02189de 100644 --- a/src/google/protobuf/generated_message_reflection_unittest.cc +++ b/src/google/protobuf/generated_message_reflection_unittest.cc @@ -1331,7 +1331,7 @@ TEST(GeneratedMessageReflectionTest, UsageErrors) { " Expected type: protobuf_unittest.TestAllTypes\n" " Actual type : protobuf_unittest.ForeignMessage\n" " Field : protobuf_unittest.TestAllTypes.optional_int32\n" - " Problem : Message is not the right type for reflection"); + " Problem : Message is not the right object for reflection"); EXPECT_DEATH( reflection->GetInt32( message,