From 118a3fc9db8f92589e9fc5074833ae84f774e259 Mon Sep 17 00:00:00 2001
From: Jovan Gerodetti <jovan.gerodetti@titannano.de>
Date: Tue, 6 May 2025 14:47:19 +0200
Subject: [PATCH] fix: update assets when `duplicateId` is provided as `null`
 (#18071)

Update assets when duplicateId is provided as null
---
 server/src/services/asset.service.spec.ts | 15 +++++++++++++++
 server/src/services/asset.service.ts      |  8 ++++----
 2 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/server/src/services/asset.service.spec.ts b/server/src/services/asset.service.spec.ts
index ecfb7936d2..b677a6588d 100755
--- a/server/src/services/asset.service.spec.ts
+++ b/server/src/services/asset.service.spec.ts
@@ -431,6 +431,21 @@ describe(AssetService.name, () => {
         { name: JobName.SIDECAR_WRITE, data: { id: 'asset-1', dateTimeOriginal, latitude: 30, longitude: 50 } },
       ]);
     });
+
+    it('should update Assets table if duplicateId is provided as null', async () => {
+      mocks.access.asset.checkOwnerAccess.mockResolvedValue(new Set(['asset-1']));
+
+      await sut.updateAll(authStub.admin, {
+        ids: ['asset-1'],
+        latitude: 0,
+        longitude: 0,
+        isArchived: undefined,
+        isFavorite: undefined,
+        duplicateId: null,
+        rating: undefined,
+      });
+      expect(mocks.asset.updateAll).toHaveBeenCalled();
+    });
   });
 
   describe('deleteAll', () => {
diff --git a/server/src/services/asset.service.ts b/server/src/services/asset.service.ts
index bcbe86875b..6047130546 100644
--- a/server/src/services/asset.service.ts
+++ b/server/src/services/asset.service.ts
@@ -115,10 +115,10 @@ export class AssetService extends BaseService {
     }
 
     if (
-      options.isArchived != undefined ||
-      options.isFavorite != undefined ||
-      options.duplicateId != undefined ||
-      options.rating != undefined
+      options.isArchived !== undefined ||
+      options.isFavorite !== undefined ||
+      options.duplicateId !== undefined ||
+      options.rating !== undefined
     ) {
       await this.assetRepository.updateAll(ids, options);
     }