aboutsummaryrefslogtreecommitdiff
path: root/src/zenstore/workspaces.cpp
diff options
context:
space:
mode:
authorStefan Boberg <[email protected]>2025-11-01 14:04:35 +0100
committerGitHub Enterprise <[email protected]>2025-11-01 14:04:35 +0100
commita58da97f98697580bf128ed5723ba720cc30f0dc (patch)
tree798e392ddf76128a506293dc0803aaf852203dcd /src/zenstore/workspaces.cpp
parentfix use-after-free in TEST_CASE("compactcas.threadedinsert") (#620) (diff)
downloadzen-a58da97f98697580bf128ed5723ba720cc30f0dc.tar.xz
zen-a58da97f98697580bf128ed5723ba720cc30f0dc.zip
Various fixes to address issues flagged by gcc / non-UE toolchain build (#621)
* gcc: avoid using memset on nontrivial struct * redundant `return std::move` * fixed various compilation issues flagged by gcc * fix issue in xmake.lua detecting whether we are building with the UE toolchain or not * add GCC ignore -Wundef (comment is inaccurate) * remove redundant std::move * don't catch exceptions by value * unreferenced variables * initialize "by the book" instead of memset * remove unused exception reference * add #include <cstring> to fix gcc build * explicitly poulate KeyValueMap by traversing input spans fixes gcc compilation * remove unreferenced variable * eliminate redundant `std::move` which gcc complains about * fix gcc compilation by including <cstring> * tag unreferenced variable to fix gcc compilation * fixes for various cases of naming members the same as their type
Diffstat (limited to 'src/zenstore/workspaces.cpp')
-rw-r--r--src/zenstore/workspaces.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/zenstore/workspaces.cpp b/src/zenstore/workspaces.cpp
index c2391588c..f0f975af4 100644
--- a/src/zenstore/workspaces.cpp
+++ b/src/zenstore/workspaces.cpp
@@ -332,6 +332,7 @@ ScanFolder(LoggerRef InLog, const std::filesystem::path& Path, WorkerThreadPool&
ZEN_TRACE_CPU("workspaces::ScanFolderImpl");
auto Log = [&InLog]() { return InLog; };
+ ZEN_UNUSED(Log);
FolderScanner Data(InLog, WorkerPool, Path);
Data.Traverse();
@@ -353,6 +354,7 @@ WorkspaceShare::GetAbsolutePath(const std::filesystem::path& RootPath, const Oid
const FolderStructure::FileEntry* Entry = m_FolderStructure->FindEntry(Id);
if (Entry == nullptr)
{
+ OutSize = 0;
return {};
}
OutSize = Entry->Size;
@@ -589,7 +591,7 @@ Workspaces::GetWorkspaceShareChunks(const Oid& WorkspaceId,
auto GetOne = [this](const std::filesystem::path& RootPath, WorkspaceShare& Share, const ChunkRequest& Request) -> IoBuffer {
uint64_t Size;
- std::filesystem::path Path = Share.GetAbsolutePath(RootPath, Request.ChunkId, Size);
+ std::filesystem::path Path = Share.GetAbsolutePath(RootPath, Request.ChunkId, /* out */ Size);
if (!Path.empty())
{
uint64_t RequestedOffset = Request.Offset;
@@ -1042,6 +1044,7 @@ Workspaces::WorkspaceConfiguration
Workspaces::FindWorkspace(const LoggerRef& InLog, const std::filesystem::path& WorkspaceStatePath, const Oid& WorkspaceId)
{
auto Log = [&InLog]() { return InLog; };
+ ZEN_UNUSED(Log);
std::string Error;
std::vector<WorkspaceConfiguration> Workspaces = ReadConfig(InLog, WorkspaceStatePath, Error);
@@ -1067,6 +1070,7 @@ Workspaces::FindWorkspace(const LoggerRef& InLog,
const std::filesystem::path& WorkspaceRoot)
{
auto Log = [&InLog]() { return InLog; };
+ ZEN_UNUSED(Log);
std::string Error;
std::vector<WorkspaceConfiguration> Workspaces = ReadConfig(InLog, WorkspaceStatePath, Error);