]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
sandbox: replace putchar(ch) by fputc(ch, stdout)
authorHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Sat, 20 Nov 2021 12:28:33 +0000 (13:28 +0100)
committerSimon Glass <sjg@chromium.org>
Thu, 2 Dec 2021 16:15:43 +0000 (09:15 -0700)
When compiled with -Og for better debugability u-boot ends up in a stack
overflow using

    gcc (Ubuntu 11.2.0-7ubuntu2) 11.2.0
    GNU Binutils for Ubuntu 2.37

putchar(ch) is defined as a macro which ends up calling U-Boot's putc()
implementation instead of the glibc one, which calls os_putc() ...

Let's use fputc(ch, stdout) instead as fputc() does not exist in U-Boot.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
arch/sandbox/cpu/os.c

index 873f85ac3bec9317250f272bd679a30e8f622ddc..6837bfceaf6c79c35ced07916537fde779238b7e 100644 (file)
@@ -638,7 +638,7 @@ int os_get_filesize(const char *fname, loff_t *size)
 
 void os_putc(int ch)
 {
-       putchar(ch);
+       fputc(ch, stdout);
 }
 
 void os_puts(const char *str)