diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2020-08-11 15:48:58 +0300 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2020-08-11 15:58:16 +0300 |
commit | 31aef3ae99dff6b7154cf288b3dc508d367f19f8 (patch) | |
tree | 023c7584efc6a06809c925593bfe53842df7dc4f /sql/item_geofunc.cc | |
parent | 57d1a5fa8ed925b03d28aea3fab82de0823e68a8 (diff) | |
download | mariadb-git-31aef3ae99dff6b7154cf288b3dc508d367f19f8.tar.gz |
Fix GCC 10.2.0 -Og -Wmaybe-uninitialized
For some reason, GCC emits more -Wmaybe-uninitialized warnings
when using the flag -Og than when using -O2. Many of the warnings
look genuine.
Diffstat (limited to 'sql/item_geofunc.cc')
-rw-r--r-- | sql/item_geofunc.cc | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/sql/item_geofunc.cc b/sql/item_geofunc.cc index 645a3668ed8..0db8d7075f6 100644 --- a/sql/item_geofunc.cc +++ b/sql/item_geofunc.cc @@ -2389,12 +2389,15 @@ double Item_func_distance::val_real() MBR mbr1, mbr2; const char *c_end; - - if ((null_value= (args[0]->null_value || args[1]->null_value || - !(g1= Geometry::construct(&buffer1, res1->ptr(), res1->length())) || - !(g2= Geometry::construct(&buffer2, res2->ptr(), res2->length())) || - g1->get_mbr(&mbr1, &c_end) || - g2->get_mbr(&mbr2, &c_end)))) + if (args[0]->null_value || args[1]->null_value) + goto mem_error; + g1= Geometry::construct(&buffer1, res1->ptr(), res1->length()); + if (!g1) + goto mem_error; + g2= Geometry::construct(&buffer2, res2->ptr(), res2->length()); + if (!g2) + goto mem_error; + if (g1->get_mbr(&mbr1, &c_end) || g2->get_mbr(&mbr2, &c_end)) goto mem_error; mbr1.add_mbr(&mbr2); @@ -2543,7 +2546,7 @@ String *Item_func_pointonsurface::val_str(String *str) Geometry *g; MBR mbr; const char *c_end; - double UNINIT_VAR(px), UNINIT_VAR(py), x0, y0; + double UNINIT_VAR(px), UNINIT_VAR(py), x0, UNINIT_VAR(y0); String *result= 0; const Gcalc_scan_iterator::point *pprev= NULL; uint32 srid; |