Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 43519 Details for
Bug 139857
[Markers] Working set filtering is using infinite depth
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
Patch
139857.txt (text/plain), 3.85 KB, created by
Tod Creasey
on 2006-06-05 15:55:24 EDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Tod Creasey
Created:
2006-06-05 15:55:24 EDT
Size:
3.85 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.ui.ide >Index: src/org/eclipse/ui/views/markers/internal/MarkerFilter.java >=================================================================== >RCS file: /home/eclipse/org.eclipse.ui.ide/src/org/eclipse/ui/views/markers/internal/MarkerFilter.java,v >retrieving revision 1.27 >diff -u -r1.27 MarkerFilter.java >--- src/org/eclipse/ui/views/markers/internal/MarkerFilter.java 8 May 2006 20:54:11 -0000 1.27 >+++ src/org/eclipse/ui/views/markers/internal/MarkerFilter.java 5 Jun 2006 19:57:22 -0000 >@@ -27,6 +27,7 @@ > import org.eclipse.core.resources.IResource; > import org.eclipse.core.resources.ResourcesPlugin; > import org.eclipse.core.resources.mapping.ResourceMapping; >+import org.eclipse.core.resources.mapping.ResourceTraversal; > import org.eclipse.core.runtime.CoreException; > import org.eclipse.core.runtime.IAdaptable; > import org.eclipse.core.runtime.IProgressMonitor; >@@ -36,9 +37,8 @@ > import org.eclipse.ui.PlatformUI; > > /** >- * MarkerFilter is the class that defines a filter on markers in a >- * MarkerView. >- * >+ * MarkerFilter is the class that defines a filter on markers in a MarkerView. >+ * > */ > public class MarkerFilter implements Cloneable { > >@@ -233,68 +233,39 @@ > } > } > >- // Iterate through all the selected resources >- for (int resourceIdx = 0; resourceIdx < resources.length; resourceIdx++) { >- iter = typesToSearch.iterator(); >+ iter = typesToSearch.iterator(); > >- IResource resource = resources[resourceIdx]; >+ ResourceTraversal traversal = new ResourceTraversal(resources, depth, 0); > >- // Skip resources that don't exist >- if (!resource.isAccessible()) { >- continue; >- } >+ // Iterate through all the marker types >+ while (iter.hasNext()) { >+ MarkerType markerType = (MarkerType) iter.next(); >+ >+ // Only search for subtypes of the marker if we found all of its >+ // subtypes in the filter criteria. >+ IMarker[] markers = traversal.findMarkers(markerType.getId(), >+ includeAllSubtypes.contains(markerType)); > >- if (depth == IResource.DEPTH_INFINITE) { >- // Determine if any parent of this resource is also in our >- // filter >- IResource parent = resource.getParent(); >- boolean found = false; >- while (parent != null) { >- if (resourcesToSearch.contains(parent)) { >- found = true; >+ mon.worked(1); >+ >+ for (int idx = 0; idx < markers.length; idx++) { >+ ConcreteMarker marker; >+ try { >+ marker = MarkerList.createMarker(markers[idx]); >+ } catch (CoreException e) { >+ if (ignoreExceptions) { >+ continue; > } >+ throw e; > >- parent = parent.getParent(); > } > >- // If a parent of this resource is also in the filter, we can >- // skip it >- // because we'll pick up its markers when we search the parent. >- if (found) { >- continue; >+ if (limit != -1 && resultList.size() >= limit) { >+ return resultList; > } >- } >- >- // Iterate through all the marker types >- while (iter.hasNext()) { >- MarkerType markerType = (MarkerType) iter.next(); >- >- // Only search for subtypes of the marker if we found all of its >- // subtypes in the filter criteria. >- IMarker[] markers = resource.findMarkers(markerType.getId(), >- includeAllSubtypes.contains(markerType), depth); >- >- mon.worked(1); >- >- for (int idx = 0; idx < markers.length; idx++) { >- ConcreteMarker marker; >- try { >- marker = MarkerList.createMarker(markers[idx]); >- } catch (CoreException e) { >- if (ignoreExceptions) { >- continue; >- } >- throw e; >- >- } > >- if (limit != -1 && resultList.size() >= limit) { >- return resultList; >- } >- >- if (selectMarker(marker)) { >- resultList.add(marker); >- } >+ if (selectMarker(marker)) { >+ resultList.add(marker); > } > } > }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 139857
: 43519