summaryrefslogtreecommitdiff
path: root/kernel/src/libk/serial_stdio.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/src/libk/serial_stdio.c')
-rw-r--r--kernel/src/libk/serial_stdio.c36
1 files changed, 21 insertions, 15 deletions
diff --git a/kernel/src/libk/serial_stdio.c b/kernel/src/libk/serial_stdio.c
index 8c0c527..002eb9e 100644
--- a/kernel/src/libk/serial_stdio.c
+++ b/kernel/src/libk/serial_stdio.c
@@ -12,7 +12,7 @@ void serial_print_char(char c)
write_serial(c);
}
-void serial_print_string(const char* s)
+void serial_print_string(const char *s)
{
for (size_t i = 0; i < strlen(s); i++) {
serial_print_char(s[i]);
@@ -47,24 +47,30 @@ void serial_vprintf(const char *s, va_list list)
{
lock(serial_stdio_lock);
size_t count = 0;
- for(size_t i = 0; i < strlen(s); i++) if(s[i] == '%') count++;
+ for (size_t i = 0; i < strlen(s); i++)
+ if (s[i] == '%')
+ count++;
- for(size_t i = 0; i < strlen(s); i++)
- {
- if(s[i] == '%')
- {
+ for (size_t i = 0; i < strlen(s); i++) {
+ if (s[i] == '%') {
i++;
- if(s[i] == 'c') serial_print_char((char)va_arg(list, uint32_t));
- else if(s[i] == 's') serial_print_string(va_arg(list, char*));
- else if(s[i] == 'd') serial_print_int((uint64_t)va_arg(list, uint64_t));
- else if(s[i] == 'x') serial_print_hex((uint64_t)va_arg(list, uint64_t));
- else
- {
- serial_print_string("Wrong format using printf\n");
+ if (s[i] == 'c')
+ serial_print_char((char)va_arg(list, uint32_t));
+ else if (s[i] == 's')
+ serial_print_string(va_arg(list, char *));
+ else if (s[i] == 'd')
+ serial_print_int(
+ (uint64_t)va_arg(list, uint64_t));
+ else if (s[i] == 'x')
+ serial_print_hex(
+ (uint64_t)va_arg(list, uint64_t));
+ else {
+ serial_print_string(
+ "Wrong format using printf\n");
return;
}
- }
- else serial_print_char(s[i]);
+ } else
+ serial_print_char(s[i]);
}
unlock(serial_stdio_lock);
}