From 67997d330dae9c12eb640aa21f7e51b193890461 Mon Sep 17 00:00:00 2001 From: Mathias Krause Date: Tue, 3 Apr 2012 20:42:01 +0200 Subject: libpayload: minor cleanups Apply some const correctness to const/non-const strings in libc and libpci (what an ugly cast that was). Remove duplicated NULL test in printf_putstr(), already done in print_string() - reduces size of libpayload by a few bytes. Change-Id: I13f479df13e39d79cab291e9d99d153e1ef43eae Signed-off-by: Mathias Krause Reviewed-on: http://review.coreboot.org/849 Tested-by: build bot (Jenkins) Reviewed-by: Marc Jones --- payloads/libpayload/libc/printf.c | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) (limited to 'payloads/libpayload/libc/printf.c') diff --git a/payloads/libpayload/libc/printf.c b/payloads/libpayload/libc/printf.c index e3cf8bbb24..c9a6cca45a 100644 --- a/payloads/libpayload/libc/printf.c +++ b/payloads/libpayload/libc/printf.c @@ -85,8 +85,8 @@ typedef enum { PrintfQualifierPointer, } qualifier_t; -static char digits_small[] = "0123456789abcdef"; -static char digits_big[] = "0123456789ABCDEF"; +static const char digits_small[] = "0123456789abcdef"; +static const char digits_big[] = "0123456789ABCDEF"; /** * Print one or more characters without adding newline. @@ -109,18 +109,9 @@ static int printf_putnchars(const char *buf, size_t count, * @param ps Write function specification and support data. * @return Number of characters printed. */ -static int printf_putstr(const char *str, struct printf_spec *ps) +static inline int printf_putstr(const char *str, struct printf_spec *ps) { - size_t count; - - if (str == NULL) { - const char *nullstr = "(NULL)"; - return printf_putnchars(nullstr, strlen(nullstr), ps); - } - - count = strlen(str); - - return ps->write((void *)str, count, ps->data); + return printf_putnchars(str, strlen(str), ps); } /** @@ -228,7 +219,7 @@ static int print_string(char *s, int width, unsigned int precision, static int print_number(uint64_t num, int width, int precision, int base, uint64_t flags, struct printf_spec *ps) { - char *digits = digits_small; + const char *digits = digits_small; char d[PRINT_NUMBER_BUFFER_SIZE]; char *ptr = &d[PRINT_NUMBER_BUFFER_SIZE - 1]; int size = 0; /* Size of number with all prefixes and signs. */ -- cgit v1.2.3