0c4b26c76ee09cadbe1a444016f2c41df33906f9 braney Thu Apr 9 15:48:53 2026 -0700 Fix color picker and quickLift issues from code review, refs #37329 Color picker: fix [object Object] bug by calling .toHexString() on spectrum result, use htmlColor.h instead of hand-rolled hex parsing, show "color override active" status when override is set. quickLift: remove redundant quickLiftResolveTable call in genericBedClick, move hFindSplitTable into else branch where it's needed. Co-Authored-By: Claude Opus 4.6 (1M context) diff --git src/hg/hgc/hgc.c src/hg/hgc/hgc.c index 24de476b771..e0ac4acdb2a 100644 --- src/hg/hgc/hgc.c +++ src/hg/hgc/hgc.c @@ -2056,51 +2056,40 @@ void genericBedClick(struct sqlConnection *conn, struct trackDb *tdb, char *item, int start, int bedSize) /* Handle click in generic BED track. */ { char table[HDB_MAX_TABLE_STRING]; boolean hasBin; struct bed *bed; char query[512]; struct sqlResult *sr; char **row; boolean firstTime = TRUE; char *liftDb = cloneString(trackDbSetting(tdb, "quickLiftDb")); -char *db = database; -char *sqlTable = tdb->table; -if (liftDb != NULL) - { - quickLiftResolveTable(tdb, trackHubSkipHubName(tdb->track), &sqlTable, &liftDb); - db = liftDb; - } - -if (!hFindSplitTable(db, seqName, tdb->table, table, sizeof table, &hasBin)) - errAbort("genericBedClick track %s not found", tdb->table); - if (liftDb) { struct bed *liftedBeds = quickLiftSqlLoadBeds(tdb, trackHubSkipHubName(tdb->track), liftDb, seqName, winStart, winEnd, NULL, (ItemLoader2)bedLoadN, bedSize, FALSE); bedPrintPos(liftedBeds, bedSize, tdb); - - //extraFieldsPrint(tdb,sr,row,sqlCountColumns(sr)); } else { + if (!hFindSplitTable(database, seqName, tdb->table, table, sizeof table, &hasBin)) + errAbort("genericBedClick track %s not found", tdb->table); if (bedSize <= 3) sqlSafef(query, sizeof query, "select * from %s where chrom = '%s' and chromStart = %d", table, seqName, start); else { struct hTableInfo *hti = hFindTableInfoWithConn(conn, seqName, tdb->table); if (hti && *hti->nameField && differentString("name", hti->nameField)) sqlSafef(query, sizeof query, "select * from %s where %s = '%s' and chrom = '%s' and chromStart = %d", table, hti->nameField, item, seqName, start); else sqlSafef(query, sizeof query, "select * from %s where name = '%s' and chrom = '%s' and chromStart = %d", table, item, seqName, start); } sr = sqlGetResult(conn, query); while ((row = sqlNextRow(sr)) != NULL) {