Jelajahi Sumber

fix proto merging logic

Darien Raymond 8 tahun lalu
induk
melakukan
973ce07db9
1 mengubah file dengan 14 tambahan dan 3 penghapusan
  1. 14 3
      app/policy/config.go

+ 14 - 3
app/policy/config.go

@@ -2,8 +2,6 @@ package policy
 
 import (
 	"time"
-
-	"github.com/golang/protobuf/proto"
 )
 
 func (s *Second) Duration() time.Duration {
@@ -11,5 +9,18 @@ func (s *Second) Duration() time.Duration {
 }
 
 func (p *Policy) OverrideWith(another *Policy) {
-	proto.Merge(p, another)
+	if another.Timeout != nil {
+		if another.Timeout.Handshake != nil {
+			p.Timeout.Handshake = another.Timeout.Handshake
+		}
+		if another.Timeout.ConnectionIdle != nil {
+			p.Timeout.ConnectionIdle = another.Timeout.ConnectionIdle
+		}
+		if another.Timeout.UplinkOnly != nil {
+			p.Timeout.UplinkOnly = another.Timeout.UplinkOnly
+		}
+		if another.Timeout.DownlinkOnly != nil {
+			p.Timeout.DownlinkOnly = another.Timeout.DownlinkOnly
+		}
+	}
 }