diff options
author | Alexey Botchkov <holyfoot@askmonty.org> | 2013-03-06 01:45:25 +0400 |
---|---|---|
committer | Alexey Botchkov <holyfoot@askmonty.org> | 2013-03-06 01:45:25 +0400 |
commit | 7fb55ee807937ab78c95cf247747c5711449fc20 (patch) | |
tree | 4b8c1eba52e2628adab82a403bba7f434d298fca /mysql-test/t/gis.test | |
parent | ab1c228836b81659e859298096ef163dca8117b5 (diff) | |
download | mariadb-git-7fb55ee807937ab78c95cf247747c5711449fc20.tar.gz |
TODO-424 geometry query crashes server.
The bug was found by Alyssa Milburn.
If the number of points of a geometry feature read from
binary representation is greater than 0x10000000, then
the (uint32) (num_points * 16) will cut the higher byte,
which leads to various errors.
Fixed by additional check if (num_points > max_n_points).
Diffstat (limited to 'mysql-test/t/gis.test')
-rw-r--r-- | mysql-test/t/gis.test | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/mysql-test/t/gis.test b/mysql-test/t/gis.test index 188cba004df..190445e9c09 100644 --- a/mysql-test/t/gis.test +++ b/mysql-test/t/gis.test @@ -1367,4 +1367,11 @@ create table t1 (pt point); insert into t1 values(Geomfromtext('POLYGON((1 1, 2 2, 2 1, 1 1))')); drop table t1; +--echo # +--echo # TODO-424 geometry query crashes server +--echo # +select astext(0x0100000000030000000100000000000010); +select st_area(0x0100000000030000000100000000000010); +select astext(st_exteriorring(0x0100000000030000000100000000000010)); +select astext(st_centroid(0x0100000000030000000100000000000010)); --echo End of 5.5 tests |