a8e96a57b3485f554666c687262fcd295c0e7a6d
angie
  Mon Feb 12 09:27:22 2018 -0800
Forgot to check for NULL.

diff --git src/hg/lib/annoStreamDbPslPlus.c src/hg/lib/annoStreamDbPslPlus.c
index 4e1b9b6..0516169 100644
--- src/hg/lib/annoStreamDbPslPlus.c
+++ src/hg/lib/annoStreamDbPslPlus.c
@@ -213,30 +213,31 @@
     pslTable = "refSeqAli";
     configJson = refSeqAliConfigJson;
     }
 else if (startsWith("ncbiRefSeq", gpTable))
     {
     pslTable = "ncbiRefSeqPsl";
     struct dyString *dy = dyStringCreate(ncbiRefSeqConfigJsonFormat, aa->name, gpTable);
     configJson = dyStringCannibalize(&dy);
     }
 else
     errAbort("annoStreamDbPslPlusNew: unrecognized table \"%s\"", gpTable);
 struct annoStreamDbPslPlus *self;
 AllocVar(self);
 // Get internal streamer for joining PSL with other tables.
 struct jsonElement *config = jsonParse(configJson);
+if (extraConfig)
     jsonObjectMerge(config, extraConfig);
 self->mySource = annoStreamDbNew(aa->name, pslTable, aa, maxOutRows, config);
 struct asObject *asObj = annoStreamDbPslPlusAsObj();
 if (extraConfig)
     asObjAppendExtraColumns(asObj, self->mySource->asObj);
 // Set up external streamer interface
 struct annoStreamer *streamer = &(self->streamer);
 annoStreamerInit(streamer, aa, asObj, pslTable);
 streamer->rowType = arWords;
 self->gpTable = cloneString(gpTable);
 // Override methods that need to pass through to internal source:
 streamer->setRegion = asdppSetRegion;
 streamer->nextRow = asdppNextRow;
 streamer->close = asdppClose;
 return (struct annoStreamer *)self;