Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 369052

Summary: NPE in AppearanceAwareLabelProvider.evaluateTextFlags()
Product: [WebTools] JSDT Reporter: Leonardo Percoco <leonardo.percoco>
Component: GeneralAssignee: Project Inbox <jsdt.javascript-inbox>
Status: RESOLVED WORKSFORME QA Contact: Nitin Dahyabhai <thatnitind>
Severity: critical    
Priority: P3 CC: amj87.iitr, daniel_megert, srikanth_sankaran, stephan.herrmann
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:
Attachments:
Description Flags
/metadata/.log file none

Description Leonardo Percoco CLA 2012-01-19 05:23:40 EST
Build Identifier: "Version: 3.5.0  I20090611-1540"

While I am developing, even if I am idle, Eclipse close unexpectedly.

Reproducible: Always

Steps to Reproduce:
1. Open Eclise
2. Make you activities (development, compiling, simply reading a file)
3. Eclipse crash unexpectedly.
Comment 1 Ayushman Jain CLA 2012-01-19 07:07:27 EST
Do you recall any particular action which caused the crash? Can you please attach your .log file in the .metadata folder, that you obtained after the crash? Thanks!
Comment 2 Leonardo Percoco CLA 2012-01-19 07:49:25 EST
Created attachment 209740 [details]
/metadata/.log file

Hi. I attached the .log file under .metadata/
Thanks in advance.
Leonardo Percoco
Comment 3 Stephan Herrmann CLA 2012-01-19 08:08:45 EST
Seeing a class ObjectLiteralField in the stack trace which doesn't even exist any more in today's sources, and considering that this was observed in Eclipse 3.5.0 while we're developing 3.8 I'm afraid we may not be able to do much. It's rather unlikely that we'll be able to reproduce this problem in any recent version. I don't even remember seeing that class. Nor could I find any bug report referring to that class.

Leonardo, if 3.5.0 doesn't work for you, the best resolution would be if you upgrade to a newer version of Eclipse, if possible. If you must use 3.5.x, maybe even an upgrade to 3.5.2 will fix the issue?
Comment 4 Leonardo Percoco CLA 2012-01-19 08:18:07 EST
Hi. I will try to use 3.5.2 release of Eclipse.
I will inform You if issue will be fixed or no.
Thaks by now.
Best Regards, leonardo.
Comment 5 Leonardo Percoco CLA 2012-01-19 08:37:44 EST
Is 3.5.2 an upgrade fo 3.5.0 or new version?
Comment 6 Srikanth Sankaran CLA 2012-01-19 08:44:09 EST
3.5.2 is second maintenance release for 3.5.

If you are unconstrained by other considerations, you should upgrade
to 3.7.1 which is most recent official release.
Comment 7 Leonardo Percoco CLA 2012-01-19 08:50:56 EST
Can I migrate to 3.5.2. directly from Eclipse (using help -> check for updates)?
Comment 8 Leonardo Percoco CLA 2012-01-20 03:58:10 EST
Hi. If it can be useful, Eclipse has just closed unexpectedly with this log:


**********************************************************************start-log
!ENTRY org.eclipse.core.resources 2 10035 2012-01-20 09:46:34.981
!MESSAGE The workspace exited with unsaved changes in the previous session; refreshing workspace to recover changes.

!ENTRY org.eclipse.ui 4 0 2012-01-20 09:47:07.507
!MESSAGE Unhandled event loop exception
!STACK 0
org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.NullPointerException)
	at org.eclipse.swt.SWT.error(SWT.java:3884)
	at org.eclipse.swt.SWT.error(SWT.java:3799)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:137)
	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3468)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3115)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2405)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369)
	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2221)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
	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:368)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
	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:616)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
Caused by: java.lang.NullPointerException
	at org.eclipse.jdt.internal.ui.viewsupport.AppearanceAwareLabelProvider.evaluateTextFlags(AppearanceAwareLabelProvider.java:121)
	at org.eclipse.jdt.internal.ui.viewsupport.JavaUILabelProvider.getStyledText(JavaUILabelProvider.java:178)
	at org.eclipse.jdt.internal.ui.packageview.PackageExplorerLabelProvider.getStyledText(PackageExplorerLabelProvider.java:70)
	at org.eclipse.jdt.internal.ui.navigator.JavaNavigatorLabelProvider.getStyledText(JavaNavigatorLabelProvider.java:156)
	at org.eclipse.ui.internal.navigator.NavigatorContentServiceLabelProvider.findStyledText(NavigatorContentServiceLabelProvider.java:177)
	at org.eclipse.ui.internal.navigator.NavigatorContentServiceLabelProvider.findStyledText(NavigatorContentServiceLabelProvider.java:189)
	at org.eclipse.ui.internal.navigator.NavigatorContentServiceLabelProvider.getStyledText(NavigatorContentServiceLabelProvider.java:161)
	at org.eclipse.ui.internal.navigator.NavigatorDecoratingLabelProvider$StyledLabelProviderAdapter.getStyledText(NavigatorDecoratingLabelProvider.java:68)
	at org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.getStyledText(DelegatingStyledCellLabelProvider.java:195)
	at org.eclipse.jface.viewers.DecoratingStyledCellLabelProvider.getStyledText(DecoratingStyledCellLabelProvider.java:192)
	at org.eclipse.ui.internal.navigator.NavigatorDecoratingLabelProvider.getText(NavigatorDecoratingLabelProvider.java:222)
	at org.eclipse.jface.viewers.ViewerComparator.compare(ViewerComparator.java:135)
	at org.eclipse.ui.navigator.CommonViewerSorter.compare(CommonViewerSorter.java:150)
	at org.eclipse.jface.viewers.TreePathViewerSorter$1.compare(TreePathViewerSorter.java:105)
	at java.util.Arrays.mergeSort(Arrays.java:1306)
	at java.util.Arrays.mergeSort(Arrays.java:1295)
	at java.util.Arrays.mergeSort(Arrays.java:1295)
	at java.util.Arrays.sort(Arrays.java:1223)
	at org.eclipse.jface.viewers.TreePathViewerSorter.sort(TreePathViewerSorter.java:103)
	at org.eclipse.jface.viewers.AbstractTreeViewer.getSortedChildren(AbstractTreeViewer.java:621)
	at org.eclipse.jface.viewers.AbstractTreeViewer.updateChildren(AbstractTreeViewer.java:2576)
	at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1863)
	at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:716)
	at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1870)
	at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:716)
	at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1838)
	at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1794)
	at org.eclipse.ui.navigator.CommonViewer.internalRefresh(CommonViewer.java:566)
	at org.eclipse.jface.viewers.StructuredViewer$8.run(StructuredViewer.java:1484)
	at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1392)
	at org.eclipse.jface.viewers.TreeViewer.preservingSelection(TreeViewer.java:402)
	at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1353)
	at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1482)
	at org.eclipse.jface.viewers.ColumnViewer.refresh(ColumnViewer.java:548)
	at org.eclipse.ui.navigator.CommonViewer.refresh(CommonViewer.java:358)
	at org.eclipse.ui.navigator.CommonViewer.refresh(CommonViewer.java:515)
	at org.eclipse.ui.internal.navigator.resources.workbench.ResourceExtensionContentProvider$3.run(ResourceExtensionContentProvider.java:294)
	at org.eclipse.ui.internal.navigator.resources.workbench.ResourceExtensionContentProvider.runUpdates(ResourceExtensionContentProvider.java:306)
	at org.eclipse.ui.internal.navigator.resources.workbench.ResourceExtensionContentProvider.access$1(ResourceExtensionContentProvider.java:303)
	at org.eclipse.ui.internal.navigator.resources.workbench.ResourceExtensionContentProvider$1.run(ResourceExtensionContentProvider.java:129)
	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134)
	... 22 more
**********************************************************************end-log
Comment 9 Ayushman Jain CLA 2012-01-20 04:18:22 EST
Moving to JDT/UI to see if this is still relevant:
java.lang.NullPointerException
    at
org.eclipse.jdt.internal.ui.viewsupport.AppearanceAwareLabelProvider.evaluateTextFlags(AppearanceAwareLabelProvider.java:121)
Comment 10 Leonardo Percoco CLA 2012-01-20 04:21:59 EST
Sorry, I did not understand your suggestion.
Comment 11 Ayushman Jain CLA 2012-01-20 04:28:28 EST
(In reply to comment #10)
> Sorry, I did not understand your suggestion.
I moved the bug to a different component where the problem seems to be. This wasn't directed towards you. Thanks for the stacktrace.
Comment 12 Dani Megert CLA 2012-01-20 04:30:53 EST
> I moved the bug to a different component where the problem seems to be.
Mmmh, no. The initial bug report is not for JDT (Core or UI) but JSDT. Moving there as the NPE in 

AppearanceAwareLabelProvider.evaluateTextFlags(AppearanceAwareLabelProvider.java:121)

looks like coming from a messed up install: neither the 3.5 nor the 3.5.2 code can throw an NPE at that line.

I suggest to do a fresh 3.7.1 install.