summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntony Dovgal <tony2001@php.net>2005-12-05 13:19:43 +0000
committerAntony Dovgal <tony2001@php.net>2005-12-05 13:19:43 +0000
commit58ed71c422d28863227283294e63d3e5fb5a381d (patch)
treeb37591ba08a4d1693a579b2eeca32ee10ec40450
parent4da3dd5ab65705b3df339b6f8b51d50cb7f3bb79 (diff)
downloadphp-git-58ed71c422d28863227283294e63d3e5fb5a381d.tar.gz
MF51:
fix #35536 (mysql_field_type() doesn't handle NEWDECIMAL) add also SET, ENUM, NEWDATE and GEOMETRY to the switch
-rw-r--r--NEWS1
-rw-r--r--ext/mysql/php_mysql.c17
2 files changed, 18 insertions, 0 deletions
diff --git a/NEWS b/NEWS
index df79350c38..752857e0f1 100644
--- a/NEWS
+++ b/NEWS
@@ -4,6 +4,7 @@ PHP NEWS
- Fixed an error in mysqli_fetch_fields (returned NULL instead of an
array when row number > field_count). (Georg)
- Renamed CachingRecursiveIterator to RecursiveCachingIterator. (Marcus)
+- FIxed bug #35536 (mysql_field_type() doesn't handle NEWDECIMAL). (Tony)
- Fixed bug #35437 (Segfault or Invalid Opcode 137/1/4). (Dmitry)
- Fixed bug #35399 (Since fix of bug #35273 SOAP decoding of
soapenc:base64binary fails). (Dmitry)
diff --git a/ext/mysql/php_mysql.c b/ext/mysql/php_mysql.c
index d7c159e7db..1e576bb128 100644
--- a/ext/mysql/php_mysql.c
+++ b/ext/mysql/php_mysql.c
@@ -2175,6 +2175,9 @@ static char *php_mysql_get_field_name(int field_type)
case FIELD_TYPE_FLOAT:
case FIELD_TYPE_DOUBLE:
case FIELD_TYPE_DECIMAL:
+#ifdef FIELD_TYPE_NEWDECIMAL
+ case FIELD_TYPE_NEWDECIMAL:
+#endif
return "real";
break;
case FIELD_TYPE_TIMESTAMP:
@@ -2186,11 +2189,25 @@ static char *php_mysql_get_field_name(int field_type)
break;
#endif
case FIELD_TYPE_DATE:
+#ifdef FIELD_TYPE_NEWDATE
+ case FIELD_TYPE_NEWDATE:
+#endif
return "date";
break;
case FIELD_TYPE_TIME:
return "time";
break;
+ case FIELD_TYPE_SET:
+ return "set";
+ break;
+ case FIELD_TYPE_ENUM:
+ return "enum";
+ break;
+#ifdef FIELD_TYPE_GEOMETRY
+ case FIELD_TYPE_GEOMETRY:
+ return "geometry";
+ break;
+#endif
case FIELD_TYPE_DATETIME:
return "datetime";
break;