From 80812f2e4c903afa866233f920dc573038cd2d32 Mon Sep 17 00:00:00 2001
From: "Richard T. Carback III" <rick.carback@gmail.com>
Date: Thu, 21 Jul 2022 19:36:22 +0000
Subject: [PATCH] Modify LoadContact to always try to unmarshal the v0 contact
 object

---
 storage/utility/contact.go | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/storage/utility/contact.go b/storage/utility/contact.go
index ebf4d31bb..3f34d8878 100644
--- a/storage/utility/contact.go
+++ b/storage/utility/contact.go
@@ -10,6 +10,7 @@ package utility
 import (
 	"fmt"
 
+	jww "github.com/spf13/jwalterweatherman"
 	"gitlab.com/elixxir/client/storage/versioned"
 	"gitlab.com/elixxir/crypto/contact"
 	"gitlab.com/xx_network/primitives/id"
@@ -32,6 +33,15 @@ func StoreContact(kv *versioned.KV, c contact.Contact) error {
 
 func LoadContact(kv *versioned.KV, cid *id.ID) (contact.Contact, uint64, error) {
 	vo, err := kv.Get(makeContactKey(cid), currentContactVersion)
+	if err != nil {
+		vo2, err2 := kv.Get(makeContactKey(cid), 0)
+		if err2 == nil {
+			err = nil
+			vo = vo2
+		} else {
+			jww.DEBUG.Printf("LoadContact: %+v", err2)
+		}
+	}
 	if err != nil {
 		return contact.Contact{}, 0, err
 	}
-- 
GitLab