summaryrefslogtreecommitdiff
path: root/myisam/sp_key.c
diff options
context:
space:
mode:
authorhf@deer.(none) <>2004-12-10 16:06:49 +0400
committerhf@deer.(none) <>2004-12-10 16:06:49 +0400
commit192715dbbb009f8e636c74907f7a8a2678bab63b (patch)
treefac5d0ecf6bba7008a8028e86bee3f9cee4960a1 /myisam/sp_key.c
parent4915d196eb9d20cb627603a7ca4a83bf8637d0ba (diff)
downloadmariadb-git-192715dbbb009f8e636c74907f7a8a2678bab63b.tar.gz
Fix for bug #6516 (Server crash loading spatial data)
(after discussion with SerG)
Diffstat (limited to 'myisam/sp_key.c')
-rw-r--r--myisam/sp_key.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/myisam/sp_key.c b/myisam/sp_key.c
index 0e424a9e193..b61e8094cde 100644
--- a/myisam/sp_key.c
+++ b/myisam/sp_key.c
@@ -50,6 +50,11 @@ uint sp_make_key(register MI_INFO *info, uint keynr, uchar *key,
dlen = _mi_calc_blob_length(keyseg->bit_start, pos);
memcpy_fixed(&dptr, pos + keyseg->bit_start, sizeof(char*));
+ if (!dptr)
+ {
+ my_errno= HA_ERR_NULL_IN_SPATIAL;
+ return 0;
+ }
sp_mbr_from_wkb(dptr + 4, dlen - 4, SPDIMS, mbr); /* SRID */
for (i = 0, keyseg = keyinfo->seg; keyseg->type; keyseg++, i++)