2e6d6714eb049206db111387d29ec81433cdd1f2
braney
  Sun Oct 9 10:07:07 2011 -0700
don't reopen the trackHub's since they get opened when we check the status
diff --git src/hg/hgTracks/hgTracks.c src/hg/hgTracks/hgTracks.c
index 5851e92..4af4517 100644
--- src/hg/hgTracks/hgTracks.c
+++ src/hg/hgTracks/hgTracks.c
@@ -3427,33 +3427,34 @@
 }
 
 void loadTrackHubs(struct track **pTrackList, struct trackHub **pHubList)
 /* Load up stuff from data hubs and append to lists. */
 {
 struct hubConnectStatus *hub, *hubList =  hubConnectStatusListFromCart(cart);
 for (hub = hubList; hub != NULL; hub = hub->next)
     {
     if (isEmpty(hub->errorMessage))
 	{
 
         /* error catching in so it won't just abort  */
         struct errCatch *errCatch = errCatchNew();
         if (errCatchStart(errCatch))
 	    {
-	    struct trackDb *tdbList = trackHubAddTracks(hub->id, 
-		hub->hubUrl, database, pHubList);
+	    struct trackDb *tdbList = hubAddTracks(hub, database, pHubList);
 	    addTdbListToTrackList(tdbList, NULL, pTrackList);
+	    // we're going to free the hubConnectStatus list
+	    hub->trackHub = NULL; 
 	    }
         errCatchEnd(errCatch);
         if (errCatch->gotError)
 	    hubUpdateStatus( errCatch->message->string, hub);
 	else
 	    hubUpdateStatus(NULL, hub);
         errCatchFree(&errCatch);
 	}
     }
 hubConnectStatusFreeList(&hubList);
 }
 
 boolean restrictionEnzymesOk()
 /* Check to see if it's OK to do restriction enzymes. */
 {