From 4f67f5f1593ac7b97c7492e28b5f6703ee84ee26 Mon Sep 17 00:00:00 2001 From: Ray Date: Sun, 12 Nov 2023 12:38:10 +0100 Subject: [PATCH] REVIEWED: `TakeScreenshot()`, potential issues --- src/rcore.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/rcore.c b/src/rcore.c index 96114491fb44..a12f3204896b 100644 --- a/src/rcore.c +++ b/src/rcore.c @@ -1766,7 +1766,8 @@ void UnloadRandomSequence(int *sequence) #endif } -// Takes a screenshot of current screen (saved a .png) +// Takes a screenshot of current screen +// NOTE: Provided fileName should not contain paths, saving to working directory void TakeScreenshot(const char *fileName) { #if defined(SUPPORT_MODULE_RTEXTURES) @@ -1778,12 +1779,13 @@ void TakeScreenshot(const char *fileName) Image image = { imgData, (int)((float)CORE.Window.render.width*scale.x), (int)((float)CORE.Window.render.height*scale.y), 1, PIXELFORMAT_UNCOMPRESSED_R8G8B8A8 }; char path[512] = { 0 }; - strcpy(path, TextFormat("%s/%s", CORE.Storage.basePath, fileName)); - + strcpy(path, TextFormat("%s/%s", CORE.Storage.basePath, GetFileName(fileName))); + ExportImage(image, path); // WARNING: Module required: rtextures RL_FREE(imgData); - TRACELOG(LOG_INFO, "SYSTEM: [%s] Screenshot taken successfully", path); + if (FileExists(path)) TRACELOG(LOG_INFO, "SYSTEM: [%s] Screenshot taken successfully", path); + else TRACELOG(LOG_WARNING, "SYSTEM: [%s] Screenshot could not be saved", path); #else TRACELOG(LOG_WARNING,"IMAGE: ExportImage() requires module: rtextures"); #endif @@ -1836,10 +1838,10 @@ bool IsFileExtension(const char *fileName, const char *ext) { #if defined(SUPPORT_MODULE_RTEXT) && defined(SUPPORT_TEXT_MANIPULATION) int extCount = 0; - const char **checkExts = TextSplit(ext, ';', &extCount); // WARNING: Module required: rtext + const char **checkExts = TextSplit(ext, ';', &extCount); // WARNING: Module required: rtext char fileExtLower[MAX_FILE_EXTENSION_SIZE + 1] = { 0 }; - strncpy(fileExtLower, TextToLower(fileExt), MAX_FILE_EXTENSION_SIZE); // WARNING: Module required: rtext + strncpy(fileExtLower, TextToLower(fileExt), MAX_FILE_EXTENSION_SIZE); // WARNING: Module required: rtext for (int i = 0; i < extCount; i++) {