aboutsummaryrefslogtreecommitdiff
path: root/src/zenremotestore/builds/buildsavedstate.cpp
diff options
context:
space:
mode:
authorDan Engelbrecht <[email protected]>2026-03-11 09:45:44 +0100
committerGitHub Enterprise <[email protected]>2026-03-11 09:45:44 +0100
commitc7212e99244ce7c4225274f4187fde4f6aecd9e3 (patch)
tree21d97a05ac89a602eb6b258482421fabb3a4444b /src/zenremotestore/builds/buildsavedstate.cpp
parenthub consul integration (#820) (diff)
downloadzen-c7212e99244ce7c4225274f4187fde4f6aecd9e3.tar.xz
zen-c7212e99244ce7c4225274f4187fde4f6aecd9e3.zip
block scavenge of other downloads that uses an older state file (#822)
Diffstat (limited to 'src/zenremotestore/builds/buildsavedstate.cpp')
-rw-r--r--src/zenremotestore/builds/buildsavedstate.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/zenremotestore/builds/buildsavedstate.cpp b/src/zenremotestore/builds/buildsavedstate.cpp
index 0685bf679..dfc565d4a 100644
--- a/src/zenremotestore/builds/buildsavedstate.cpp
+++ b/src/zenremotestore/builds/buildsavedstate.cpp
@@ -163,6 +163,8 @@ BuildSaveState::Write(const BuildSaveState& SaveState, CbWriter& Output)
{
ZEN_ASSERT(!SaveState.LocalPath.empty());
+ Output.AddInteger("version", SaveState.Version);
+
Output.AddString("path", (const char*)SaveState.LocalPath.u8string().c_str());
BuildsSelection::Write(SaveState.State.Selection, Output);
@@ -182,6 +184,7 @@ BuildSaveState::Write(const BuildSaveState& SaveState, CbWriter& Output)
BuildSaveState
BuildSaveState::Read(CbObjectView& Input)
{
+ uint32_t Version = Input["version"].AsUInt32(BuildSaveState::NoVersion);
BuildState State = BuildState::Read(Input);
CbObjectView LocalFolderStateObject = Input["localFolderState"sv].AsObjectView();
FolderContent FolderState = LoadFolderContentToCompactBinary(LocalFolderStateObject);
@@ -191,7 +194,10 @@ BuildSaveState::Read(CbObjectView& Input)
throw std::runtime_error("BuildSaveState is invalid, 'path' field is empty");
}
- return BuildSaveState{.State = std::move(State), .FolderState = std::move(FolderState), .LocalPath = std::move(LocalPath)};
+ return BuildSaveState{.Version = Version,
+ .State = std::move(State),
+ .FolderState = std::move(FolderState),
+ .LocalPath = std::move(LocalPath)};
}
CbObject