From b0d91cbf3afd72dc320a8f5386b2fe3f3fe0ae68 Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Mon, 25 Jul 2022 22:40:34 +0200 Subject: simplify formats --- src/helpers/MiscFunctions.cpp | 22 ++-------------------- 1 file changed, 2 insertions(+), 20 deletions(-) (limited to 'src/helpers/MiscFunctions.cpp') diff --git a/src/helpers/MiscFunctions.cpp b/src/helpers/MiscFunctions.cpp index 3fc6d20e..b7285637 100644 --- a/src/helpers/MiscFunctions.cpp +++ b/src/helpers/MiscFunctions.cpp @@ -83,32 +83,14 @@ void wlr_signal_emit_safe(struct wl_signal *signal, void *data) { } std::string getFormat(const char *fmt, ...) { - char buf[LOGMESSAGESIZE] = ""; - char* outputStr; - int logLen; + char* outputStr = nullptr; va_list args; va_start(args, fmt); - logLen = vsnprintf(buf, sizeof buf, fmt, args); + vasprintf(&outputStr, fmt, args); va_end(args); - if ((long unsigned int)logLen < sizeof buf) { - outputStr = strdup(buf); - } else { - outputStr = (char*)malloc(logLen + 1); - - if (!outputStr) { - printf("CRITICAL: Cannot alloc size %d for log! (Out of memory?)", logLen + 1); - return ""; - } - - va_start(args, fmt); - vsnprintf(outputStr, logLen + 1U, fmt, args); - va_end(args); - } - std::string output = std::string(outputStr); - free(outputStr); return output; -- cgit v1.2.3