diff --git a/indexedDb/impl/dm/implementation.go b/indexedDb/impl/dm/implementation.go
index cbb4744066833d77a3b075fcaa70a0219f5d1962..1faf6c94b0632d120bb75af3d5582646575419b3 100644
--- a/indexedDb/impl/dm/implementation.go
+++ b/indexedDb/impl/dm/implementation.go
@@ -30,8 +30,7 @@ import (
 	"gitlab.com/xx_network/primitives/id"
 )
 
-// wasmModel implements dm.EventModel interface, which uses the channels system
-// passed an object that adheres to in order to get events on the channel.
+// wasmModel implements dm.EventModel interface backed by IndexedDb.
 // NOTE: This model is NOT thread safe - it is the responsibility of the
 // caller to ensure that its methods are called sequentially.
 type wasmModel struct {
@@ -217,9 +216,6 @@ func (w *wasmModel) receiveWrapper(messageID message.ID, parentID *message.ID, n
 	data string, partnerKey, senderKey ed25519.PublicKey, dmToken uint32, codeset uint8,
 	timestamp time.Time, round rounds.Round, mType dm.MessageType, status dm.Status) (uint64, error) {
 
-	// Keep track of whether Conversation was altered
-	// FIXME: this is very similar to updateConversation 
-	//.        below. Can we merge them?
 	conversationUpdated := false
 	result, err := w.getConversation(partnerKey)
 	if err != nil {
@@ -240,7 +236,6 @@ func (w *wasmModel) receiveWrapper(messageID message.ID, parentID *message.ID, n
 		jww.DEBUG.Printf(
 			"[DM indexedDB] Conversation with %s already joined", nickname)
 
-		updateConversation := false
 		// Update Conversation if nickname was altered
 		isFromPartner := bytes.Equal(result.Pubkey, senderKey)
 		nicknameChanged := result.Nickname != nickname
@@ -248,28 +243,28 @@ func (w *wasmModel) receiveWrapper(messageID message.ID, parentID *message.ID, n
 			jww.DEBUG.Printf(
 				"[DM indexedDB] Updating from nickname %s to %s",
 				result.Nickname, nickname)
-			updateConversation = true
+			conversationUpdated = true
 		}
 
 		// Fix conversation if dmToken is altered
 		dmTokenChanged := result.Token != dmToken
 		if isFromPartner && dmTokenChanged {
 			jww.WARN.Printf(
-				"[DM indexedDB] Updating from dmToken %s to %s",
+				"[DM indexedDB] Updating from dmToken %d to %d",
 				result.Token, dmToken)
-			updateConversation = true
-		}
-
-		if updateConversation {
-			err = w.upsertConversation(nickname, result.Pubkey,
-				result.Token, result.CodesetVersion,
-				result.Blocked)
-			if err != nil {
-				return 0, err
-			}
 			conversationUpdated = true
 		}
+	}
 
+	// Update the conversation in storage, if needed
+	if conversationUpdated {
+		err = w.upsertConversation(nickname, result.Pubkey,
+			result.Token, result.CodesetVersion,
+			result.Blocked)
+		if err != nil {
+			return 0, err
+		}
+		conversationUpdated = true
 	}
 
 	// Handle encryption, if it is present