summaryrefslogtreecommitdiff
path: root/sql/gcalc_tools.cc
diff options
context:
space:
mode:
authorAlexey Botchkov <holyfoot@askmonty.org>2011-09-23 15:36:56 +0500
committerAlexey Botchkov <holyfoot@askmonty.org>2011-09-23 15:36:56 +0500
commit5b83aee35dffff0de4758a2a595624a18bec2b3e (patch)
tree293ed031bf8f31484ff94394ed5a5938079be21a /sql/gcalc_tools.cc
parentdca6ff48c1a26f8eab911f4ad246f56be5005fd7 (diff)
downloadmariadb-git-5b83aee35dffff0de4758a2a595624a18bec2b3e.tar.gz
bug #857050 ST_WITHIN returns wrong result with MULTIPOINT and POLYGON
actually only testcase added as the bug was fixed already. modified: mysql-test/r/gis-precise.result bug #857050 ST_WITHIN returns wrong result with MULTIPOINT and POLYGON test result updated. mysql-test/t/gis-precise.test bug #857050 ST_WITHIN returns wrong result with MULTIPOINT and POLYGON test case added. sql/gcalc_tools.cc superfluous variable removed.
Diffstat (limited to 'sql/gcalc_tools.cc')
-rw-r--r--sql/gcalc_tools.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/sql/gcalc_tools.cc b/sql/gcalc_tools.cc
index 4c56e5c58bd..69071c16ee8 100644
--- a/sql/gcalc_tools.cc
+++ b/sql/gcalc_tools.cc
@@ -766,7 +766,9 @@ int ca_counter= 0;
int Gcalc_operation_reducer::count_slice(Gcalc_scan_iterator *si)
{
Gcalc_point_iterator pi(si);
+#ifdef TMP_BLOCK
const Gcalc_heap::Info *event_point= NULL;
+#endif /*TMP_BLOCK*/
int prev_state= 0;
int sav_prev_state;
active_thread *prev_range= NULL;
@@ -858,8 +860,10 @@ int Gcalc_operation_reducer::count_slice(Gcalc_scan_iterator *si)
{
active_thread *cur_t= *cur_t_hook;
+#ifdef TMP_BLOCK
if (!event_point && events->event != scev_intersection)
event_point= events->pi;
+#endif /*TMP_BLOCK*/
if (events->event == scev_single_point)
continue;