浏览代码

Dedup protocol registration

Jinqiu Yu 7 年之前
父节点
当前提交
794dfd5bf3
共有 1 个文件被更改,包括 3 次插入1 次删除
  1. 3 1
      transport/internet/config.go

+ 3 - 1
transport/internet/config.go

@@ -10,7 +10,9 @@ var (
 )
 )
 
 
 func RegisterProtocolConfigCreator(protocol TransportProtocol, creator ConfigCreator) error {
 func RegisterProtocolConfigCreator(protocol TransportProtocol, creator ConfigCreator) error {
-	// TODO: check duplicate
+	if _, found := globalTransportConfigCreatorCache[protocol]; found {
+		return newError("protocol: " + TransportProtocol_name[int32(protocol)]+ " is already registered").AtError()
+	}
 	globalTransportConfigCreatorCache[protocol] = creator
 	globalTransportConfigCreatorCache[protocol] = creator
 	return nil
 	return nil
 }
 }