diff --git a/config/service_config.go b/config/service_config.go index 4dbd5843980a73fcb33526fe6ebd063d9c7b6a22..ffacd2017cbdd57fe11e1e10c39853ef847973e4 100644 --- a/config/service_config.go +++ b/config/service_config.go @@ -116,11 +116,13 @@ func getRandomPort(protocolConfigs []*ProtocolConfig) *list.List { } tcp, err := gxnet.ListenOnTCPRandomPort(proto.Ip) + if tcp != nil { + defer tcp.Close() + } if err != nil { panic(perrors.New(fmt.Sprintf("Get tcp port error,err is {%v}", err))) } ports.PushBack(strings.Split(tcp.Addr().String(), ":")[1]) - defer tcp.Close() } return ports } @@ -143,8 +145,7 @@ func (c *ServiceConfig) Export() error { regUrls := loadRegistries(c.Registry, providerConfig.Registries, common.PROVIDER) urlMap := c.getUrlMap() protocolConfigs := loadProtocol(c.Protocol, providerConfig.Protocols) - protocolSize := len(protocolConfigs) - if protocolSize == 0 { + if len(protocolConfigs) == 0 { logger.Warnf("The service %v's '%v' protocols don't has right protocolConfigs ", c.InterfaceName, c.Protocol) return nil } diff --git a/config/service_config_test.go b/config/service_config_test.go index c84a381e288ba545c72aad028ceaf7fe291c825d..e39d32b7f7976cbdc668153bcd901e40dd635556 100644 --- a/config/service_config_test.go +++ b/config/service_config_test.go @@ -22,11 +22,14 @@ import ( ) import ( - "github.com/apache/dubbo-go/common/extension" gxnet "github.com/dubbogo/gost/net" "github.com/stretchr/testify/assert" ) +import ( + "github.com/apache/dubbo-go/common/extension" +) + func doInitProvider() { providerConfig = &ProviderConfig{ ApplicationConfig: &ApplicationConfig{