rename __simple_malloc.c to lite_malloc.c - yes this affects behavior!
[musl] / src / stdio / vfprintf.c
index 3512b4d..57878c0 100644 (file)
@@ -149,7 +149,7 @@ static void pop_arg(union arg *arg, int type, va_list *ap)
 
 static void out(FILE *f, const char *s, size_t l)
 {
-       __fwritex(s, l, f);
+       __fwritex((void *)s, l, f);
 }
 
 static void pad(FILE *f, char c, int w, int l, int fl)
@@ -434,7 +434,7 @@ static int printf_core(FILE *f, const char *fmt, va_list *ap, union arg *nl_arg,
                /* Update output count, end loop when fmt is exhausted */
                if (cnt >= 0) {
                        if (l > INT_MAX - cnt) {
-                               if (!ferror(f)) errno = EOVERFLOW;
+                               errno = EOVERFLOW;
                                cnt = -1;
                        } else cnt += l;
                }
@@ -526,13 +526,13 @@ static int printf_core(FILE *f, const char *fmt, va_list *ap, union arg *nl_arg,
                switch(t) {
                case 'n':
                        switch(ps) {
-                       case BARE: *(int *)arg.p = l; break;
-                       case LPRE: *(long *)arg.p = l; break;
-                       case LLPRE: *(long long *)arg.p = l; break;
-                       case HPRE: *(unsigned short *)arg.p = l; break;
-                       case HHPRE: *(unsigned char *)arg.p = l; break;
-                       case ZTPRE: *(size_t *)arg.p = l; break;
-                       case JPRE: *(uintmax_t *)arg.p = l; break;
+                       case BARE: *(int *)arg.p = cnt; break;
+                       case LPRE: *(long *)arg.p = cnt; break;
+                       case LLPRE: *(long long *)arg.p = cnt; break;
+                       case HPRE: *(unsigned short *)arg.p = cnt; break;
+                       case HHPRE: *(unsigned char *)arg.p = cnt; break;
+                       case ZTPRE: *(size_t *)arg.p = cnt; break;
+                       case JPRE: *(uintmax_t *)arg.p = cnt; break;
                        }
                        continue;
                case 'p':