summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/standard/formatted_print.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/ext/standard/formatted_print.c b/ext/standard/formatted_print.c
index 93f7acae6d..affc1d9999 100644
--- a/ext/standard/formatted_print.c
+++ b/ext/standard/formatted_print.c
@@ -159,10 +159,6 @@ php_sprintf_appendstring(char **buffer, int *pos, int *size, char *add,
npad=0;
}
- if (sign) {
- len--;
- }
-
PRINTF_DEBUG(("sprintf: appendstring(%x, %d, %d, \"%s\", %d, '%c', %d)\n",
*buffer, *pos, *size, add, min_width, padding, alignment));
if (max_width == 0) {
@@ -176,7 +172,7 @@ php_sprintf_appendstring(char **buffer, int *pos, int *size, char *add,
*buffer = erealloc(*buffer, *size);
}
if (alignment == ALIGN_RIGHT) {
- if (sign && padding=='0') { (*buffer)[(*pos)++] = '-'; add++; }
+ if (sign && padding=='0') { (*buffer)[(*pos)++] = '-'; add++; len--; }
while (npad-- > 0) {
(*buffer)[(*pos)++] = padding;
}