Browse Source

fixed rt_kprintf %s precision print error.

geniusgogo 4 years ago
parent
commit
ac2c734583
1 changed files with 1 additions and 1 deletions
  1. 1 1
      src/kservice.c

+ 1 - 1
src/kservice.c

@@ -922,7 +922,7 @@ rt_int32_t rt_vsnprintf(char       *buf,
             s = va_arg(args, char *);
             s = va_arg(args, char *);
             if (!s) s = "(NULL)";
             if (!s) s = "(NULL)";
 
 
-            len = rt_strlen(s);
+            for (len = 0; (len != field_width) && (s[len] != '\0'); len++);
 #ifdef RT_PRINTF_PRECISION
 #ifdef RT_PRINTF_PRECISION
             if (precision > 0 && len > precision) len = precision;
             if (precision > 0 && len > precision) len = precision;
 #endif
 #endif