src/hg/makeDb/hgTrackDb/hgTrackDb.c 1.58

1.58 2010/01/06 21:48:19 hiram
the track hash was not accumulating track names twice when necessary
Index: src/hg/makeDb/hgTrackDb/hgTrackDb.c
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/hg/makeDb/hgTrackDb/hgTrackDb.c,v
retrieving revision 1.57
retrieving revision 1.58
diff -b -B -U 4 -r1.57 -r1.58
--- src/hg/makeDb/hgTrackDb/hgTrackDb.c	6 Jan 2010 19:09:37 -0000	1.57
+++ src/hg/makeDb/hgTrackDb/hgTrackDb.c	6 Jan 2010 21:48:19 -0000	1.58
@@ -185,9 +185,9 @@
 struct trackDb *tdb;
 struct trackDb *relList = NULL;
 while ((tdb = slPopHead(&tdbList)) != NULL)
     {
-    char *rel = trackDbSettingClosestToHome(tdb, "release");
+    char *rel = trackDbSetting(tdb, "release");
     if (rel == NULL || sameString(rel, release))
 	{
 	verbose(3,"pruneRelease: adding '%s', release: '%s' =? '%s'\n",
 	    tdb->tableName, rel, release);
@@ -227,9 +227,15 @@
     {
     if (tdb->overrides != NULL)
         applyOverride(trackHash, tdb);
     else
-        hashStore(trackHash, tdb->tableName)->val = tdb;
+	{
+	struct hashEl *hel = hashLookup(trackHash, tdb->tableName);
+	if (hel != NULL)
+	    verbose(2,"addVersionRa: warning duplicate tableName: '%s'\n",
+		tdb->tableName);
+	hashAdd(trackHash, tdb->tableName, tdb);
+	}
     }
 }
 
 void updateBigTextField(struct sqlConnection *conn, char *table,