summaryrefslogtreecommitdiff
path: root/sql/item_geofunc.h
diff options
context:
space:
mode:
authorRamil Kalimullin <ramil@mysql.com>2010-09-09 13:40:17 +0400
committerRamil Kalimullin <ramil@mysql.com>2010-09-09 13:40:17 +0400
commit762c7ca4620be17ed7a4006954926b0e8aa8666b (patch)
treeb8946caef11286f7734f3d9b6909090370abfbf1 /sql/item_geofunc.h
parent0782e25aa2cbb260f5fe965511e1f3736add83c6 (diff)
downloadmariadb-git-762c7ca4620be17ed7a4006954926b0e8aa8666b.tar.gz
Fix for bug#56679: gis.test: valgrind error
Item_func_spatial_collection::fix_length_and_dec() changed to use argument's print() method to print the ER_ILLEGAL_VALUE_FOR_TYPE error. mysql-test/r/gis.result: Fix for bug#56679: gis.test: valgrind error - test result adjusted. sql/item_geofunc.h: Fix for bug#56679: gis.test: valgrind error - use argument's print() method instead of improper val_str() call in the Item_func_spatial_collection::fix_length_and_dec(), as it's applicable only for constant items.
Diffstat (limited to 'sql/item_geofunc.h')
-rw-r--r--sql/item_geofunc.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/sql/item_geofunc.h b/sql/item_geofunc.h
index 070c2cd26fc..b3ecbc39933 100644
--- a/sql/item_geofunc.h
+++ b/sql/item_geofunc.h
@@ -177,13 +177,15 @@ public:
String *val_str(String *);
void fix_length_and_dec()
{
- for( unsigned int i=0; i<arg_count; ++i)
+ for (unsigned int i= 0; i < arg_count; ++i)
{
- if( args[i]->fixed && args[i]->field_type() != MYSQL_TYPE_GEOMETRY)
+ if (args[i]->fixed && args[i]->field_type() != MYSQL_TYPE_GEOMETRY)
{
String str;
- args[i]->val_str(&str);
- my_error(ER_ILLEGAL_VALUE_FOR_TYPE,MYF(0),"non geometric",str.c_ptr());
+ args[i]->print(&str, QT_ORDINARY);
+ str.append('\0');
+ my_error(ER_ILLEGAL_VALUE_FOR_TYPE, MYF(0), "non geometric",
+ str.ptr());
}
}
}