From 05f75c3384adf3291fb44ad48805097102dff86d Mon Sep 17 00:00:00 2001 From: "Daniel Cheng (aka SDiZ)" Date: Thu, 30 Apr 2009 22:59:22 +0800 Subject: [PATCH] Fix NPE on missing git data Fix the following NPE: !ENTRY org.eclipse.core.resources 4 2 2009-04-30 22:52:47.117 !MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.core.resources". !STACK 0 java.lang.NullPointerException at org.spearce.egit.core.project.RepositoryMapping.getMapping(RepositoryMapping.java:235) at org.spearce.egit.ui.internal.decorators.GitLightweightDecorator$2.visit(GitLightweightDecorator.java:492) at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:68) at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:79) at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:79) at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:79) at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:79) at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:79) at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:55) at org.spearce.egit.ui.internal.decorators.GitLightweightDecorator.resourceChanged(GitLightweightDecorator.java:477) at org.eclipse.core.internal.events.NotificationManager$2.run(NotificationManager.java:288) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.core.internal.events.NotificationManager.notify(NotificationManager.java:282) at org.eclipse.core.internal.events.NotificationManager.broadcastChanges(NotificationManager.java:148) at org.eclipse.core.internal.resources.Workspace.broadcastPostChange(Workspace.java:313) at org.eclipse.core.internal.resources.Workspace.endOperation(Workspace.java:1022) at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:45) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) Signed-off-by: Daniel Cheng (aka SDiZ) Signed-off-by: Shawn O. Pearce --- .../src/org/spearce/egit/core/project/RepositoryMapping.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/org.spearce.egit.core/src/org/spearce/egit/core/project/RepositoryMapping.java b/org.spearce.egit.core/src/org/spearce/egit/core/project/RepositoryMapping.java index b49f380f..029c56ac 100644 --- a/org.spearce.egit.core/src/org/spearce/egit/core/project/RepositoryMapping.java +++ b/org.spearce.egit.core/src/org/spearce/egit/core/project/RepositoryMapping.java @@ -232,6 +232,9 @@ public class RepositoryMapping { if (!(rp instanceof GitProvider)) return null; + if (((GitProvider)rp).getData() == null) + return null; + return ((GitProvider)rp).getData().getRepositoryMapping(resource); } -- 2.11.4.GIT