From 63ba8d830c3017f792ea4005e09a4e28f860faad Mon Sep 17 00:00:00 2001 From: crschnick Date: Sat, 18 Jan 2025 11:08:01 +0000 Subject: [PATCH] Improve entry save for concurrent changes [stage] --- app/src/main/java/io/xpipe/app/storage/DataStoreEntry.java | 7 +++++-- version | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/io/xpipe/app/storage/DataStoreEntry.java b/app/src/main/java/io/xpipe/app/storage/DataStoreEntry.java index 107c19e6e..6c2b73ddf 100644 --- a/app/src/main/java/io/xpipe/app/storage/DataStoreEntry.java +++ b/app/src/main/java/io/xpipe/app/storage/DataStoreEntry.java @@ -447,6 +447,11 @@ public class DataStoreEntry extends StorageElement { return; } + // Reset the dirty state early + // That way, if any other changes are made during this save operation, + // the dirty bit can be set to true again + dirty = false; + ObjectMapper mapper = JacksonMapper.getDefault(); ObjectNode obj = JsonNodeFactory.instance.objectNode(); @@ -493,8 +498,6 @@ public class DataStoreEntry extends StorageElement { Files.writeString(normalNotesFile, notes); } lastWrittenNotes = notes; - - dirty = false; } public void setNotes(String newNotes) { diff --git a/version b/version index cfba1a291..3ffdc391e 100644 --- a/version +++ b/version @@ -1 +1 @@ -14.1-3 +14.1-4