Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 356989 - Closing Navigator when properties view is not present may cause exception
Summary: Closing Navigator when properties view is not present may cause exception
Status: RESOLVED FIXED
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: Mylyn (show other bugs)
Version: unspecified   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: 0.9   Edit
Assignee: Sebastien Dubois CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-09-07 14:36 EDT by Alvaro Sanchez-Leon CLA
Modified: 2012-01-24 15:35 EST (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alvaro Sanchez-Leon CLA 2011-09-07 14:36:14 EDT
The following exception was triggered by 
1) Removing the properties view
2) then remove the navigator view

I second attempt to reproduce did not produce it.
Needs to be prevented in the code.

!ENTRY org.eclipse.ui.workbench 4 0 2011-09-07 14:08:26.865
!MESSAGE WARNING: Prevented recursive attempt to activate part org.eclipse.mylyn.reviews.r4e.ui.properties.R4EPropertiesView while still in the middle of activating part org.eclipse.jdt.ui.CompilationUnitEditor
!STACK 0
java.lang.RuntimeException: WARNING: Prevented recursive attempt to activate part org.eclipse.mylyn.reviews.r4e.ui.properties.R4EPropertiesView while still in the middle of activating part org.eclipse.jdt.ui.CompilationUnitEditor
	at org.eclipse.ui.internal.WorkbenchPage.setActivePart(WorkbenchPage.java:3487)
	at org.eclipse.ui.internal.WorkbenchPage.internalActivate(WorkbenchPage.java:617)
	at org.eclipse.ui.internal.WorkbenchPage.activate(WorkbenchPage.java:589)
	at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1096)
	at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1073)
	at org.eclipse.ui.internal.WorkbenchPage$20.run(WorkbenchPage.java:3822)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3819)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3795)
	at org.eclipse.mylyn.reviews.r4e.ui.internal.navigator.ReviewNavigatorView$1.selectionChanged(ReviewNavigatorView.java:379)
	at org.eclipse.jface.viewers.Viewer$2.run(Viewer.java:162)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
	at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
	at org.eclipse.jface.viewers.Viewer.fireSelectionChanged(Viewer.java:160)
	at org.eclipse.jface.viewers.StructuredViewer.updateSelection(StructuredViewer.java:2162)
	at org.eclipse.jface.viewers.StructuredViewer.setSelection(StructuredViewer.java:1699)
	at org.eclipse.jface.viewers.TreeViewer.setSelection(TreeViewer.java:1139)
	at org.eclipse.mylyn.reviews.r4e.ui.internal.navigator.ReviewNavigatorView$3.partActivated(ReviewNavigatorView.java:522)
	at org.eclipse.ui.internal.PartListenerList$1.run(PartListenerList.java:72)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.core.runtime.Platform.run(Platform.java:888)
	at org.eclipse.ui.internal.PartListenerList.fireEvent(PartListenerList.java:57)
	at org.eclipse.ui.internal.PartListenerList.firePartActivated(PartListenerList.java:70)
	at org.eclipse.ui.internal.PartService.firePartActivated(PartService.java:187)
	at org.eclipse.ui.internal.PartService.setActivePart(PartService.java:306)
	at org.eclipse.ui.internal.WorkbenchPagePartList.fireActivePartChanged(WorkbenchPagePartList.java:57)
	at org.eclipse.ui.internal.PartList.setActivePart(PartList.java:136)
	at org.eclipse.ui.internal.WorkbenchPage.setActivePart(WorkbenchPage.java:3537)
	at org.eclipse.ui.internal.WorkbenchPage.internalActivate(WorkbenchPage.java:617)
	at org.eclipse.ui.internal.WorkbenchPage.activate(WorkbenchPage.java:589)
	at org.eclipse.ui.internal.WorkbenchPage.makeActive(WorkbenchPage.java:1250)
	at org.eclipse.ui.internal.WorkbenchPage.updateActivePart(WorkbenchPage.java:1230)
	at org.eclipse.ui.internal.WorkbenchPage.hideView(WorkbenchPage.java:2380)
	at org.eclipse.ui.internal.ViewPane.doHide(ViewPane.java:213)
	at org.eclipse.ui.internal.PartStack.close(PartStack.java:541)
	at org.eclipse.ui.internal.PartStack.close(PartStack.java:524)
	at org.eclipse.ui.internal.PartStack$1.close(PartStack.java:120)
	at org.eclipse.ui.internal.presentations.util.TabbedStackPresentation$1.handleEvent(TabbedStackPresentation.java:83)
	at org.eclipse.ui.internal.presentations.util.AbstractTabFolder.fireEvent(AbstractTabFolder.java:269)
	at org.eclipse.ui.internal.presentations.util.AbstractTabFolder.fireEvent(AbstractTabFolder.java:278)
	at org.eclipse.ui.internal.presentations.defaultpresentation.DefaultTabFolder.access$1(DefaultTabFolder.java:1)
	at org.eclipse.ui.internal.presentations.defaultpresentation.DefaultTabFolder$1.closeButtonPressed(DefaultTabFolder.java:71)
	at org.eclipse.ui.internal.presentations.PaneFolder.notifyCloseListeners(PaneFolder.java:631)
	at org.eclipse.ui.internal.presentations.PaneFolder$3.close(PaneFolder.java:206)
	at org.eclipse.swt.custom.CTabFolder.onMouse(CTabFolder.java:1595)
	at org.eclipse.swt.custom.CTabFolder$1.handleEvent(CTabFolder.java:261)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)
	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)
	at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:620)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:575)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1408)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1384)
[14:08:27:057] I T=main ReviewNavigatorContentProvider:127 (inputChanged): Input changed
Comment 1 Sebastien Dubois CLA 2011-09-08 15:33:59 EDT
This also appeared when closing a single editor window, while the R4E Propertios view was open, so it is not related to the heading of the original bug.  It seems to be caused by a race condition between jdt and the callback used to show the R4E properties view
Comment 2 Sebastien Dubois CLA 2011-10-21 13:53:15 EDT
This happens when opening a file that is also in the current review (sdame version).  The solution is to wait until the editor is finished opening before setting the focus on the file in the Review navigator