From: Craig Robbins Date: Tue, 24 Mar 2015 16:42:31 +0000 (+1000) Subject: Change filename of screenshots to something more human readable X-Git-Tag: 0.4.13~433 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=4fbcfac6cf5f7404df62e94133388c601386d687;p=oweals%2Fminetest.git Change filename of screenshots to something more human readable --- diff --git a/src/client.cpp b/src/client.cpp index 3320172f4..b637e0336 100644 --- a/src/client.cpp +++ b/src/client.cpp @@ -1710,13 +1710,22 @@ void Client::makeScreenshot(IrrlichtDevice *device) if (image) { raw_image->copyTo(image); - irr::c8 filename[256]; - snprintf(filename, sizeof(filename), - (std::string("%s") + DIR_DELIM + "screenshot_%u.png").c_str(), - g_settings->get("screenshot_path").c_str(), - device->getTimer()->getRealTime()); + + std::string filename; + + time_t t = time(NULL); + struct tm *tm = localtime(&t); + char timetstamp_c[16]; // YYYYMMDD_HHMMSS + '\0' + strftime(timetstamp_c, sizeof(timetstamp_c), "%Y%m%d_%H%M%S", tm); + + filename = g_settings->get("screenshot_path") + + DIR_DELIM + + std::string("screenshot_") + + std::string(timetstamp_c) + + ".png"; + std::ostringstream sstr; - if (driver->writeImageToFile(image, filename)) { + if (driver->writeImageToFile(image, filename.c_str())) { sstr << "Saved screenshot to '" << filename << "'"; } else { sstr << "Failed to save screenshot '" << filename << "'";