From da894c81efc5d411d40828feeb5fb72081da7268 Mon Sep 17 00:00:00 2001 From: Hamza Date: Fri, 28 Aug 2026 13:03:30 +0200 Subject: [PATCH] fix(cardDav): Only update user card on actual mapped propreties changes fix(cardDav): Only update user card on actual mapped propreties changes Signed-off-by: Hamza [skip ci] --- apps/dav/lib/CardDAV/SyncService.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/apps/dav/lib/CardDAV/SyncService.php b/apps/dav/lib/CardDAV/SyncService.php index 38c2cef83a58d..793c43ecd0854 100644 --- a/apps/dav/lib/CardDAV/SyncService.php +++ b/apps/dav/lib/CardDAV/SyncService.php @@ -152,7 +152,12 @@ public function updateUser(IUser $user): void { if (is_null($vCard)) { $this->backend->deleteCard($addressBookId, $cardId); } else { - $this->backend->updateCard($addressBookId, $cardId, $vCard->serialize()); + $cardData = $vCard->serialize(); + // Writing an identical card would still bump the address book + // sync token and make every client re-download the card + if ($card['carddata'] !== $cardData) { + $this->backend->updateCard($addressBookId, $cardId, $cardData); + } } } }, $this->dbConnection);