Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 369094 - Opening/closing projects raises ResourceException in PhotranVPG#shouldProcessProject
Summary: Opening/closing projects raises ResourceException in PhotranVPG#shouldProcess...
Status: CLOSED FIXED
Alias: None
Product: PTP
Classification: Tools
Component: Photran.For Internal Use (show other bugs)
Version: 7.0   Edit
Hardware: PC Mac OS X - Carbon (unsup.)
: P3 normal (vote)
Target Milestone: 7.0.5   Edit
Assignee: Jeffrey Overbey CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-01-19 10:10 EST by Jeffrey Overbey CLA
Modified: 2012-01-19 15:02 EST (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jeffrey Overbey CLA 2012-01-19 10:10:32 EST
Opening or closing projects causes errors like the following in Eclipse 4.2M4:


org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.Error: org.eclipse.core.internal.resources.ResourceException: Resource '/org.eclipse.ptp.rdt.managedbuilder.xlc.ui' does not exist.)
	at org.eclipse.swt.SWT.error(SWT.java:4300)
	at org.eclipse.swt.SWT.error(SWT.java:4215)
	...
Caused by: java.lang.Error: org.eclipse.core.internal.resources.ResourceException: Resource '/org.eclipse.ptp.rdt.managedbuilder.xlc.ui' does not exist.
	at org.eclipse.photran.internal.core.vpg.PhotranVPG.shouldProcessProject(PhotranVPG.java:544)
	at org.eclipse.photran.internal.ui.vpg.PhotranResourceFilter.shouldProcess(PhotranResourceFilter.java:37)
	at org.eclipse.rephraserengine.ui.WorkbenchSelectionInfo.getResourcesSelectedIn(WorkbenchSelectionInfo.java:176)
	at org.eclipse.rephraserengine.ui.WorkbenchSelectionInfo.<init>(WorkbenchSelectionInfo.java:132)
	at org.eclipse.rephraserengine.ui.WorkbenchSelectionInfo.<init>(WorkbenchSelectionInfo.java:89)
	at org.eclipse.rephraserengine.ui.menus.RefactorMenu.processConfigElt(RefactorMenu.java:127)
	at org.eclipse.rephraserengine.ui.menus.RefactorMenu.loadRefactoringsFrom(RefactorMenu.java:110)
	at org.eclipse.rephraserengine.ui.menus.RefactorMenu.loadRefactoringsFromExtensionPoint(RefactorMenu.java:99)
	at org.eclipse.rephraserengine.ui.menus.RefactorMenu.getContributionItems(RefactorMenu.java:75)
	at org.eclipse.rephraserengine.ui.menus.RefactorMenu.isEmpty(RefactorMenu.java:372)
	at org.eclipse.rephraserengine.internal.ui.menus.RefactorableResourcePropertyTester.test(RefactorableResourcePropertyTester.java:26)
	at org.eclipse.core.internal.expressions.Property.test(Property.java:58)
	at org.eclipse.core.internal.expressions.TestExpression.evaluate(TestExpression.java:99)
	at org.eclipse.core.internal.expressions.CompositeExpression.evaluateAnd(CompositeExpression.java:53)
	at org.eclipse.core.internal.expressions.AdaptExpression.evaluate(AdaptExpression.java:91)
	at org.eclipse.core.internal.expressions.CompositeExpression.evaluateOr(CompositeExpression.java:68)
	at org.eclipse.core.internal.expressions.OrExpression.evaluate(OrExpression.java:21)
	at org.eclipse.core.internal.expressions.CompositeExpression.evaluateAnd(CompositeExpression.java:53)
	at org.eclipse.core.internal.expressions.IterateExpression.evaluate(IterateExpression.java:184)
	at org.eclipse.core.internal.expressions.CompositeExpression.evaluateAnd(CompositeExpression.java:53)
	at org.eclipse.core.internal.expressions.WithExpression.evaluate(WithExpression.java:72)
	at org.eclipse.core.internal.expressions.ReferenceExpression.evaluate(ReferenceExpression.java:70)
	at org.eclipse.e4.ui.internal.workbench.ContributionsAnalyzer.isVisible(ContributionsAnalyzer.java:236)
	at org.eclipse.e4.ui.workbench.renderers.swt.ContributionRecord.computeVisibility(ContributionRecord.java:107)
	at org.eclipse.e4.ui.workbench.renderers.swt.ContributionRecord.updateVisibility(ContributionRecord.java:64)
	at org.eclipse.e4.ui.workbench.renderers.swt.MenuManagerRenderer$6.changed(MenuManagerRenderer.java:446)
	at org.eclipse.e4.core.internal.contexts.TrackableComputationExt.update(TrackableComputationExt.java:109)
	at org.eclipse.e4.core.internal.contexts.EclipseContext.processScheduled(EclipseContext.java:298)
	at org.eclipse.e4.core.internal.contexts.EclipseContext.set(EclipseContext.java:312)
	at org.eclipse.e4.ui.internal.services.ContextContextService.activateContext(ContextContextService.java:54)
	at org.eclipse.ui.internal.contexts.ContextService$UpdateExpression$1.run(ContextService.java:129)
	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
	... 23 more
Caused by: org.eclipse.core.internal.resources.ResourceException: Resource '/org.eclipse.ptp.rdt.managedbuilder.xlc.ui' does not exist.
	at org.eclipse.core.internal.resources.Resource.checkExists(Resource.java:341)
	at org.eclipse.core.internal.resources.Resource.checkAccessible(Resource.java:215)
	at org.eclipse.core.internal.resources.Project.checkAccessible(Project.java:147)
	at org.eclipse.core.internal.resources.Project.hasNature(Project.java:589)
	at org.eclipse.photran.internal.core.vpg.PhotranVPG.shouldProcessProject(PhotranVPG.java:539)
	... 55 more
Comment 1 Greg Watson CLA 2012-01-19 14:13:59 EST
Looks like you might have a problem with the plugins in your workspace. Do you have any build errors?
Comment 2 Jeffrey Overbey CLA 2012-01-19 15:02:59 EST
I think this invocation is resulting from Photran's dynamic Refactor menu, whose contents depend on the resources in the active selection.  This method appears to be seeing the resource change after the project is closed, on e4 at least.

Anyway, it makes sense to just return false in this scenario, rather than throw an error.  I made this change in ptp_5_0 and master.