diff options
author | hf@deer.(none) <> | 2004-05-25 15:06:32 +0500 |
---|---|---|
committer | hf@deer.(none) <> | 2004-05-25 15:06:32 +0500 |
commit | f200b0fbf0594bc3f75dd93795722c499f1a0afb (patch) | |
tree | 1bd30ca9cbdba7bdacc7453d22bf1f95af138fd0 /sql/spatial.cc | |
parent | 216c3a3b5f01d46240d0175821fe672e8558484c (diff) | |
download | mariadb-git-f200b0fbf0594bc3f75dd93795722c499f1a0afb.tar.gz |
WL#1562 (Improving spatial code)
A set of changes improving our RTree indexes and fixed few bugs
found during the tests
Diffstat (limited to 'sql/spatial.cc')
-rw-r--r-- | sql/spatial.cc | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sql/spatial.cc b/sql/spatial.cc index ab415d9af10..f26e7dc3e83 100644 --- a/sql/spatial.cc +++ b/sql/spatial.cc @@ -395,7 +395,7 @@ bool Gis_line_string::init_from_wkt(Gis_read_stream *trs, String *wkb) if (trs->skip_char(',')) // Didn't find ',' break; } - if (n_points < 2) + if (n_points < 1) { trs->set_error_msg("Too few points in LINESTRING"); return 1; @@ -484,6 +484,11 @@ int Gis_line_string::is_closed(int *closed) const if (no_data(data, 4)) return 1; n_points= uint4korr(data); + if (n_points == 1) + { + *closed=1; + return 0; + } data+= 4; if (no_data(data, SIZEOF_STORED_DOUBLE * 2 * n_points)) return 1; |