Community
Participate
Working Groups
java.lang.NullPointerException at org.eclipse.team.internal.ccvs.core.resources.EclipseSynchronizer.endOperation(EclipseSynchronizer.java:560) at org.eclipse.team.internal.ccvs.core.resources.EclipseSynchronizer.getFolderSync(EclipseSynchronizer.java:184) at org.eclipse.team.internal.ccvs.core.syncinfo.CVSBaseResourceVariantTree.getBytes(CVSBaseResourceVariantTree.java:39) at org.eclipse.team.internal.core.subscribers.DescendantResourceVariantByteStore.getBytes(DescendantResourceVariantByteStore.java:59) at org.eclipse.team.internal.ccvs.core.syncinfo.CVSResourceVariantTree.getParentBytes(CVSResourceVariantTree.java:151) at org.eclipse.team.internal.ccvs.core.syncinfo.CVSResourceVariantTree.getResourceVariant(CVSResourceVariantTree.java:124) at org.eclipse.team.core.variants.ResourceVariantTreeSubscriber.getSyncInfo(ResourceVariantTreeSubscriber.java:50) at org.eclipse.team.internal.ccvs.core.CVSSyncTreeSubscriber.getSyncInfo(CVSSyncTreeSubscriber.java:77) at org.eclipse.team.internal.core.subscribers.SubscriberEventHandler.collect(SubscriberEventHandler.java:234) at org.eclipse.team.internal.core.subscribers.SubscriberEventHandler.collect(SubscriberEventHandler.java:220) at org.eclipse.team.internal.core.subscribers.SubscriberEventHandler.collect(SubscriberEventHandler.java:220) at org.eclipse.team.internal.core.subscribers.SubscriberEventHandler.collect(SubscriberEventHandler.java:220) at org.eclipse.team.internal.core.subscribers.SubscriberEventHandler.processEvent(SubscriberEventHandler.java:385) at org.eclipse.team.internal.core.BackgroundEventHandler.processEvents(BackgroundEventHandler.java:273) at org.eclipse.team.internal.core.BackgroundEventHandler$1.run(BackgroundEventHandler.java:131) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:62)
I200403220800
This means that ResourcesPlugin.getWorkspace() returned null but didn't in the begin operation. Was this during shutdown?
It was actually at startup.
Question to Core, since getWorkspace() is not spec'ed to return null what should clients to when it becomes null? Should we check? What is bizzare is that getWorkspace() was called successfully in beginOperation().
This happens in two cases: - before resources plug-in has started - after resources plug-in has shutdown I would only expect this to happen if, for example, a background thread attempts to access the workspace after it has shutdown. In these cases some kind of protection would be good, such as canceling and joining your background event in your own plugin shutdown to ensure that it never continues to run after your plugin.shutdown() has exited. I think ResourcesPlugin.getWorkspace spec should be updated to reflect this.
I have updated the ResourcesPlugin.getWorkspace spec to say it returns null if the resources plugin has been shut down. You shoulnd't have to do null checks every time you access the workspace, as long as you clean up your background threads before shutting down your plugin.
We currently don't have a mechanism for identifying all of the plugin's job. But this could be done and then shutdown in the plug-in should clean-up.
Post 3.0
*** Bug 67442 has been marked as a duplicate of this bug. ***
*** Bug 73585 has been marked as a duplicate of this bug. ***
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet. If you have further information on the current state of the bug, please add it. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant.