summaryrefslogtreecommitdiff
path: root/libfmt
diff options
context:
space:
mode:
Diffstat (limited to 'libfmt')
-rw-r--r--libfmt/CMakeLists.txt2
-rw-r--r--libfmt/include/libfmt/fmt.h2
-rw-r--r--libfmt/libmisc.c6
3 files changed, 7 insertions, 3 deletions
diff --git a/libfmt/CMakeLists.txt b/libfmt/CMakeLists.txt
index 1b3a80f..f65d462 100644
--- a/libfmt/CMakeLists.txt
+++ b/libfmt/CMakeLists.txt
@@ -4,7 +4,7 @@
# SPDX-License-Identifier: AGPL-3.0-or-later
add_library(libfmt INTERFACE)
-target_include_directories(libfmt SYSTEM INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/include)
+target_include_directories(libfmt PUBLIC INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/include)
target_sources(libfmt INTERFACE
libmisc.c
libobj.c
diff --git a/libfmt/include/libfmt/fmt.h b/libfmt/include/libfmt/fmt.h
index 4dba82f..1b5bde1 100644
--- a/libfmt/include/libfmt/fmt.h
+++ b/libfmt/include/libfmt/fmt.h
@@ -18,6 +18,6 @@
*/
#define fmt_formatter_LO_IFACE \
LO_FUNC(void, format, struct fmt_state *)
-LO_INTERFACE(fmt_formatter)
+LO_INTERFACE(fmt_formatter);
#endif /* _LIBFMT_FMT_H_ */
diff --git a/libfmt/libmisc.c b/libfmt/libmisc.c
index 4586c30..803b281 100644
--- a/libfmt/libmisc.c
+++ b/libfmt/libmisc.c
@@ -5,7 +5,7 @@
*/
#include <stdarg.h> /* for va_list, va_start(), va_end() */
-#include <stdio.h> /* for vprintf(), putchar() */
+#include <stdio.h> /* for vprintf(), putchar(), fflush() */
#if LIB_PICO_STDIO
#include <pico/stdio.h> /* for stdio_putchar_raw() */
#endif
@@ -17,6 +17,8 @@
#if LIB_PICO_STDIO
static void libfmt_light_fct(char character, void *LM_UNUSED(arg)) {
+ if (character == '\n')
+ stdio_putchar_raw('\r');
stdio_putchar_raw(character);
}
#else
@@ -35,6 +37,7 @@ int __lm_printf(const char *format, ...) {
int ret = vprintf(format, va);
#else
int ret = fmt_vfctprintf(libfmt_libc_fct, NULL, format, va);
+ fflush(stdout);
#endif
va_end(va);
return ret;
@@ -53,6 +56,7 @@ int __lm_light_printf(const char *format, ...) {
stdio_flush();
#else
int ret = fmt_vfctprintf(libfmt_libc_fct, NULL, format, va);
+ fflush(stdout);
#endif
va_end(va);
return ret;