From 953a69abc6ee47d6c6f395a45b8ab42640e70ac7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Simon=20K=C3=BCnzel?= <simonk@fsmpi.rwth-aachen.de>
Date: Thu, 17 Apr 2025 02:01:33 +0200
Subject: [PATCH] Fix #64 Conflict resolution is shown for any error

---
 .../object_management/OMConfigComponent.tsx        | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/src/videoag/object_management/OMConfigComponent.tsx b/src/videoag/object_management/OMConfigComponent.tsx
index 188cfcc..f242926 100644
--- a/src/videoag/object_management/OMConfigComponent.tsx
+++ b/src/videoag/object_management/OMConfigComponent.tsx
@@ -10,6 +10,7 @@ import type {
     int,
 } from "@/videoag/api/types";
 import { useApi } from "@/videoag/api/ApiProvider";
+import { ApiError } from "@/videoag/api/ApiError";
 import { showError, showErrorToast } from "@/videoag/error/ErrorDisplay";
 import { useLanguage } from "@/videoag/localization/LanguageProvider";
 import { useReloadBoundary } from "@/videoag/miscellaneous/ReloadBoundary";
@@ -585,9 +586,16 @@ export function OMEdit({
             })
             .catch((err) => {
                 console.error(err, "Unable to update object");
-                setShowConfigModal(false);
-                setInConflictResolution((x) => x + 1);
-                setUpdatesToBeResolved(updates);
+                if (
+                    err instanceof ApiError &&
+                    err.error_code === "modification_unexpected_current_value"
+                ) {
+                    setShowConfigModal(false);
+                    setInConflictResolution((x) => x + 1);
+                    setUpdatesToBeResolved(updates);
+                } else {
+                    showError(err);
+                }
             });
     };
 
-- 
GitLab