{"thread":{"id":"19074","subject":"[PATCH EGIT] Fix NPE on move/delete ignored file","startedAt":"2009-04-27T07:49:02Z","lastAt":"2009-04-27T07:49:02Z","messageCount":1,"participants":["Daniel Cheng (aka SDiZ) git@sdiz.net"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"112367","messageId":"1240818542-10905-1-git-send-email-git@sdiz.net","threadId":"19074","inReplyTo":null,"subject":"[PATCH EGIT] Fix NPE on move/delete ignored file","fromName":"Daniel Cheng (aka SDiZ) git@sdiz.net","fromEmail":"j16sdiz+freenet@gmail.com","sentAt":"2009-04-27T07:49:02Z","receivedAt":"2009-04-27T07:49:02Z","isPatch":true,"sender":{"key":"j16sdiz+freenet@gmail.com","avatar":"https://gravatar.com/avatar/3e796e8a156ee86e305bfc1fbe01608302554ee3b5fa7eb8d1213b8877bfcabd?d=mp&s=160"},"body":"\nSigned-off-by: Daniel Cheng (aka SDiZ) git@sdiz.net <git@sdiz.net>\n---\n\nWhen I rename a class, it give out NPE. I *guess* this is related\nto ignored resource, as it was called from BatchImageBuilder.cleanOutputFolders().\nThis patch mask the NPE.\n\n!ENTRY org.eclipse.core.resources 2 75 2009-04-27 15:34:25.873\n!MESSAGE Errors during build.\n!SUBENTRY 1 org.eclipse.jdt.core 2 75 2009-04-27 15:34:25.874\n!MESSAGE Errors running builder 'Java Builder' on project 'fred'.\n!SUBENTRY 1 org.eclipse.jdt.core 2 75 2009-04-27 15:34:25.874\n!MESSAGE null argument:\n!STACK 0\norg.eclipse.core.runtime.AssertionFailedException: null argument:\n    at org.eclipse.core.runtime.Assert.isNotNull(Assert.java:86)\n    at org.eclipse.core.runtime.Assert.isNotNull(Assert.java:74)\n    at org.spearce.egit.core.GitMoveDeleteHook.<init>(GitMoveDeleteHook.java:40)\n    at org.spearce.egit.core.GitProvider.getMoveDeleteHook(GitProvider.java:55)\n    at org.eclipse.team.internal.core.MoveDeleteManager.getHookFor(MoveDeleteManager.java:34)\n    at org.eclipse.team.internal.core.MoveDeleteManager.deleteFolder(MoveDeleteManager.java:62)\n    at org.eclipse.core.internal.resources.Resource.unprotectedDelete(Resource.java:1723)\n    at org.eclipse.core.internal.resources.Resource.delete(Resource.java:711)\n    at org.eclipse.jdt.internal.core.builder.BatchImageBuilder.cleanOutputFolders(BatchImageBuilder.java:114)\n    at org.eclipse.jdt.internal.core.builder.BatchImageBuilder.build(BatchImageBuilder.java:46)\n    at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildAll(JavaBuilder.java:254)\n    at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:178)\n    at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:633)                                           at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)\n    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:170)\n    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:201)\n    at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:253)\n    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)\n    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:256)\n    at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:309)\n    at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:341)\n    at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:140)\n    at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:238)\n    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)\n\n\n\n\n .../src/org/spearce/egit/core/GitProvider.java     |    4 +++-\n 1 files changed, 3 insertions(+), 1 deletions(-)\n\ndiff --git a/org.spearce.egit.core/src/org/spearce/egit/core/GitProvider.java b/org.spearce.egit.core/src/org/spearce/egit/core/GitProvider.java\nindex c7baf65..db3a857 100644\n--- a/org.spearce.egit.core/src/org/spearce/egit/core/GitProvider.java\n+++ b/org.spearce.egit.core/src/org/spearce/egit/core/GitProvider.java\n@@ -52,7 +52,9 @@ public boolean canHandleLinkedResourceURI() {\n \n \tpublic synchronized IMoveDeleteHook getMoveDeleteHook() {\n \t\tif (hook == null) {\n-\t\t\thook = new GitMoveDeleteHook(getData());\n+\t\t\tGitProjectData _data = getData();\n+\t\t\tif (_data != null)\n+\t\t\t\thook = new GitMoveDeleteHook(_data);\n \t\t}\n \t\treturn hook;\n \t}\n-- \n1.6.2.1\n"}]}