diff --git a/bindings/ud.go b/bindings/ud.go index 243d24b55746662f3a69a3d7d7a83588ce7f89ef..c5d8fc2e75019557ef5d2199a044b4a395c9b141 100644 --- a/bindings/ud.go +++ b/bindings/ud.go @@ -144,8 +144,8 @@ func LoadOrNewUserDiscovery(e2eID int, follower UdNetworkStatus, // Parameters: // - e2eID - e2e object ID in the tracker // - follower - network follower func wrapped in UdNetworkStatus -// - emailFactJson - a JSON marshalled email fact.Fact -// - phoneFactJson - a JSON marshalled phone fact.Fact +// - emailFactJson - nullable JSON marshalled email fact.Fact +// - phoneFactJson - nullable JSON marshalled phone fact.Fact func NewUdManagerFromBackup(e2eID int, follower UdNetworkStatus, emailFactJson, phoneFactJson []byte) (*UserDiscovery, error) { @@ -156,14 +156,18 @@ func NewUdManagerFromBackup(e2eID int, follower UdNetworkStatus, emailFactJson, } var email, phone fact.Fact - err = json.Unmarshal(emailFactJson, &email) - if err != nil { - return nil, err + if emailFactJson != nil { + err = json.Unmarshal(emailFactJson, &email) + if err != nil { + return nil, err + } } - err = json.Unmarshal(phoneFactJson, &phone) - if err != nil { - return nil, err + if phoneFactJson != nil { + err = json.Unmarshal(phoneFactJson, &phone) + if err != nil { + return nil, err + } } UdNetworkStatusFn := func() xxdk.Status {