86748c94956144a80b6c9daa78adb5bb280f58d4
braney
  Tue Jun 10 17:20:58 2025 -0700
ignore psl base change display settings for protein psl since they are
not supported

diff --git src/hg/hgTracks/bigBedTrack.c src/hg/hgTracks/bigBedTrack.c
index 97a741c2431..7d485e2e5e2 100644
--- src/hg/hgTracks/bigBedTrack.c
+++ src/hg/hgTracks/bigBedTrack.c
@@ -677,30 +677,38 @@
 for (bb = bbList; bb != NULL; bb = bb->next)
     {
     struct linkedFeatures *lf = NULL;
     char *bedRow[bbi->fieldCount];
     if (sameString(track->tdb->type, "bigPsl"))
         {
         // fill out bedRow to support mouseOver pattern replacements
         char startBuf[16], endBuf[16];
         bigBedIntervalToRow(bb, chromName, startBuf, endBuf, bedRow, ArraySize(bedRow));
         char *seq, *cds;
         struct psl *psl = pslFromBigPsl(chromName, bb, seqTypeField,  &seq, &cds);
         int sizeMul =  pslIsProtein(psl) ? 3 : 1;
         boolean isXeno = 0;  // just affects grayIx
         boolean nameGetsPos = FALSE; // we want the name to stay the name
 
+        if (sizeMul == 3)
+            {
+            // these tags are not currently supported by the drawing engine for protein psl
+            hashRemove(track->tdb->settingsHash, "showDiffBasesAllScales");
+            hashRemove(track->tdb->settingsHash, "baseColorUseSequence");
+            hashRemove(track->tdb->settingsHash, "baseColorDefault");
+            }
+
         lf = lfFromPslx(psl, sizeMul, isXeno, nameGetsPos, track);
         lf->original = psl;
         if ((seq != NULL) && (lf->orientation == -1))
             reverseComplement(seq, strlen(seq));
         lf->extra = seq;
         lf->cds = cds;
         lf->useItemRgb = useItemRgb;
         if ( lf->useItemRgb )
             lf->filterColor = itemRgbColumn(bedRow[8]);
         }
     else if (sameString(tdb->type, "bigDbSnp"))
         {
         // bigDbSnp does not have a score field, but I want to compute the freqSourceIx from
         // trackDb and settings one time instead of for each item, so I'm overloading scoreMin.
         int freqSourceIx = scoreMin;