88a4d68261b55e8c277557b13c60740a95ace103
braney
  Mon Apr 14 15:03:38 2025 -0700
support knownGene track with quickLift

diff --git src/hg/hgGene/hgGene.c src/hg/hgGene/hgGene.c
index 8da0f36c212..39cc991868f 100644
--- src/hg/hgGene/hgGene.c
+++ src/hg/hgGene/hgGene.c
@@ -761,31 +761,37 @@
     if ((tdb == NULL) && sameString(tableName, "knownGene") && differentString(database, knownDb))
         {
         // if no table or knownGene has been given to us, and knownGene doesn't work, try the default gene track.
         tableName = hdbGetMasterGeneTrack(knownDb);
         tdb = hTrackDbForTrack(database, tableName);
         }
 
     if (tdb == NULL)
 	hUserAbort("Error: cannot open gene track %s.", tableName);
 
     globalTdb = tdb;
     char *externalDb = trackDbSetting(tdb, "externalDb");
     if (externalDb != NULL)
         conn = hAllocConn(externalDb);
     else
+        {
+        char *liftDb = trackDbSetting(tdb, "quickLiftDb");
+        if (liftDb)
+            database = liftDb;
         conn = hAllocConn(database);
+        }
+
     curGeneId = findGeneId(conn, geneName);
     getGenePosition(conn);
     curGenePred = getCurGenePred(conn);
     curGeneName = getGeneName(curGeneId, conn);
     spConn = hAllocConn(UNIPROT_DB_NAME);
     swissProtAcc = getSwissProtAcc(conn, spConn, curGeneId);
 
     if (isRgdGene(conn)) swissProtAcc=getRgdGeneUniProtAcc(curGeneId, conn);
     /* Check command variables, and do the ones that
      * don't want to put up the hot link bar etc. */
     if (cartVarExists(cart, hggDoGetMrnaSeq))
 	doGetMrnaSeq(conn, curGeneId, curGeneName);
     else if (cartVarExists(cart, hggDoWikiTrack))
 	doWikiTrack(conn);
     else if (cartVarExists(cart, hggDoGetProteinSeq))