From: Laszlo Kajan <lkajan@rostlab.org>
Subject: index pointer used before checking for NULL
Forwarded: yes

--- a/src/ffindex.c
+++ b/src/ffindex.c
@@ -223,13 +223,14 @@
     num_max_entries = FFINDEX_MAX_INDEX_ENTRIES_DEFAULT;
   size_t nbytes = sizeof(ffindex_index_t) + (sizeof(ffindex_entry_t) * num_max_entries);
   ffindex_index_t *index = (ffindex_index_t *)malloc(nbytes);
-  index->num_max_entries = num_max_entries;
   if(index == NULL)
   {
-    fferror_print(__FILE__, __LINE__, __func__, "malloc failed");
+    char buf[2048]; snprintf( buf, 2048, "malloc failed to allocate %ld bytes", nbytes );
+    fferror_print(__FILE__, __LINE__, __func__, buf );
     return NULL;
   }
 
+  index->num_max_entries = num_max_entries;
   index->file = index_file;
   index->index_data = ffindex_mmap_data(index_file, &(index->index_data_size));
   if(index->index_data_size == 0)
