diff options
author | unknown <hf@deer.(none)> | 2005-04-29 20:23:02 +0500 |
---|---|---|
committer | unknown <hf@deer.(none)> | 2005-04-29 20:23:02 +0500 |
commit | 1df25ccdac1855e82fc04b2055c193864f8b33b9 (patch) | |
tree | a1ccc4cac7fa2e450dd06586cd94df5312459b26 /sql/item_geofunc.cc | |
parent | cfd042108a8d4a38422d965b2a1d1fc8f32f7330 (diff) | |
download | mariadb-git-1df25ccdac1855e82fc04b2055c193864f8b33b9.tar.gz |
Fix for #6553 and #8776 (no errors on bad spatial data)
mysql-test/r/gis-rtree.result:
test result fixed
mysql-test/r/gis.result:
test result fixed
mysql-test/t/gis-rtree.test:
test case fixed
mysql-test/t/gis.test:
test case added
sql/field.cc:
error messages launched now when we try to put bad spatial
data in the GEOMETRY field
sql/field.h:
interface fixed
sql/item_geofunc.cc:
bad_data sign now instead of NULL now returned from
Item_geometry_from_text::val_str
sql/share/errmsg.txt:
error message added
sql/spatial.cc:
bad_geometry data instance
sql/spatial.h:
bad_geometry_data declaration
sql/sql_base.cc:
messages now created in store_* function
Diffstat (limited to 'sql/item_geofunc.cc')
-rw-r--r-- | sql/item_geofunc.cc | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/sql/item_geofunc.cc b/sql/item_geofunc.cc index 1a8cb50081b..b9f2ec8a6ca 100644 --- a/sql/item_geofunc.cc +++ b/sql/item_geofunc.cc @@ -55,8 +55,11 @@ String *Item_func_geometry_from_text::val_str(String *str) return 0; str->length(0); str->q_append(srid); - if ((null_value= !Geometry::create_from_wkt(&buffer, &trs, str, 0))) - return 0; + if (!Geometry::create_from_wkt(&buffer, &trs, str, 0)) + /* We shouldn't return NULL here as NULL is a legal spatial object */ + /* Geometry::bad_spatial_data will produce error message beeing stored*/ + /* in GEOMETRY field */ + return &Geometry::bad_geometry_data; return str; } |