f043c937a34269023b71d7a89b7ff25103e6c125 angie Mon Feb 24 15:35:59 2020 -0800 Check user custom track group setting instead of allowing any string. Don't silently drop warnings. refs #25003, #25016 diff --git src/hg/lib/customTrack.c src/hg/lib/customTrack.c index 6b194f1..cc5b50b 100644 --- src/hg/lib/customTrack.c +++ src/hg/lib/customTrack.c @@ -854,30 +854,32 @@ if (fileName && fileName[0]) { struct dyString *ds = dyStringNew(0); dyStringPrintf(ds, "File '%s' - %s", fileName, msg); err = dyStringCannibalize(&ds); } else err = msg; } else { err = customTrackUnavailableErrsFromList(newCts); if (err) newCts = NULL; /* do not save the unhappy remote cts*/ + if (isNotEmpty(errCatch->message->string)) + err = catTwoStrings(emptyForNull(err), errCatch->message->string); } errCatchFree(&errCatch); } /* the 'ctfile_$db' variable contains a filename from the trash directory. * The file is created by hgCustom or hgTables after the custom track list * is created. The filename may be reused. The file contents are * custom tracks in "internal format" that have already been parsed */ char *ctFileName = NULL; struct customTrack *ctList = NULL, *replacedCts = NULL; struct customTrack *nextCt = NULL; boolean removedCt = FALSE; /* load existing custom tracks from trash file */