Bug 61469 Code review for CustomFiltersActionGroup#initializeWithViewDefaults() suggested
I200405060200 while (tokenizer.hasMoreTokens()) { String id= tokenizer.nextToken(); if (fFilterDescriptorMap.containsKey(id) && !fLRUFilterIdsStack.contains(id)); fLRUFilterIdsStack.push(id); } See original code. Either formatting is wrong, or - which looks more likely to me - the semicolon should be removed. Don't know if this even causes a visible bug, just discovered this piece of code randomly.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/actions/CustomFiltersActionGroup.java
private static final String TAG_USER_DEFINED_PATTERNS= "userDefinedPatterns"; 
	private static final String TAG_XML_DEFINED_FILTERS= "xmlDefinedFilters"; 
	private static final String TAG_LRU_FILTERS = "lastRecentlyUsedFilters"; 
	private static final String TAG_CHILD= "child"; 
	private static final String TAG_PATTERN= "pattern"; 
	private static final String TAG_FILTER_ID= "filterId"; 
	private static final String TAG_IS_ENABLED= "isEnabled"; 
	private static final String SEPARATOR= ",";  
	private static final int MAX_FILTER_MENU_ENTRIES= 3;
	private static final String RECENT_FILTERS_GROUP_NAME= "recentFiltersGroup"; 
	private StructuredViewer fViewer;
	private NamePatternFilter fPatternFilter;
	private Map fInstalledBuiltInFilters;
	
	private Map fEnabledFilterIds;
	private boolean fUserDefinedPatternsEnabled;
	private String[] fUserDefinedPatterns;
	/**
	 * Recently changed filter Ids stack with oldest on top (i.e. at the end).
	 *
	 * @since 3.0
	 */
	private Stack fLRUFilterIdsStack; 
	/**
	 * Handle to menu manager to dynamically update
	 * the last recently used filters.
	 * 
	 * @since 3.0
	 */
	private IMenuManager fMenuManager;