From d13e72b815a1b5b7bda4cfd159fbd09716e3bbd1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=80=9A=E6=B4=B2?= Date: Thu, 20 Jul 2023 16:10:13 +0800 Subject: [PATCH] Processing: always trim white spaces --- src/common/processing.h | 16 ++++++++++++---- src/detection/terminalshell/terminalshell.c | 8 +------- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/src/common/processing.h b/src/common/processing.h index 8b38337c0..380c2a36e 100644 --- a/src/common/processing.h +++ b/src/common/processing.h @@ -9,15 +9,23 @@ const char* ffProcessAppendOutput(FFstrbuf* buffer, char* const argv[], bool use static inline const char* ffProcessAppendStdOut(FFstrbuf* buffer, char* const argv[]) { - const char* error = ffProcessAppendOutput(buffer, argv, false); - if (!error) ffStrbufTrimRight(buffer, '\n'); + const char* error = ffProcessAppendOutput(buffer, argv, false); + if (!error) + { + ffStrbufTrimRight(buffer, '\n'); + ffStrbufTrimRight(buffer, ' '); + } return error; } static inline const char* ffProcessAppendStdErr(FFstrbuf* buffer, char* const argv[]) { - const char* error = ffProcessAppendOutput(buffer, argv, true); - if (!error) ffStrbufTrimRight(buffer, '\n'); + const char* error = ffProcessAppendOutput(buffer, argv, true); + if (!error) + { + ffStrbufTrimRight(buffer, '\n'); + ffStrbufTrimRight(buffer, ' '); + } return error; } diff --git a/src/detection/terminalshell/terminalshell.c b/src/detection/terminalshell/terminalshell.c index b5261f7a7..cfaede137 100644 --- a/src/detection/terminalshell/terminalshell.c +++ b/src/detection/terminalshell/terminalshell.c @@ -41,17 +41,11 @@ static bool getFileVersion(const char* exePath, FFstrbuf* version) static bool getExeVersionRaw(FFstrbuf* exe, FFstrbuf* version) { - bool ok = ffProcessAppendStdOut(version, (char* const[]) { + return ffProcessAppendStdOut(version, (char* const[]) { exe->chars, "--version", NULL }) == NULL; - if (ok) - { - ffStrbufTrim(version, '\n'); - ffStrbufTrim(version, ' '); - } - return ok; } static bool getExeVersionGeneral(FFstrbuf* exe, FFstrbuf* version)