{"thread":{"id":"7304","subject":"[PATCH] Fix compare at project level, non-root project","startedAt":"2007-03-19T00:19:09Z","lastAt":"2007-03-19T00:19:09Z","messageCount":1,"participants":["Robin Rosenberg"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"37426","messageId":"20070319001909.29489.55145.stgit@lathund.dewire.com","threadId":"7304","inReplyTo":null,"subject":"[PATCH] Fix compare at project level, non-root project","fromName":"Robin Rosenberg","fromEmail":"robin.rosenberg@dewire.com","sentAt":"2007-03-19T00:19:09Z","receivedAt":"2007-03-19T00:19:09Z","isPatch":true,"sender":{"key":"robin.rosenberg@dewire.com","avatar":"https://avatars.githubusercontent.com/u/46357?v=4"},"body":"Compare didn't work at the project level when the project wasn't\nthe same as the git working directory, i.e. egit itself.\n\nSigned-off-by: Robin Rosenberg <robin.rosenberg@dewire.com>\n---\n\n .../core/internal/mapping/GitFileRevision.java     |   11 ++++++++---\n 1 files changed, 8 insertions(+), 3 deletions(-)\n\ndiff --git a/org.spearce.egit.core/src/org/spearce/egit/core/internal/mapping/GitFileRevision.java b/org.spearce.egit.core/src/org/spearce/egit/core/internal/mapping/GitFileRevision.java\nindex 7b726f7..def142f 100644\n--- a/org.spearce.egit.core/src/org/spearce/egit/core/internal/mapping/GitFileRevision.java\n+++ b/org.spearce.egit.core/src/org/spearce/egit/core/internal/mapping/GitFileRevision.java\n@@ -150,9 +150,14 @@ public class GitFileRevision extends FileRevision {\n \t\t\ttree = repositoryMapping.getRepository().mapTree(getCommit().getTreeId());\n \t\t\tString prefix = repositoryMapping.getSubset();\n \t\t\tif (prefix != null) {\n-\t\t\t\tprefix = prefix + \"/\";\n-\t\t\t\tString name = prefix + resource.getProjectRelativePath().toString();\n-\t\t\t\treturn tree.findMember(name);\n+\t\t\t\tString relPath = resource.getProjectRelativePath().toString();\n+\t\t\t\tif (relPath.equals(\"\"))\n+\t\t\t\t\treturn tree;\n+\t\t\t\telse {\n+\t\t\t\t\tprefix = prefix + \"/\";\n+\t\t\t\t\tString name = prefix + relPath;\n+\t\t\t\t\treturn tree.findMember(name);\n+\t\t\t\t}\n \t\t\t} else\n \t\t\t\treturn tree;\n \t\t} catch (IOException e) {\n"}]}