Codechange: use std::string to return the debug level information

pull/595/head
Rubidium 1 year ago committed by rubidium42
parent 10e12154f5
commit 53f83c31b0

@ -220,22 +220,14 @@ void SetDebugString(const char *s, void (*error_func)(const std::string &))
* Just return a string with the values of all the debug categories.
* @return string with debug-levels
*/
const char *GetDebugString()
std::string GetDebugString()
{
const DebugLevel *i;
static char dbgstr[150];
char dbgval[20];
memset(dbgstr, 0, sizeof(dbgstr));
i = debug_level;
seprintf(dbgstr, lastof(dbgstr), "%s=%d", i->name, *i->level);
for (i++; i != endof(debug_level); i++) {
seprintf(dbgval, lastof(dbgval), ", %s=%d", i->name, *i->level);
strecat(dbgstr, dbgval, lastof(dbgstr));
std::string result;
for (const DebugLevel *i = debug_level; i != endof(debug_level); ++i) {
if (!result.empty()) result += ", ";
fmt::format_to(std::back_inserter(result), "{}={}", i->name, *i->level);
}
return dbgstr;
return result;
}
/**

@ -58,7 +58,7 @@ extern int _debug_random_level;
void DumpDebugFacilityNames(std::back_insert_iterator<std::string> &output_iterator);
void SetDebugString(const char *s, void (*error_func)(const std::string &));
const char *GetDebugString();
std::string GetDebugString();
/* Shorter form for passing filename and linenumber */
#define FILE_LINE __FILE__, __LINE__

Loading…
Cancel
Save