b53f0365865b5449ef209ea86c5220dd07dc8b28 braney Fri Aug 7 12:07:45 2026 -0700 quickLift: don't report items that failed to lift as filtered out, refs #38033 Items that could not be mapped through the chain were counted by the same variable the track filters use, so a lifted view claimed a number of items had been filtered out when no filter had removed anything. Count the two cases apart: failing a filter is a filter rejection, while passing the filters and then getting nothing back from the lift is a lift failure, and say so in the label. diff --git src/hg/lib/trackDbCustom.c src/hg/lib/trackDbCustom.c index a365a217bc9..605aeba2fd1 100644 --- src/hg/lib/trackDbCustom.c +++ src/hg/lib/trackDbCustom.c @@ -1643,25 +1643,33 @@ sameString(setting, "frames") || sameString(setting, "setColorWith") || sameString(setting, "summary") || sameString(setting, "searchTrix") || (startsWith("decorator.", setting) && endsWith(setting, ".url")); } char *labelAsFilteredNumber(char *label, unsigned numOut) /* add text to label to indicate filter is active */ { char buffer[2048]; safef(buffer, sizeof buffer, " (%d items filtered out)", numOut); return catTwoStrings(label, buffer); } +char *labelAsNotLiftedNumber(char *label, unsigned numOut) +/* add text to label to indicate items were dropped by the lift, not by a filter */ +{ +char buffer[2048]; +safef(buffer, sizeof buffer, " (%d items could not be lifted)", numOut); +return catTwoStrings(label, buffer); +} + char *labelAsFiltered(char *label) /* add text to label to indicate filter is active */ { #define FILTER_ACTIVATED " (filter activated)" if (stringIn(FILTER_ACTIVATED, label)) return label; return (catTwoStrings(label, FILTER_ACTIVATED)); }