if ((flags & FILTER_INCLUDE) != 0)
removed = rmFilter(_incfilters, ext, filter) || removed;
return removed;
}
private static boolean rmFilter(Map filters, String ext, Filter filter) {
FastReadArray ary;
synchronized (filters) {
ary = (FastReadArray)filters.get(ext);
}
if (ary != null && ary.remove(filter)) {
if (ary.isEmpty())
synchronized (filters) {
ary = (FastReadArray)filters.remove(ext);
if (ary != null && !ary.isEmpty())
filters.put(ext, ary); //modify by other, so restore
}
return true;
}
return false;