b8df1e3542f8439bacedf288bac233de5ff793d0
braney
  Thu Feb 21 14:53:03 2013 -0800
I added an errAbort for the two cases that assume the hash is initialized  (trackHubAssemblyField and trackHubDbDbFromAssemblyDb) (from code review #10237)
diff --git src/hg/lib/trackHub.c src/hg/lib/trackHub.c
index 4d60d15..9201664 100644
--- src/hg/lib/trackHub.c
+++ src/hg/lib/trackHub.c
@@ -89,58 +89,62 @@
 
 boolean trackHubDatabase(char *database)
 /* Is this an assembly from an Assembly Data hub? */
 {
 if (hubAssemblyHash == NULL)
     return FALSE;
 struct hashEl *hel = hashLookup(hubAssemblyHash, database);
 if (hel == NULL)
     return FALSE;
 return TRUE;
 }
 
 char *trackHubAssemblyField(char *database, char *field)
 /* Get data field from a assembly data hub. */
 {
+if (hubAssemblyHash == NULL)
+    errAbort("requesting hub assembly field with no hubs loaded");
 struct hashEl *hel = hashLookup(hubAssemblyHash, database);
 if (hel == NULL)
     return NULL;
 
 struct trackHubGenome *genome = hel->val;
 char *ret = hashFindVal(genome->settingsHash, field);
 
 return cloneString(ret);
 }
 
 static struct dbDb *makeDbDbFromAssemblyGenome(struct trackHubGenome *hubGenome)
 /* Make a dbdb struture from a single assembly hub database. */
 {
 struct dbDb *db;
 
 AllocVar(db);
 db->genome = cloneString(hubGenome->organism);
 db->organism = cloneString(hubGenome->organism);
 db->name = cloneString(hubGenome->name);
 db->active = TRUE;
 db->description = cloneString(hubGenome->description);
 
 return db;
 }
 
 struct dbDb *trackHubDbDbFromAssemblyDb(char *database)
 /* Return a dbDb structure for just this database. */
 {
+if (hubAssemblyHash == NULL)
+    errAbort("requesting hub assembly dbDb with no hubs loaded");
 struct hashEl *hel = hashLookup(hubAssemblyHash, database);
 if (hel == NULL)
     return NULL;
 
 struct trackHubGenome *genome = hel->val;
 return makeDbDbFromAssemblyGenome(genome);
 }
 
 struct slPair *trackHubGetCladeLabels()
 /* Get a list of labels describing the loaded assembly data hubs. */
 {
 if (globalAssemblyHubList == NULL)
     return NULL;
 
 struct slPair *clade, *cladeList = NULL;