浏览代码

Fixed issue in AsReadOnly()

csharptest 15 年之前
父节点
当前提交
dce2b9d10e
共有 2 个文件被更改,包括 9 次插入2 次删除
  1. 4 1
      src/ProtocolBuffers/ExtensionRegistry.cs
  2. 5 1
      src/ProtocolBuffers/ExtensionRegistryLite.cs

+ 4 - 1
src/ProtocolBuffers/ExtensionRegistry.cs

@@ -119,9 +119,12 @@ namespace Google.ProtocolBuffers {
       get { return empty; }
     }
 
-    public override ExtensionRegistryLite AsReadOnly() {
+    public new ExtensionRegistry AsReadOnly() {
       return new ExtensionRegistry(extensionsByName, extensionsByNumber, true);
     }
+    protected override ExtensionRegistryLite MakeReadOnly() {
+      return AsReadOnly();
+    }
 
     /// <summary>
     /// Finds an extension by fully-qualified field name, in the

+ 5 - 1
src/ProtocolBuffers/ExtensionRegistryLite.cs

@@ -119,7 +119,11 @@ namespace Google.ProtocolBuffers {
       get { return empty; }
     }
 
-    public virtual ExtensionRegistryLite AsReadOnly() {
+    public ExtensionRegistryLite AsReadOnly() {
+      return MakeReadOnly();
+    }
+
+    protected virtual ExtensionRegistryLite MakeReadOnly() {
       return new ExtensionRegistryLite(extensionsByNumber, true);
     }