View | Details | Raw Unified | Return to bug 244631 | Differences between
and this patch

Collapse All | Expand All

(-)src/org/eclipse/ui/internal/views/markers/MarkerMap.java (+10 lines)
Lines 127-130 Link Here
127
	public MarkerEntry[] toArray() {
127
	public MarkerEntry[] toArray() {
128
		return markers;
128
		return markers;
129
	}
129
	}
130
131
	/**
132
	 * Clear the caches for the markers.
133
	 */
134
	void clearAttributeCaches() {
135
		for (int i = 0; i < markers.length; i++) {
136
			markers[i].clearCaches();
137
		}
138
		
139
	}
130
}
140
}
(-)src/org/eclipse/ui/internal/views/markers/MarkerEntry.java (-1 / +11 lines)
Lines 40-46 Link Here
40
	private static final Object LOCATION_STRING = "LOCATION_STRING"; //$NON-NLS-1$
40
	private static final Object LOCATION_STRING = "LOCATION_STRING"; //$NON-NLS-1$
41
	Map attributeCache = new HashMap(0);
41
	Map attributeCache = new HashMap(0);
42
	private MarkerCategory category;
42
	private MarkerCategory category;
43
	Map collationKeys = new HashMap(0);
43
	Map collationKeys = null;
44
	private String folder;
44
	private String folder;
45
	IMarker marker;
45
	IMarker marker;
46
46
Lines 165-170 Link Here
165
			return MarkerSupportInternalUtilities.EMPTY_COLLATION_KEY;
165
			return MarkerSupportInternalUtilities.EMPTY_COLLATION_KEY;
166
		CollationKey key = Collator.getInstance().getCollationKey(
166
		CollationKey key = Collator.getInstance().getCollationKey(
167
				attributeValue);
167
				attributeValue);
168
		if (collationKeys == null)
169
			collationKeys = new HashMap(2);
168
		collationKeys.put(attribute, key);
170
		collationKeys.put(attribute, key);
169
		return key;
171
		return key;
170
	}
172
	}
Lines 349-352 Link Here
349
		this.marker = marker;
351
		this.marker = marker;
350
		attributeCache.clear();
352
		attributeCache.clear();
351
	}
353
	}
354
355
	/**
356
	 * Clear the cached values for performance reasons.
357
	 */
358
	void clearCaches() {
359
		collationKeys = null;
360
		attributeCache.clear();		
361
	}
352
}
362
}
(-)src/org/eclipse/ui/internal/views/markers/CachedMarkerBuilder.java (+1 lines)
Lines 1190-1195 Link Here
1190
		monitor.worked(50);
1190
		monitor.worked(50);
1191
1191
1192
		currentMap = newMarkers;
1192
		currentMap = newMarkers;
1193
		currentMap.clearAttributeCaches();
1193
	}
1194
	}
1194
1195
1195
	/**
1196
	/**

Return to bug 244631