1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-01 03:47:19 +03:00

Fix for bug #804259 Second assertion in Gis_geometry_collection::init_from_opresult.

A polygon has no right to have holes that are actually points.
        So just skip them when we collect the result of an operation.

per-file comments:
  mysql-test/r/gis-precise.result
Fix for bug #804259 Second assertion in Gis_geometry_collection::init_from_opresult.
        test result updated.
  mysql-test/t/gis-precise.test
Fix for bug #804259 Second assertion in Gis_geometry_collection::init_from_opresult.
        test case added.
  sql/gcalc_tools.cc
Fix for bug #804259 Second assertion in Gis_geometry_collection::init_from_opresult.
        Skip the point in the result if it's the hole inside a polygon.
This commit is contained in:
Alexey Botchkov
2011-07-08 15:38:15 +05:00
parent e182ae27cd
commit 67e937095c
3 changed files with 31 additions and 0 deletions

View File

@ -319,6 +319,11 @@ int Gcalc_result_receiver::complete_shape()
{
if (cur_shape != Gcalc_function::shape_point)
{
if (cur_shape == Gcalc_function::shape_hole)
{
buffer.length(shape_pos);
return 0;
}
cur_shape= Gcalc_function::shape_point;
buffer.length(buffer.length()-4);
}