mirror of
https://github.com/MariaDB/server.git
synced 2025-08-05 13:16:09 +03:00
Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.r18.ru:/usr/home/ram/work/mysql-4.1.sp sql/item_strfunc.cc: Auto merged
This commit is contained in:
@@ -2624,20 +2624,21 @@ String *Item_func_geometry_type::val_str(String *str)
|
|||||||
|
|
||||||
String *Item_func_envelope::val_str(String *str)
|
String *Item_func_envelope::val_str(String *str)
|
||||||
{
|
{
|
||||||
String *res= args[0]->val_str(str);
|
String arg_val;
|
||||||
|
String *swkb= args[0]->val_str(&arg_val);
|
||||||
Geometry geom;
|
Geometry geom;
|
||||||
|
|
||||||
if ((null_value= args[0]->null_value ||
|
if ((null_value= args[0]->null_value ||
|
||||||
geom.create_from_wkb(res->ptr() + SRID_SIZE,
|
geom.create_from_wkb(swkb->ptr() + SRID_SIZE,
|
||||||
res->length() - SRID_SIZE)))
|
swkb->length() - SRID_SIZE)))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
uint32 srid= uint4korr(res->ptr());
|
uint32 srid= uint4korr(swkb->ptr());
|
||||||
if (res->reserve(SRID_SIZE, 512))
|
str->length(0);
|
||||||
|
if (str->reserve(SRID_SIZE, 512))
|
||||||
return 0;
|
return 0;
|
||||||
res->length(0);
|
str->q_append(srid);
|
||||||
res->q_append(srid);
|
return (null_value= geom.envelope(str)) ? 0 : str;
|
||||||
return (null_value= geom.envelope(res)) ? 0 : res;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user