pajoye Wed Aug 23 20:21:35 2006 UTC
Modified files:
/php-src/ext/gd/libgd gdft.c
Log:
- add support for entities in hexadecimal format, like © can
be passed as © or ©
http://cvs.php.net/viewvc.cgi/php-src/ext/gd/libgd/gdft.c?r1=1.36&r2=1.37&diff_format=u
Index: php-src/ext/gd/libgd/gdft.c
diff -u php-src/ext/gd/libgd/gdft.c:1.36 php-src/ext/gd/libgd/gdft.c:1.37
--- php-src/ext/gd/libgd/gdft.c:1.36 Sat Nov 20 13:09:45 2004
+++ php-src/ext/gd/libgd/gdft.c Wed Aug 23 20:21:34 2006
@@ -207,12 +207,28 @@
byte = *((unsigned char *) (str + 1));
if (byte == '#') {
- for (i = 2; i < 8; i++) {
- byte = *((unsigned char *) (str + i));
- if (byte >= '0' && byte <= '9') {
- n = (n * 10) + (byte - '0');
- } else {
- break;
+ byte = *((unsigned char *) (str + 2));
+ if (byte == 'x' || byte == 'X') {
+ for (i = 3; i < 8; i++) {
+ byte = *((unsigned char *) (str + i));
+ if (byte >= 'A' && byte <= 'F')
+ byte = byte - 'A' + 10;
+ else if (byte >= 'a' && byte <= 'f')
+ byte = byte - 'a' + 10;
+ else if (byte >= '0' && byte <= '9')
+ byte = byte - '0';
+ else
+ break;
+ n = (n * 16) + byte;
+ }
+ } else {
+ for (i = 2; i < 8; i++) {
+ byte = *((unsigned char *) (str + i));
+ if (byte >= '0' && byte <= '9') {
+ n = (n * 10) + (byte - '0');
+ } else {
+ break;
+ }
}
}
if (byte == ';') {
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php