From 33a4b35ec8199af03eb1b5b64e47c9e940f253b1 Mon Sep 17 00:00:00 2001 From: unknown Date: Thu, 2 Dec 2004 15:06:15 +0400 Subject: A fix (bug #6878: Crash with engine=memory). heap/hp_create.c: A fix (bug #6878: Crash with engine=memory). Record length should be >= sizeof(byte*). --- heap/hp_create.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'heap') diff --git a/heap/hp_create.c b/heap/hp_create.c index d1783118c0d..fdfe78a1e09 100644 --- a/heap/hp_create.c +++ b/heap/hp_create.c @@ -41,6 +41,13 @@ int heap_create(const char *name, uint keys, HP_KEYDEF *keydef, { HP_KEYDEF *keyinfo; DBUG_PRINT("info",("Initializing new table")); + + /* + We have to store sometimes byte* del_link in records, + so the record length should be at least sizeof(byte*) + */ + set_if_bigger(reclength, sizeof (byte*)); + for (i= key_segs= max_length= 0, keyinfo= keydef; i < keys; i++, keyinfo++) { bzero((char*) &keyinfo->block,sizeof(keyinfo->block)); -- cgit v1.2.1