소스 검색

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 {
-	// TODO: check duplicate
+	if _, found := globalTransportConfigCreatorCache[protocol]; found {
+		return newError("protocol: " + TransportProtocol_name[int32(protocol)]+ " is already registered").AtError()
+	}
 	globalTransportConfigCreatorCache[protocol] = creator
 	return nil
 }