Community
Participate
Working Groups
N20140424-2000. Doing anything useful on Mac, like opening an editor causes an IAE: java.lang.IllegalArgumentException: at org.eclipse.core.runtime.Assert.isLegal(Assert.java:63) at org.eclipse.core.runtime.Assert.isLegal(Assert.java:47) at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.findElementsRecursive(ModelServiceImpl.java:140) at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.findElements(ModelServiceImpl.java:315) at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.findElements(ModelServiceImpl.java:301) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.addPart(PartServiceImpl.java:889) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.addPart(PartServiceImpl.java:1085) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.showPart(PartServiceImpl.java:1109) at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:3127) at org.eclipse.ui.internal.WorkbenchPage.access$23(WorkbenchPage.java:3049) at org.eclipse.ui.internal.WorkbenchPage$9.run(WorkbenchPage.java:3031) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3026) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2990) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2971) at org.eclipse.ui.ide.IDE.openEditor(IDE.java:603)
No IAE on Linux or Windows 7.
Might be caused by the fix for bug.
Might be caused by the fix for bug 432847.
To investigate we need to find why this line of code: MUIElement area = modelService.find("org.eclipse.ui.editorss", container); in the part service is returning "null" only on Mac
(In reply to Louis-Michel Mathurin from comment #4) > To investigate we need to find why this line of code: > MUIElement area = modelService.find("org.eclipse.ui.editorss", container); > in the part service is returning "null" only on Mac Brian, can you help here?
(In reply to Lars Vogel from comment #5) > (In reply to Louis-Michel Mathurin from comment #4) > > To investigate we need to find why this line of code: > > MUIElement area = modelService.find("org.eclipse.ui.editorss", container); > > in the part service is returning "null" only on Mac > > Brian, can you help here? I'm going to revert the main change, add back the handler search, and then push the squashed changes up to a gerrit review. PW
Reverted the fix for bug 432847 with http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=56939ba03420c63376c00b567fc6ac56fcf1861f PW
Still same error in N20140425-2000: http://download.eclipse.org/eclipse/downloads/drops4/N20140425-2000/testresults/html/org.eclipse.search.tests_macosx.cocoa.x86_64_7.0.html
I'll try and get some time on my mac at work tomorrow morning to look at this. PW
The problem was caused by this CCE. It killed creation of the workbench window, which left it with no MArea to find. Fixed with http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=f60919665fc89b2cf09375530ce7394d90669a92 Caused by: java.lang.ClassCastException: org.eclipse.e4.ui.workbench.renderers.swt.cocoa.MinimizeWindowHandler cannot be cast to org.eclipse.core.commands.IHandler at org.eclipse.ui.internal.help.CommandHelpServiceImpl.getHelpContextId(CommandHelpServiceImpl.java:57) at org.eclipse.ui.internal.commands.CommandService.getHelpContextId(CommandService.java:203) at org.eclipse.ui.internal.commands.CommandService.getHelpContextId(CommandService.java:210) at org.eclipse.ui.internal.commands.SlaveCommandService.getHelpContextId(SlaveCommandService.java:250) at org.eclipse.ui.menus.CommandContributionItem.<init>(CommandContributionItem.java:228) at org.eclipse.ui.internal.ide.WorkbenchActionBuilder.makeActions(WorkbenchActionBuilder.java:1158) at org.eclipse.ui.application.ActionBarAdvisor.fillActionBars(ActionBarAdvisor.java:148) at org.eclipse.ui.internal.ide.WorkbenchActionBuilder.fillActionBars(WorkbenchActionBuilder.java:337) at org.eclipse.ui.internal.WorkbenchWindow.fillActionBars(WorkbenchWindow.java:2492) at org.eclipse.ui.internal.WorkbenchWindow.setup(WorkbenchWindow.java:652) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:55)
(In reply to Paul Webster from comment #10) > The problem was caused by this CCE. It killed creation of the workbench > window, which left it with no MArea to find. > > Fixed with > http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/ > ?id=f60919665fc89b2cf09375530ce7394d90669a92 Verified in I20140427-2030. > Caused by: java.lang.ClassCastException: > org.eclipse.e4.ui.workbench.renderers.swt.cocoa.MinimizeWindowHandler cannot > be cast to org.eclipse.core.commands.IHandler Introduced with the fix for bug 380946.