e9c1e6b69045a4987f9b1107a5c7ecfcecd8fedf markd Fri Dec 24 09:33:48 2021 -0800 do not SEGV on an empty PSL file diff --git src/hg/utils/pslToBigPsl/pslToBigPsl.c src/hg/utils/pslToBigPsl/pslToBigPsl.c index 0bd85d0..671f58b 100644 --- src/hg/utils/pslToBigPsl/pslToBigPsl.c +++ src/hg/utils/pslToBigPsl/pslToBigPsl.c @@ -146,31 +146,31 @@ bigPsl.thickEnd = genomeCds.end; } } bigPslOutput(&bigPsl, fp, '\t', '\n'); } void pslToBigPsl(char *pslFile, char *bigPslOutput, char *fastaFile, char *cdsFile) /* pslToBigPsl - converts psl to bigPsl. */ { struct psl *psl = pslLoadAll(pslFile); struct hash *fastHash = NULL; struct hash *cdsHash = NULL; -if (fastaFile != NULL) +if ((fastaFile != NULL) && (psl != NULL)) { struct dnaSeq *seqs = pslIsProtein(psl) ?faReadAllPep(fastaFile) : faReadAllDna(fastaFile); fastHash = newHash(10); for(; seqs; seqs = seqs->next) hashAdd(fastHash, seqs->name, seqs); } if (cdsFile != NULL) { cdsHash = newHash(10); struct lineFile *lf = netLineFileOpen(cdsFile); char *row[2]; while (lineFileRow(lf, row)) { hashAdd(cdsHash, row[0], cloneString(row[1]));