79a39d929c1a3d0e4f092895858cda65e2e3ebc9 angie Wed Sep 16 16:21:50 2015 -0700 Oops, was forgetting to use the right database for wiggle custom tracks (thanks Matt!). fixes #16037 diff --git src/hg/lib/hAnno.c src/hg/lib/hAnno.c index 0f56718..ae45ed9 100644 --- src/hg/lib/hAnno.c +++ src/hg/lib/hAnno.c @@ -261,31 +261,42 @@ boolean primaryIsVariants = (primaryAsObj != NULL && (asObjectsMatch(primaryAsObj, pgSnpAsObj()) || asObjectsMatch(primaryAsObj, vcfAsObj()))); char *bigDataUrl = trackDbSetting(tdb, "bigDataUrl"); if (bigDataUrl != NULL) { if (primaryIsVariants && sameString("bigGenePred", tdb->type)) { struct annoStreamer *streamer = annoStreamBigBedNew(bigDataUrl, assembly, maxOutRows); grator = annoGratorGpVarNew(streamer); } else grator = hAnnoGratorFromBigFileUrl(bigDataUrl, assembly, maxOutRows, overlapRule); } else if (startsWithWord("wig", tdb->type)) - grator = annoGrateWigDbNew(assembly->name, selTable, assembly, agwmAverage, maxOutRows); + { + char *dataDb = assembly->name; + char *dbTable = selTable; + if (isCustomTrack(selTable)) + { + dbTable = trackDbSetting(tdb, "dbTableName"); + if (dbTable != NULL) + // This is really a database table, not a bigDataUrl CT. + dataDb = CUSTOM_TRASH; + } + grator = annoGrateWigDbNew(dataDb, dbTable, assembly, agwmAverage, maxOutRows); + } else if (startsWithWord("bigWig", tdb->type)) { char *fileOrUrl = getBigDataFileName(assembly->name, tdb, tdb->table, chrom); grator = annoGrateBigWigNew(fileOrUrl, assembly, agwmAverage); } else { struct annoStreamer *streamer = hAnnoStreamerFromTrackDb(assembly, selTable, tdb, chrom, maxOutRows); if (primaryIsVariants && (asColumnNamesMatchFirstN(streamer->asObj, genePredAsObj(), 10) || asObjectsMatch(streamer->asObj, bigGenePredAsObj()))) grator = annoGratorGpVarNew(streamer); else grator = annoGratorNew(streamer);