From 19f3842292d14c6f24213f09eb0b573a92c9e3f7 Mon Sep 17 00:00:00 2001 From: Niklas Schnelle Date: Tue, 14 Nov 2023 17:28:25 +0100 Subject: [PATCH] libutil: fix util_file_read_*() using wrong format specifiers MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The sscanf() format specifiers for signed and unsigned int mistakenly used "%d"/"%u" prefix analogous to "%l" for long but those do not exist. Fixes: 37348ef662a7 ("libutil: add util_file_read_i()/util_file_read_ui()") Acked-by: Sven Schnelle Reviewed-by: Jan Höppner Signed-off-by: Niklas Schnelle Signed-off-by: Steffen Eiden --- libutil/util_file.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/libutil/util_file.c b/libutil/util_file.c index b02d3036..296eb3ee 100644 --- a/libutil/util_file.c +++ b/libutil/util_file.c @@ -311,13 +311,13 @@ int util_file_read_i(int *val, int base, const char *fmt, ...) return -1; switch (base) { case 8: - count = sscanf(buf, "%do", val); + count = sscanf(buf, "%o", val); break; case 10: - count = sscanf(buf, "%dd", val); + count = sscanf(buf, "%d", val); break; case 16: - count = sscanf(buf, "%dx", val); + count = sscanf(buf, "%x", val); break; default: util_panic("Invalid base: %d\n", base); @@ -425,13 +425,13 @@ int util_file_read_ui(unsigned int *val, int base, const char *fmt, ...) return -1; switch (base) { case 8: - count = sscanf(buf, "%uo", val); + count = sscanf(buf, "%o", val); break; case 10: - count = sscanf(buf, "%uu", val); + count = sscanf(buf, "%u", val); break; case 16: - count = sscanf(buf, "%ux", val); + count = sscanf(buf, "%x", val); break; default: util_panic("Invalid base: %d\n", base);