浏览代码

Fix a buglet regarding floating point output for ?nprintf functions.

Manuel Novoa III 24 年之前
父节点
当前提交
57e9510d98
共有 1 个文件被更改,包括 2 次插入1 次删除
  1. 2 1
      libc/stdio/printf.c

+ 2 - 1
libc/stdio/printf.c

@@ -558,7 +558,8 @@ int vfnprintf(FILE * op, size_t max_size, const char *fmt, va_list ap)
 					if (preci < 0) {
 						preci = 6;
 					}
-					cnt += __dtostr(op, max_size,
+					cnt += __dtostr(op, 
+									(max_size > cnt ? max_size - cnt : 0),
 									(long double) ((lval > 1)
 									 ? va_arg(ap, long double)
 									 : va_arg(ap, double)),