- is->files = (ISAMH_file) xmalloc (sizeof(*is->files)*is->no_files);
- if (writeflag)
- {
-#ifdef SKIPTHIS
- is->merge_buf = (char *) xmalloc (max_buf_size+256);
- memset (is->merge_buf, 0, max_buf_size+256);
-#else
- is->startblock = (char *) xmalloc (max_buf_size+256);
- memset (is->startblock, 0, max_buf_size+256);
- is->lastblock = (char *) xmalloc (max_buf_size+256);
- memset (is->lastblock, 0, max_buf_size+256);
- /* The spare 256 bytes should not be needed! */
-#endif
- }
- else
- is->startblock = is->lastblock = NULL;
+ assert (is->max_cat <=8 ); /* we have only 3 bits for it */
+
+ is->files = (ISAMD_file) xmalloc (sizeof(*is->files)*is->no_files);