9c6acf13bfc8763ce66e8b6a85f09a8edeae4733
braney
  Tue Apr 16 13:17:51 2013 -0700
fix some problems with assembly data hubs that Hiram found.  refs #8072
diff --git src/hg/hgc/hgc.c src/hg/hgc/hgc.c
index 6d9ef3b..617a6b4 100644
--- src/hg/hgc/hgc.c
+++ src/hg/hgc/hgc.c
@@ -1420,31 +1420,33 @@
 	    }
         }
     }
 }
 
 int extraFieldsPrint(struct trackDb *tdb,struct sqlResult *sr,char **fields,int fieldCount)
 // Any extra bed or bigBed fields (defined in as and occurring after N in bed N + types.
 // sr may be null for bigBeds.
 // Returns number of extra fields actually printed.
 {
 #ifdef EXTRA_FIELDS_SUPPORT
 struct extraField *extras = extraFieldsGet(database, tdb);
 if (extras == NULL)
     return 0;
 #else///ifndef EXTRA_FIELDS_SUPPORT
-struct sqlConnection *conn = hAllocConnTrack(database, tdb);
+struct sqlConnection *conn = NULL ;
+if (!trackHubDatabase(database))
+    conn = hAllocConnTrack(database, tdb);
 struct asObject *as = asForTdb(conn, tdb);
 hFreeConn(&conn);
 if (as == NULL)
     return 0;
 #endif///ndef EXTRA_FIELDS_SUPPORT
 
 // We are trying to print extra fields so we need to figure out how many fields to skip
 int start = 0;
 char *type = cloneString(tdb->type);
 char *word = nextWord(&type);
 if (word && (sameWord(word,"bed") || sameWord(word,"bigBed")))
     {
     if (NULL != (word = nextWord(&type)))
         start = sqlUnsigned(word);
     #ifndef EXTRA_FIELDS_SUPPORT