Index: third_party/protobuf/src/google/protobuf/dynamic_message.h |
diff --git a/third_party/protobuf/src/google/protobuf/dynamic_message.h b/third_party/protobuf/src/google/protobuf/dynamic_message.h |
index b3d1e5d28e733bada4be9853db5e1f942938364d..f74cd7dd25154fa4536e280dfafb9d388df75e64 100644 |
--- a/third_party/protobuf/src/google/protobuf/dynamic_message.h |
+++ b/third_party/protobuf/src/google/protobuf/dynamic_message.h |
@@ -1,6 +1,6 @@ |
// Protocol Buffers - Google's data interchange format |
// Copyright 2008 Google Inc. All rights reserved. |
-// http://code.google.com/p/protobuf/ |
+// https://developers.google.com/protocol-buffers/ |
// |
// Redistribution and use in source and binary forms, with or without |
// modification, are permitted provided that the following conditions are |
@@ -38,8 +38,14 @@ |
#ifndef GOOGLE_PROTOBUF_DYNAMIC_MESSAGE_H__ |
#define GOOGLE_PROTOBUF_DYNAMIC_MESSAGE_H__ |
+#include <memory> |
+#ifndef _SHARED_PTR_H |
+#include <google/protobuf/stubs/shared_ptr.h> |
+#endif |
+ |
#include <google/protobuf/message.h> |
#include <google/protobuf/stubs/common.h> |
+#include <google/protobuf/stubs/mutex.h> |
namespace google { |
namespace protobuf { |
@@ -121,12 +127,22 @@ class LIBPROTOBUF_EXPORT DynamicMessageFactory : public MessageFactory { |
// public header (for good reason), but dynamic_message.h is, and public |
// headers may only #include other public headers. |
struct PrototypeMap; |
- scoped_ptr<PrototypeMap> prototypes_; |
+ google::protobuf::scoped_ptr<PrototypeMap> prototypes_; |
mutable Mutex prototypes_mutex_; |
friend class DynamicMessage; |
const Message* GetPrototypeNoLock(const Descriptor* type); |
+ // Construct default oneof instance for reflection usage if oneof |
+ // is defined. |
+ static void ConstructDefaultOneofInstance(const Descriptor* type, |
+ const int offsets[], |
+ void* default_oneof_instance); |
+ // Delete default oneof instance. Called by ~DynamicMessageFactory. |
+ static void DeleteDefaultOneofInstance(const Descriptor* type, |
+ const int offsets[], |
+ void* default_oneof_instance); |
+ |
GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(DynamicMessageFactory); |
}; |