73e706bbc55cb2eaa16c47e353f57103d3baaa8a markd Fri Feb 18 20:20:58 2022 -0800 detected missing baseColorUseSequence rather tha SEGV diff --git src/hg/hgTracks/cds.c src/hg/hgTracks/cds.c index 5b42945..61a2a05 100644 --- src/hg/hgTracks/cds.c +++ src/hg/hgTracks/cds.c @@ -942,31 +942,33 @@ if ((nwords != ArraySize(words)) || !sameString(words[0], "extFile")) errAbort("invalid %s track setting: %s", BASE_COLOR_USE_SEQUENCE, seqSource); return hDnaSeqGet(database, name, words[1], words[2]); } static struct dnaSeq *maybeGetSeqUpper(struct linkedFeatures *lf, char *tableName, struct track *tg) /* Look up the sequence in genbank tables (hGenBankGetMrna also searches * seq if it can't find it in GB tables) or user's blat sequence, * uppercase and return it if we find it, return NULL if we don't find it. */ { struct dnaSeq *mrnaSeq = NULL; char *name = getItemDataName(tg, lf->name); char *seqSource = trackDbSetting(tg->tdb, BASE_COLOR_USE_SEQUENCE); -if (sameString(tableName,"refGene") || sameString(tableName,"refSeqAli")) +if (seqSource == NULL) + errAbort("setting '%s' missing for track '%s'", BASE_COLOR_USE_SEQUENCE, tg->track); +else if (sameString(tableName,"refGene") || sameString(tableName,"refSeqAli")) mrnaSeq = hGenBankGetMrna(database, name, "refMrna"); else if (sameString(seqSource, "ss")) mrnaSeq = maybeGetUserSeq(name); #ifndef GBROWSE else if (sameString(seqSource, PCR_RESULT_TRACK_NAME)) mrnaSeq = maybeGetPcrResultSeq(lf); #endif /* GBROWSE */ else if (startsWith("extFile", seqSource)) mrnaSeq = maybeGetExtFileSeq(seqSource, name); else if (endsWith("ExtFile", seqSource)) mrnaSeq = maybeGetExtFileSeq(seqSource, name); else if (sameString("nameIsSequence", seqSource)) { mrnaSeq = newDnaSeq(cloneString(name), strlen(name), name); if (lf->orientation == -1)