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 28440 Details for
Bug 113051
No classpath marker produced when cycle through PDE container
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
[patch]
Patch against v_617
113051_org.eclipse.jdt.core.txt (text/plain), 5.29 KB, created by
Jerome Lanneluc
on 2005-10-19 09:51:49 EDT
(
hide
)
Description:
Patch against v_617
Filename:
MIME Type:
Creator:
Jerome Lanneluc
Created:
2005-10-19 09:51:49 EDT
Size:
5.29 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.jdt.core >Index: model/org/eclipse/jdt/internal/core/DeltaProcessor.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/DeltaProcessor.java,v >retrieving revision 1.269 >diff -u -r1.269 DeltaProcessor.java >--- model/org/eclipse/jdt/internal/core/DeltaProcessor.java 30 Sep 2005 13:58:00 -0000 1.269 >+++ model/org/eclipse/jdt/internal/core/DeltaProcessor.java 19 Oct 2005 13:49:08 -0000 >@@ -1809,7 +1809,7 @@ > } > // this.processPostChange = false; > if(isAffectedBy(delta)) { // avoid populating for SYNC or MARKER deltas >- updateClasspathMarkers(delta); >+ updateClasspathMarkers(delta, updates); > JavaBuilder.buildStarting(); > } > // does not fire any deltas >@@ -2097,7 +2097,7 @@ > /* > * Update the .classpath format, missing entries and cycle markers for the projects affected by the given delta. > */ >- private void updateClasspathMarkers(IResourceDelta delta) { >+ private void updateClasspathMarkers(IResourceDelta delta, DeltaProcessingState.ProjectUpdateInfo[] updates) { > > Map preferredClasspaths = new HashMap(5); > Map preferredOutputs = new HashMap(5); >@@ -2110,45 +2110,53 @@ > // update .classpath format markers for affected projects (dependent projects > // or projects that reference a library in one of the projects that have changed) > if (!affectedProjects.isEmpty()) { >- try { >- IWorkspaceRoot workspaceRoot = ResourcesPlugin.getWorkspace().getRoot(); >- IProject[] projects = workspaceRoot.getProjects(); >- int length = projects.length; >- for (int i = 0; i < length; i++){ >- IProject project = projects[i]; >- JavaProject javaProject = (JavaProject)JavaCore.create(project); >- if (preferredClasspaths.get(javaProject) == null) { // not already updated >- try { >- IPath projectPath = project.getFullPath(); >- IClasspathEntry[] classpath = javaProject.getResolvedClasspath(true/*ignoreUnresolvedEntry*/, false/*don't generateMarkerOnError*/, false/*don't returnResolutionInProgress*/); // allowed to reuse model cache >- for (int j = 0, cpLength = classpath.length; j < cpLength; j++) { >- IClasspathEntry entry = classpath[j]; >- switch (entry.getEntryKind()) { >- case IClasspathEntry.CPE_PROJECT: >- if (affectedProjects.contains(entry.getPath())) { >- javaProject.updateClasspathMarkers(null, null); >- } >- break; >- case IClasspathEntry.CPE_LIBRARY: >- IPath entryPath = entry.getPath(); >- IPath libProjectPath = entryPath.removeLastSegments(entryPath.segmentCount()-1); >- if (!libProjectPath.equals(projectPath) // if library contained in another project >- && affectedProjects.contains(libProjectPath)) { >- javaProject.updateClasspathMarkers(null, null); >- } >- break; >- } >+ IWorkspaceRoot workspaceRoot = ResourcesPlugin.getWorkspace().getRoot(); >+ IProject[] projects = workspaceRoot.getProjects(); >+ int length = projects.length; >+ for (int i = 0; i < length; i++){ >+ IProject project = projects[i]; >+ JavaProject javaProject = (JavaProject)JavaCore.create(project); >+ if (preferredClasspaths.get(javaProject) == null) { // not already updated >+ try { >+ IPath projectPath = project.getFullPath(); >+ IClasspathEntry[] classpath = javaProject.getResolvedClasspath(true/*ignoreUnresolvedEntry*/, false/*don't generateMarkerOnError*/, false/*don't returnResolutionInProgress*/); // allowed to reuse model cache >+ for (int j = 0, cpLength = classpath.length; j < cpLength; j++) { >+ IClasspathEntry entry = classpath[j]; >+ switch (entry.getEntryKind()) { >+ case IClasspathEntry.CPE_PROJECT: >+ if (affectedProjects.contains(entry.getPath())) { >+ javaProject.updateClasspathMarkers(null, null); >+ } >+ break; >+ case IClasspathEntry.CPE_LIBRARY: >+ IPath entryPath = entry.getPath(); >+ IPath libProjectPath = entryPath.removeLastSegments(entryPath.segmentCount()-1); >+ if (!libProjectPath.equals(projectPath) // if library contained in another project >+ && affectedProjects.contains(libProjectPath)) { >+ javaProject.updateClasspathMarkers(null, null); >+ } >+ break; > } >- } catch(JavaModelException e) { >- // project no longer exists > } >+ } catch(JavaModelException e) { >+ // project no longer exists > } > } >- >- // update all cycle markers >+ } >+ } >+ if (!affectedProjects.isEmpty() || updates != null) { >+ // update all cycle markers since the given delta may have affected cycles >+ if (updates != null) { >+ for (int i = 0, length = updates.length; i < length; i++) { >+ DeltaProcessingState.ProjectUpdateInfo info = updates[i]; >+ if (!preferredClasspaths.containsKey(info.project)) >+ preferredClasspaths.put(info.project, info.newResolvedPath); >+ } >+ } >+ try { > JavaProject.updateAllCycleMarkers(preferredClasspaths); >- } catch(JavaModelException e) { >- // project no longer exists >+ } catch (JavaModelException e) { >+ // project no longer exist > } > } > }
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 113051
:
28430
| 28440