Re: cvs: php4 /ext/standard formatted_print.c
| From: | Andi Gutmans | Date: | Sun, 16 Jun 2002 18:26:27 +0000 |
| Subject: | Re: cvs: php4 /ext/standard formatted_print.c | ||
| References: | 1 | Groups: | php.cvs |
| Request: | Send a blank email to php-cvs+get-12380@lists.php.net to get a copy of this message | ||
You broke the build. Where did CG(decimal_point) come from?
Andi
At 01:14 PM 6/16/2002 +0000, Hartmut Holzgraefe wrote:
hholzgra Sun Jun 16 09:14:21 2002 EDTModified files:/php4/ext/standard formatted_print.cLog: make sprinf() locale-aware (Bug# 12647) Index: php4/ext/standard/formatted_print.c diff -u php4/ext/standard/formatted_print.c:1.47 php4/ext/standard/formatted_print.c:1.48--- php4/ext/standard/formatted_print.c:1.47 Fri Mar 22 04:09:18 2002+++ php4/ext/standard/formatted_print.c Sun Jun 16 09:14:21 2002 @@ -16,7 +16,7 @@+----------------------------------------------------------------------+*/ -/* $Id: formatted_print.c,v 1.47 2002/03/22 09:09:18 derick Exp $ */ +/* $Id: formatted_print.c,v 1.48 2002/06/16 13:14:21 hholzgra Exp $ */#include <math.h> /* modf() */#include "php.h" @@ -274,6 +274,15 @@char *cvt; register int i = 0, j = 0; int sign, decpt;+#ifdef HAVE_LOCALECONV+ char decimal_point; + TSRMLS_FETCH();++ decimal_point = CG(decimal_point);+#else +#define decimal_point '.' +#endif +PRINTF_DEBUG(("sprintf: appenddouble(%x, %x, %x, %f, %d, '%c', %d, %c)\n", *buffer, pos, size, number, width, padding, alignment, fmt));@@ -308,7 +317,7 @@numbuf[i++] = '0'; if (precision > 0) { int k = precision; - numbuf[i++] = '.'; + numbuf[i++] = decimal_point; while ((decpt++ < 0) && k--) { numbuf[i++] = '0'; }@@ -317,12 +326,12 @@while (decpt-- > 0) numbuf[i++] = cvt[j++]; if (precision > 0) - numbuf[i++] = '.'; + numbuf[i++] = decimal_point; } } else { numbuf[i++] = cvt[j++]; if (precision > 0) - numbuf[i++] = '.'; + numbuf[i++] = decimal_point; }while (cvt[j]) {@@ -336,6 +345,9 @@} php_sprintf_appendstring(buffer, pos, size, numbuf, width, 0, padding, alignment, i, sign, 0);+#ifndef HAVE_LOCALECONV +#undef decimal_point +#endif } @@ -583,7 +595,7 @@case 'e': case 'f': - /* XXX not done */ + /* XXX not done */ /* ??? WTF? 'g' missing or what? (hartmut) */ convert_to_double_ex(args[argnum]); php_sprintf_appenddouble(&result, &outpos, &size,Z_DVAL_PP(args[argnum]), -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php