diff options
Diffstat (limited to 'convert_int.c')
| -rw-r--r-- | convert_int.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/convert_int.c b/convert_int.c index d0ef77e..8bc0b1a 100644 --- a/convert_int.c +++ b/convert_int.c @@ -9,9 +9,9 @@ char *convert_int(va_list ap, t_pformat *pformat) long long int n; if (pformat->flags & FLAG_SHORT) - n = va_arg(ap, short); + n = va_arg(ap, int); else if (pformat->flags & FLAG_SHORT_SHORT) - n = va_arg(ap, signed char); + n = va_arg(ap, int); else if (pformat->flags & FLAG_LONG) n = va_arg(ap, long int); else if (pformat->flags & FLAG_LONG_LONG) @@ -20,16 +20,15 @@ char *convert_int(va_list ap, t_pformat *pformat) n = va_arg(ap, int); is_neg = n < 0; - char *str = ITOA_DEC(n); - if (is_neg) ft_strcpy(str, str + 1); str = handle_precision(pformat, str); if (pformat->flags & FLAG_ZERO_PADDING) { - if (is_neg || pformat->flags & FLAG_SIGNED) + if (is_neg || pformat->flags & FLAG_SIGNED || pformat->flags & FLAG_SPACE) pformat->min_width--; + /* pformat->min_width--; */ str = handle_padding(pformat, str); } if (is_neg) @@ -44,4 +43,3 @@ char *convert_int(va_list ap, t_pformat *pformat) str = handle_padding(pformat, str); return (str); } - |
