From 4c915180da953cdd9f3c722ba731faf3034d1197 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Fri, 26 Feb 2021 13:28:02 +0100 Subject: [PATCH] - fixed stale pointer access in Unix version of D_AddFile. Pointer was assigned a buffer of a local variable that went out of scope before checking its content. Fixes #268 (hopefully) --- source/common/utility/findfile.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/common/utility/findfile.cpp b/source/common/utility/findfile.cpp index ac0ca8fdf..6006a34a1 100644 --- a/source/common/utility/findfile.cpp +++ b/source/common/utility/findfile.cpp @@ -208,10 +208,10 @@ bool D_AddFile(TArray& wadfiles, const char* file, bool check, int posi // Confirm file exists in filesystem. struct stat info; bool found = stat(file, &info) == 0; + FString fullpath = file; if (!found) { // File not found, so split file into path and filename so we can enumerate the path for the file. - FString fullpath = file; auto lastindex = fullpath.LastIndexOf("/"); FString basepath = fullpath.Left(lastindex); FString filename = fullpath.Right(fullpath.Len() - lastindex - 1);