From f2e68f1d3124ef0f965bdf8505b6fb9c48ac36e6 Mon Sep 17 00:00:00 2001 From: akharlamov Date: Mon, 12 Nov 2018 16:11:10 -0800 Subject: [PATCH] Fix crashes when $HOME is not set In case HOME environment variable hasn't been set, getenv returns NULL, which leads to a crash. --- renderdoc/driver/vulkan/vk_posix.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/renderdoc/driver/vulkan/vk_posix.cpp b/renderdoc/driver/vulkan/vk_posix.cpp index 2d839bbde..f5404a48c 100644 --- a/renderdoc/driver/vulkan/vk_posix.cpp +++ b/renderdoc/driver/vulkan/vk_posix.cpp @@ -301,7 +301,8 @@ string LayerRegistrationPath(LayerPath path) if(xdg && FileIO::exists(xdg)) return string(xdg) + "/vulkan/implicit_layer.d/renderdoc_capture.json"; - return string(getenv("HOME")) + + const char *home_path = getenv("HOME"); + return string(home_path != NULL ? home_path : "") + "/.local/share/vulkan/implicit_layer.d/renderdoc_capture.json"; } default: break; @@ -330,7 +331,10 @@ bool VulkanReplay::CheckVulkanLayer(VulkanLayerFlags &flags, std::vector