summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXiang W <[email protected]>2023-07-10 00:02:28 +0800
committerAnup Patel <[email protected]>2023-07-12 10:02:06 +0530
commit3b6fcddcebf82bb58ac750a2ab4d6e22d7549ac9 (patch)
treeeedaa342f2203e94f58c45c629b8ec92f3b82d9b
parentc6ee5ae5a485335fa28a5f74811f900d8da9f87d (diff)
lib: sbi: Simplify prints
When doing width = width - strlen(string) in prints there is no need to consider the case that witdh may be less than 0. This is because the code to do filling needs to be executed under the condition that width > 0. Signed-off-by: Xiang W <[email protected]> Reviewed-by: Anup Patel <[email protected]>
-rw-r--r--lib/sbi/sbi_console.c21
1 files changed, 4 insertions, 17 deletions
diff --git a/lib/sbi/sbi_console.c b/lib/sbi/sbi_console.c
index 9e9f273f..adbe2e6b 100644
--- a/lib/sbi/sbi_console.c
+++ b/lib/sbi/sbi_console.c
@@ -151,24 +151,11 @@ static void printc(char **out, u32 *out_len, char ch)
static int prints(char **out, u32 *out_len, const char *string, int width,
int flags)
{
- int pc = 0;
- char padchar = ' ';
-
- if (width > 0) {
- int len = 0;
- const char *ptr;
- for (ptr = string; *ptr; ++ptr)
- ++len;
- if (len >= width)
- width = 0;
- else
- width -= len;
- if (flags & PAD_ZERO)
- padchar = '0';
- }
+ int pc = 0;
+ width -= sbi_strlen(string);
if (!(flags & PAD_RIGHT)) {
for (; width > 0; --width) {
- printc(out, out_len, padchar);
+ printc(out, out_len, flags & PAD_ZERO ? '0' : ' ');
++pc;
}
}
@@ -177,7 +164,7 @@ static int prints(char **out, u32 *out_len, const char *string, int width,
++pc;
}
for (; width > 0; --width) {
- printc(out, out_len, padchar);
+ printc(out, out_len, ' ');
++pc;
}