Browse Source

Enable and fix "Statement unnecessarily nested within else clause" warnings

Since [1] the gerrit project includes jgit as a submodule, and has this
warning enabled, resulting in 100s of warnings in the console.

Also enable the warning here, and fix them.

At the same time, add missing braces around adjacent and nearby one-line
blocks.

[1] https://gerrit-review.googlesource.com/c/gerrit/+/227897

Change-Id: I81df3fc7ed6eedf6874ce1a3bedfa727a1897e4c
Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
tags/v5.6.0.201911271000-m3
David Pursehouse 4 years ago
parent
commit
98cdca9b5a
100 changed files with 532 additions and 599 deletions
  1. 1
    1
      org.eclipse.jgit.ant.test/.settings/org.eclipse.jdt.core.prefs
  2. 1
    1
      org.eclipse.jgit.ant/.settings/org.eclipse.jdt.core.prefs
  3. 1
    1
      org.eclipse.jgit.archive/.settings/org.eclipse.jdt.core.prefs
  4. 1
    1
      org.eclipse.jgit.http.apache/.settings/org.eclipse.jdt.core.prefs
  5. 1
    1
      org.eclipse.jgit.http.server/.settings/org.eclipse.jdt.core.prefs
  6. 3
    3
      org.eclipse.jgit.http.server/src/org/eclipse/jgit/http/server/glue/ServletBinderImpl.java
  7. 1
    2
      org.eclipse.jgit.http.server/src/org/eclipse/jgit/http/server/resolver/DefaultUploadPackFactory.java
  8. 1
    1
      org.eclipse.jgit.http.test/.settings/org.eclipse.jdt.core.prefs
  9. 1
    2
      org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/SmartClientSmartServerTest.java
  10. 1
    1
      org.eclipse.jgit.junit.http/.settings/org.eclipse.jdt.core.prefs
  11. 3
    3
      org.eclipse.jgit.junit.http/src/org/eclipse/jgit/junit/http/AppServer.java
  12. 1
    1
      org.eclipse.jgit.junit.ssh/.settings/org.eclipse.jdt.core.prefs
  13. 1
    1
      org.eclipse.jgit.junit/.settings/org.eclipse.jdt.core.prefs
  14. 1
    2
      org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/TestRepository.java
  15. 1
    1
      org.eclipse.jgit.lfs.server.test/.settings/org.eclipse.jdt.core.prefs
  16. 1
    1
      org.eclipse.jgit.lfs.server/.settings/org.eclipse.jdt.core.prefs
  17. 1
    2
      org.eclipse.jgit.lfs.server/src/org/eclipse/jgit/lfs/server/fs/FileLfsRepository.java
  18. 1
    2
      org.eclipse.jgit.lfs.server/src/org/eclipse/jgit/lfs/server/s3/SignerV4.java
  19. 1
    1
      org.eclipse.jgit.lfs.test/.settings/org.eclipse.jdt.core.prefs
  20. 1
    1
      org.eclipse.jgit.lfs/.settings/org.eclipse.jdt.core.prefs
  21. 2
    4
      org.eclipse.jgit.lfs/src/org/eclipse/jgit/lfs/BuiltinLFS.java
  22. 21
    23
      org.eclipse.jgit.lfs/src/org/eclipse/jgit/lfs/CleanFilter.java
  23. 2
    4
      org.eclipse.jgit.lfs/src/org/eclipse/jgit/lfs/internal/LfsConnectionFactory.java
  24. 3
    3
      org.eclipse.jgit.lfs/src/org/eclipse/jgit/lfs/lib/AnyLongObjectId.java
  25. 1
    1
      org.eclipse.jgit.pgm.test/.settings/org.eclipse.jdt.core.prefs
  26. 1
    1
      org.eclipse.jgit.pgm/.settings/org.eclipse.jdt.core.prefs
  27. 15
    22
      org.eclipse.jgit.pgm/src/org/eclipse/jgit/console/ConsoleCredentialsProvider.java
  28. 2
    2
      org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/Status.java
  29. 1
    2
      org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/debug/RebuildCommitGraph.java
  30. 1
    2
      org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/debug/TextHashFunctions.java
  31. 3
    3
      org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/opt/CmdLineParser.java
  32. 1
    1
      org.eclipse.jgit.ssh.apache.test/.settings/org.eclipse.jdt.core.prefs
  33. 1
    1
      org.eclipse.jgit.ssh.apache/.settings/org.eclipse.jdt.core.prefs
  34. 2
    4
      org.eclipse.jgit.ssh.apache/src/org/eclipse/jgit/internal/transport/sshd/JGitClientSession.java
  35. 1
    2
      org.eclipse.jgit.ssh.apache/src/org/eclipse/jgit/internal/transport/sshd/OpenSshServerKeyDatabase.java
  36. 6
    8
      org.eclipse.jgit.ssh.apache/src/org/eclipse/jgit/internal/transport/sshd/proxy/HttpParser.java
  37. 3
    4
      org.eclipse.jgit.ssh.apache/src/org/eclipse/jgit/internal/transport/sshd/proxy/Socks5ClientConnector.java
  38. 1
    2
      org.eclipse.jgit.ssh.apache/src/org/eclipse/jgit/transport/sshd/SshdSession.java
  39. 1
    1
      org.eclipse.jgit.test/.settings/org.eclipse.jdt.core.prefs
  40. 1
    2
      org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/PackFileSnapshotTest.java
  41. 1
    2
      org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ObjectIdSerializerTest.java
  42. 1
    2
      org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RefDatabaseConflictingNamesTest.java
  43. 6
    7
      org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/HttpAuthTest.java
  44. 8
    16
      org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/WalkEncryptionTest.java
  45. 1
    1
      org.eclipse.jgit.ui/.settings/org.eclipse.jdt.core.prefs
  46. 1
    1
      org.eclipse.jgit/.settings/org.eclipse.jdt.core.prefs
  47. 4
    5
      org.eclipse.jgit/src/org/eclipse/jgit/api/BlameCommand.java
  48. 17
    13
      org.eclipse.jgit/src/org/eclipse/jgit/api/DiffCommand.java
  49. 9
    9
      org.eclipse.jgit/src/org/eclipse/jgit/api/FetchCommand.java
  50. 1
    2
      org.eclipse.jgit/src/org/eclipse/jgit/api/GarbageCollectCommand.java
  51. 17
    20
      org.eclipse.jgit/src/org/eclipse/jgit/api/MergeCommand.java
  52. 5
    4
      org.eclipse.jgit/src/org/eclipse/jgit/api/PullCommand.java
  53. 9
    9
      org.eclipse.jgit/src/org/eclipse/jgit/api/RebaseCommand.java
  54. 3
    3
      org.eclipse.jgit/src/org/eclipse/jgit/api/ResetCommand.java
  55. 3
    3
      org.eclipse.jgit/src/org/eclipse/jgit/api/SubmoduleSyncCommand.java
  56. 5
    5
      org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameResult.java
  57. 2
    2
      org.eclipse.jgit/src/org/eclipse/jgit/diff/DiffFormatter.java
  58. 9
    9
      org.eclipse.jgit/src/org/eclipse/jgit/diff/Edit.java
  59. 7
    5
      org.eclipse.jgit/src/org/eclipse/jgit/diff/RawText.java
  60. 24
    22
      org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCacheCheckout.java
  61. 3
    3
      org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCacheEntry.java
  62. 3
    3
      org.eclipse.jgit/src/org/eclipse/jgit/fnmatch/AbstractHead.java
  63. 3
    3
      org.eclipse.jgit/src/org/eclipse/jgit/fnmatch/FileNameMatcher.java
  64. 3
    4
      org.eclipse.jgit/src/org/eclipse/jgit/gitrepo/ManifestParser.java
  65. 10
    11
      org.eclipse.jgit/src/org/eclipse/jgit/gitrepo/RepoCommand.java
  66. 3
    3
      org.eclipse.jgit/src/org/eclipse/jgit/gitrepo/RepoProject.java
  67. 18
    19
      org.eclipse.jgit/src/org/eclipse/jgit/ignore/internal/PathMatcher.java
  68. 13
    15
      org.eclipse.jgit/src/org/eclipse/jgit/ignore/internal/Strings.java
  69. 1
    2
      org.eclipse.jgit/src/org/eclipse/jgit/internal/ketch/LagCheck.java
  70. 4
    7
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsRefDatabase.java
  71. 1
    2
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/FileRepository.java
  72. 3
    4
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/GcLog.java
  73. 6
    8
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/ObjectDirectoryInserter.java
  74. 6
    5
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/PackFile.java
  75. 5
    9
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/RefDirectory.java
  76. 1
    2
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/RefDirectoryUpdate.java
  77. 3
    3
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/ReflogEntryImpl.java
  78. 50
    52
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/UnpackedObject.java
  79. 7
    5
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/UnpackedObjectCache.java
  80. 9
    9
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/pack/PackWriter.java
  81. 8
    12
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftable/ReftableDatabase.java
  82. 1
    2
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftree/RefTreeBatch.java
  83. 1
    2
      org.eclipse.jgit/src/org/eclipse/jgit/internal/transport/http/NetscapeCookieFileCache.java
  84. 3
    5
      org.eclipse.jgit/src/org/eclipse/jgit/internal/transport/ssh/OpenSshConfigFile.java
  85. 3
    3
      org.eclipse.jgit/src/org/eclipse/jgit/lib/AnyObjectId.java
  86. 11
    8
      org.eclipse.jgit/src/org/eclipse/jgit/lib/BaseRepositoryBuilder.java
  87. 3
    3
      org.eclipse.jgit/src/org/eclipse/jgit/lib/BranchConfig.java
  88. 5
    6
      org.eclipse.jgit/src/org/eclipse/jgit/lib/Config.java
  89. 2
    4
      org.eclipse.jgit/src/org/eclipse/jgit/lib/DefaultTypedConfigGetter.java
  90. 5
    4
      org.eclipse.jgit/src/org/eclipse/jgit/lib/IndexDiff.java
  91. 2
    4
      org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectReader.java
  92. 14
    14
      org.eclipse.jgit/src/org/eclipse/jgit/lib/Repository.java
  93. 6
    6
      org.eclipse.jgit/src/org/eclipse/jgit/merge/MergeConfig.java
  94. 5
    4
      org.eclipse.jgit/src/org/eclipse/jgit/merge/MergeMessageFormatter.java
  95. 44
    48
      org.eclipse.jgit/src/org/eclipse/jgit/merge/ResolveMerger.java
  96. 4
    4
      org.eclipse.jgit/src/org/eclipse/jgit/merge/ThreeWayMerger.java
  97. 17
    16
      org.eclipse.jgit/src/org/eclipse/jgit/notes/FanoutBucket.java
  98. 17
    21
      org.eclipse.jgit/src/org/eclipse/jgit/notes/LeafBucket.java
  99. 3
    3
      org.eclipse.jgit/src/org/eclipse/jgit/notes/NoteMap.java
  100. 0
    0
      org.eclipse.jgit/src/org/eclipse/jgit/notes/NoteMapMerger.java

+ 1
- 1
org.eclipse.jgit.ant.test/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=error org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=error

+ 1
- 1
org.eclipse.jgit.ant/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning

+ 1
- 1
org.eclipse.jgit.archive/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning

+ 1
- 1
org.eclipse.jgit.http.apache/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning

+ 1
- 1
org.eclipse.jgit.http.server/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning

+ 3
- 3
org.eclipse.jgit.http.server/src/org/eclipse/jgit/http/server/glue/ServletBinderImpl.java View File

* @return the configured servlet, or singleton returning 404 if none. * @return the configured servlet, or singleton returning 404 if none.
*/ */
protected HttpServlet getServlet() { protected HttpServlet getServlet() {
if (httpServlet != null)
if (httpServlet != null) {
return httpServlet; return httpServlet;
else
return new ErrorServlet(HttpServletResponse.SC_NOT_FOUND);
}
return new ErrorServlet(HttpServletResponse.SC_NOT_FOUND);
} }


/** /**

+ 1
- 2
org.eclipse.jgit.http.server/src/org/eclipse/jgit/http/server/resolver/DefaultUploadPackFactory.java View File

up.setExtraParameters(Arrays.asList(params)); up.setExtraParameters(Arrays.asList(params));
} }
return up; return up;
} else {
throw new ServiceNotEnabledException();
} }
throw new ServiceNotEnabledException();
} }
} }

+ 1
- 1
org.eclipse.jgit.http.test/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=error org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=error

+ 1
- 2
org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/SmartClientSmartServerTest.java View File

String fragment = u.getRawFragment(); String fragment = u.getRawFragment();
if (fragment != null) { if (fragment != null) {
return u.getRawPath() + '#' + fragment; return u.getRawPath() + '#' + fragment;
} else {
return u.getRawPath();
} }
return u.getRawPath();
} catch (URISyntaxException e) { } catch (URISyntaxException e) {
return url; return url;
} }

+ 1
- 1
org.eclipse.jgit.junit.http/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=error org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=error

+ 3
- 3
org.eclipse.jgit.junit.http/src/org/eclipse/jgit/junit/http/AppServer.java View File



@Override @Override
protected String[] loadRoleInfo(UserPrincipal user) { protected String[] loadRoleInfo(UserPrincipal user) {
if (users.get(user.getName()) == null)
if (users.get(user.getName()) == null) {
return null; return null;
else
return new String[] { role };
}
return new String[] { role };
} }


@Override @Override

+ 1
- 1
org.eclipse.jgit.junit.ssh/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=error org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=error

+ 1
- 1
org.eclipse.jgit.junit/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentType=warning org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentType=warning
org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentTypeStrict=disabled org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentTypeStrict=disabled
org.eclipse.jdt.core.compiler.problem.unlikelyEqualsArgumentType=info org.eclipse.jdt.core.compiler.problem.unlikelyEqualsArgumentType=info
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unstableAutoModuleName=warning org.eclipse.jdt.core.compiler.problem.unstableAutoModuleName=warning

+ 1
- 2
org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/TestRepository.java View File

} }
update(Constants.HEAD, result); update(Constants.HEAD, result);
return pool.parseCommit(result); return pool.parseCommit(result);
} else {
throw new IOException("Merge conflict");
} }
throw new IOException("Merge conflict");
} }


/** /**

+ 1
- 1
org.eclipse.jgit.lfs.server.test/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=error org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=error

+ 1
- 1
org.eclipse.jgit.lfs.server/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning

+ 1
- 2
org.eclipse.jgit.lfs.server/src/org/eclipse/jgit/lfs/server/fs/FileLfsRepository.java View File

Path p = getPath(id); Path p = getPath(id);
if (Files.exists(p)) { if (Files.exists(p)) {
return Files.size(p); return Files.size(p);
} else {
return -1;
} }
return -1;
} }


/** /**

+ 1
- 2
org.eclipse.jgit.lfs.server/src/org/eclipse/jgit/lfs/server/s3/SignerV4.java View File

String encodedPath = urlEncode(path, true); String encodedPath = urlEncode(path, true);
if (encodedPath.startsWith("/")) { //$NON-NLS-1$ if (encodedPath.startsWith("/")) { //$NON-NLS-1$
return encodedPath; return encodedPath;
} else {
return "/" + encodedPath; //$NON-NLS-1$
} }
return "/" + encodedPath; //$NON-NLS-1$
} }


private static byte[] hash(String s) { private static byte[] hash(String s) {

+ 1
- 1
org.eclipse.jgit.lfs.test/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=error org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=error

+ 1
- 1
org.eclipse.jgit.lfs/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning

+ 2
- 4
org.eclipse.jgit.lfs/src/org/eclipse/jgit/lfs/BuiltinLFS.java View File

Attribute attribute) throws IOException { Attribute attribute) throws IOException {
if (isEnabled(db) && (attribute == null || isEnabled(db, attribute))) { if (isEnabled(db) && (attribute == null || isEnabled(db, attribute))) {
return LfsBlobFilter.smudgeLfsBlob(db, loader); return LfsBlobFilter.smudgeLfsBlob(db, loader);
} else {
return loader;
} }
return loader;
} }


@Override @Override
long length, Attribute attribute) throws IOException { long length, Attribute attribute) throws IOException {
if (isEnabled(db, attribute)) { if (isEnabled(db, attribute)) {
return new LfsInputStream(LfsBlobFilter.cleanLfsBlob(db, input)); return new LfsInputStream(LfsBlobFilter.cleanLfsBlob(db, input));
} else {
return new LfsInputStream(input, length);
} }
return new LfsInputStream(input, length);
} }


@Override @Override

+ 21
- 23
org.eclipse.jgit.lfs/src/org/eclipse/jgit/lfs/CleanFilter.java View File

aOut.write(buf, 0, length); aOut.write(buf, 0, length);
size += length; size += length;
return length; return length;
}
aOut.close();
AnyLongObjectId loid = aOut.getId();
aOut = null;
Path mediaFile = lfsUtil.getMediaFile(loid);
if (Files.isRegularFile(mediaFile)) {
long fsSize = Files.size(mediaFile);
if (fsSize != size) {
throw new CorruptMediaFile(mediaFile, size, fsSize);
}
FileUtils.delete(tmpFile.toFile());
} else { } else {
aOut.close();
AnyLongObjectId loid = aOut.getId();
aOut = null;
Path mediaFile = lfsUtil.getMediaFile(loid);
if (Files.isRegularFile(mediaFile)) {
long fsSize = Files.size(mediaFile);
if (fsSize != size) {
throw new CorruptMediaFile(mediaFile, size, fsSize);
} else {
FileUtils.delete(tmpFile.toFile());
}
} else {
Path parent = mediaFile.getParent();
if (parent != null) {
FileUtils.mkdirs(parent.toFile(), true);
}
FileUtils.rename(tmpFile.toFile(), mediaFile.toFile(),
StandardCopyOption.ATOMIC_MOVE);
Path parent = mediaFile.getParent();
if (parent != null) {
FileUtils.mkdirs(parent.toFile(), true);
} }
LfsPointer lfsPointer = new LfsPointer(loid, size);
lfsPointer.encode(out);
in.close();
out.close();
return -1;
FileUtils.rename(tmpFile.toFile(), mediaFile.toFile(),
StandardCopyOption.ATOMIC_MOVE);
} }
LfsPointer lfsPointer = new LfsPointer(loid, size);
lfsPointer.encode(out);
in.close();
out.close();
return -1;
} catch (IOException e) { } catch (IOException e) {
if (aOut != null) { if (aOut != null) {
aOut.abort(); aOut.abort();

+ 2
- 4
org.eclipse.jgit.lfs/src/org/eclipse/jgit/lfs/internal/LfsConnectionFactory.java View File

remoteUrl, u); remoteUrl, u);
additionalHeaders.putAll(action.header); additionalHeaders.putAll(action.header);
return action.href; return action.href;
} else {
return remoteUrl + Protocol.INFO_LFS_ENDPOINT;
} }
return remoteUrl + Protocol.INFO_LFS_ENDPOINT;
} }


private static Protocol.ExpiringAction getSshAuthentication( private static Protocol.ExpiringAction getSshAuthentication(


if (path.endsWith(org.eclipse.jgit.lib.Constants.DOT_GIT)) { if (path.endsWith(org.eclipse.jgit.lib.Constants.DOT_GIT)) {
return path.substring(0, path.length() - 4); return path.substring(0, path.length() - 4);
} else {
return path;
} }
return path;
} }


/** /**

+ 3
- 3
org.eclipse.jgit.lfs/src/org/eclipse/jgit/lfs/lib/AnyLongObjectId.java View File

/** {@inheritDoc} */ /** {@inheritDoc} */
@Override @Override
public final boolean equals(Object o) { public final boolean equals(Object o) {
if (o instanceof AnyLongObjectId)
if (o instanceof AnyLongObjectId) {
return equals((AnyLongObjectId) o); return equals((AnyLongObjectId) o);
else
return false;
}
return false;
} }


/** /**

+ 1
- 1
org.eclipse.jgit.pgm.test/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=error org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=error

+ 1
- 1
org.eclipse.jgit.pgm/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning

+ 15
- 22
org.eclipse.jgit.pgm/src/org/eclipse/jgit/console/ConsoleCredentialsProvider.java View File

if (v != null) { if (v != null) {
item.setValue(new String(v)); item.setValue(new String(v));
return true; return true;
} else {
return false;
}
} else {
String v = cons.readLine("%s: ", item.getPromptText()); //$NON-NLS-1$
if (v != null) {
item.setValue(v);
return true;
} else {
return false;
} }
return false;
}
String v = cons.readLine("%s: ", item.getPromptText()); //$NON-NLS-1$
if (v != null) {
item.setValue(v);
return true;
} }
return false;
} }


private boolean get(CredentialItem.CharArrayType item) { private boolean get(CredentialItem.CharArrayType item) {
if (v != null) { if (v != null) {
item.setValueNoCopy(v); item.setValueNoCopy(v);
return true; return true;
} else {
return false;
}
} else {
String v = cons.readLine("%s: ", item.getPromptText()); //$NON-NLS-1$
if (v != null) {
item.setValueNoCopy(v.toCharArray());
return true;
} else {
return false;
} }
return false;
}
String v = cons.readLine("%s: ", item.getPromptText()); //$NON-NLS-1$
if (v != null) {
item.setValueNoCopy(v.toCharArray());
return true;
} }
return false;
} }


private boolean get(CredentialItem.InformationalMessage item) { private boolean get(CredentialItem.InformationalMessage item) {
if (r != null) { if (r != null) {
item.setValue(CLIText.get().answerYes.equalsIgnoreCase(r)); item.setValue(CLIText.get().answerYes.equalsIgnoreCase(r));
return true; return true;
} else {
return false;
} }
return false;
} }
} }

+ 2
- 2
org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/Status.java View File

} }
outw.flush(); outw.flush();
return list.size(); return list.size();
} else
return 0;
}
return 0;
} }


/** /**

+ 1
- 2
org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/debug/RebuildCommitGraph.java View File

// rewritten. // rewritten.
queue.add(t); queue.add(t);
continue REWRITE; continue REWRITE;
} else {
newParents[k] = p.newId;
} }
newParents[k] = p.newId;
} else { } else {
// We have the old parent object. Use it. // We have the old parent object. Use it.
// //

+ 1
- 2
org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/debug/TextHashFunctions.java View File

Arrays.fill(buf16, (byte) 0); Arrays.fill(buf16, (byte) 0);
System.arraycopy(raw, ptr, buf16, 0, end - ptr); System.arraycopy(raw, ptr, buf16, 0, end - ptr);
return rabin(buf16, 0); return rabin(buf16, 0);
} else {
return rabin(raw, ptr);
} }
return rabin(raw, ptr);
} }


private int rabin(byte[] raw, int ptr) { private int rabin(byte[] raw, int ptr) {

+ 3
- 3
org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/opt/CmdLineParser.java View File

/** {@inheritDoc} */ /** {@inheritDoc} */
@Override @Override
protected OptionHandler createOptionHandler(OptionDef o, Setter setter) { protected OptionHandler createOptionHandler(OptionDef o, Setter setter) {
if (o instanceof NamedOptionDef)
if (o instanceof NamedOptionDef) {
return super.createOptionHandler(o, setter); return super.createOptionHandler(o, setter);
else
return super.createOptionHandler(new MyOptionDef(o), setter);
}
return super.createOptionHandler(new MyOptionDef(o), setter);


} }



+ 1
- 1
org.eclipse.jgit.ssh.apache.test/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=error org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=error

+ 1
- 1
org.eclipse.jgit.ssh.apache/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning

+ 2
- 4
org.eclipse.jgit.ssh.apache/src/org/eclipse/jgit/internal/transport/sshd/JGitClientSession.java View File

} catch (Exception other) { } catch (Exception other) {
throw new IOException(other.getLocalizedMessage(), other); throw new IOException(other.getLocalizedMessage(), other);
} }
} else {
return super.sendIdentification(ident);
} }
return super.sendIdentification(ident);
} }


@Override @Override
} catch (Exception other) { } catch (Exception other) {
throw new IOException(other.getLocalizedMessage(), other); throw new IOException(other.getLocalizedMessage(), other);
} }
} else {
return super.sendKexInit();
} }
return super.sendKexInit();
} }


/** /**

+ 1
- 2
org.eclipse.jgit.ssh.apache/src/org/eclipse/jgit/internal/transport/sshd/OpenSshServerKeyDatabase.java View File

prompt); prompt);
items.add(answer); items.add(answer);
return provider.get(uri, items) && answer.getValue(); return provider.get(uri, items) && answer.getValue();
} else {
return provider.get(uri, items);
} }
return provider.get(uri, items);
} }


private Check checkMode(SocketAddress remoteAddress, boolean changed) { private Check checkMode(SocketAddress remoteAddress, boolean changed) {

+ 6
- 8
org.eclipse.jgit.ssh.apache/src/org/eclipse/jgit/internal/transport/sshd/proxy/HttpParser.java View File

next++; next++;
} }
return next; return next;
} else {
// This token must be the name of the next authentication
// scheme.
return start;
} }
// This token must be the name of the next authentication
// scheme.
return start;
} }
int nextStart = skipWhiteSpace(header, next + 1); int nextStart = skipWhiteSpace(header, next + 1);
if (nextStart >= length) { if (nextStart >= length) {
// token, and the equals sign is part of the token // token, and the equals sign is part of the token
challenge.setToken(header.substring(start, end + 1)); challenge.setToken(header.substring(start, end + 1));
return nextStart + 1; return nextStart + 1;
} else {
// Key without value...
challenge.addArgument(header.substring(start, end), null);
start = nextStart + 1;
} }
// Key without value...
challenge.addArgument(header.substring(start, end), null);
start = nextStart + 1;
} else { } else {
if (header.charAt(nextStart) == '"') { if (header.charAt(nextStart) == '"') {
int nextEnd[] = { nextStart + 1 }; int nextEnd[] = { nextStart + 1 };

+ 3
- 4
org.eclipse.jgit.ssh.apache/src/org/eclipse/jgit/internal/transport/sshd/proxy/Socks5ClientConnector.java View File

} }
if (i == proposals.length) { if (i == proposals.length) {
return proposals; return proposals;
} else {
byte[] result = new byte[i];
System.arraycopy(proposals, 0, result, 0, i);
return result;
} }
byte[] result = new byte[i];
System.arraycopy(proposals, 0, result, 0, i);
return result;
} }


private void sendConnectInfo(IoSession session) throws Exception { private void sendConnectInfo(IoSession session) throws Exception {

+ 1
- 2
org.eclipse.jgit.ssh.apache/src/org/eclipse/jgit/transport/sshd/SshdSession.java View File

if (path.charAt(0) != '/') { if (path.charAt(0) != '/') {
if (cwd.charAt(cwd.length() - 1) == '/') { if (cwd.charAt(cwd.length() - 1) == '/') {
return cwd + path; return cwd + path;
} else {
return cwd + '/' + path;
} }
return cwd + '/' + path;
} }
return path; return path;
} }

+ 1
- 1
org.eclipse.jgit.test/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=error org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=error

+ 1
- 2
org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/PackFileSnapshotTest.java View File

Files.copy(src, dstOut); Files.copy(src, dstOut);
return dst; return dst;
} }
} else {
return Files.copy(src, dst, StandardCopyOption.REPLACE_EXISTING);
} }
return Files.copy(src, dst, StandardCopyOption.REPLACE_EXISTING);
} }


private Path copyPack(Path base, String srcSuffix, String dstSuffix) private Path copyPack(Path base, String srcSuffix, String dstSuffix)

+ 1
- 2
org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ObjectIdSerializerTest.java View File

try (InputStream in = new FileInputStream(file)) { try (InputStream in = new FileInputStream(file)) {
if (objectId == null) { if (objectId == null) {
return ObjectIdSerializer.read(in); return ObjectIdSerializer.read(in);
} else {
return ObjectIdSerializer.readWithoutMarker(in);
} }
return ObjectIdSerializer.readWithoutMarker(in);
} }
} }
} }

+ 1
- 2
org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RefDatabaseConflictingNamesTest.java View File

existing.put("refs/heads/a/b", null /* not used */); existing.put("refs/heads/a/b", null /* not used */);
existing.put("refs/heads/q", null /* not used */); existing.put("refs/heads/q", null /* not used */);
return existing; return existing;
} else {
return Collections.emptyMap();
} }
return Collections.emptyMap();
} }


@Override @Override

+ 6
- 7
org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/HttpAuthTest.java View File



@Override @Override
public String getHeaderField(String name) { public String getHeaderField(String name) {
if (!headerFields.containsKey(name))
if (!headerFields.containsKey(name)) {
return null; return null;
else {
int n = headerFields.get(name).size();
}
int n = headerFields.get(name).size();


if (n > 0)
return headerFields.get(name).get(n - 1);
else
return null;
if (n > 0) {
return headerFields.get(name).get(n - 1);
} }
return null;
} }


@Override @Override

+ 8
- 16
org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/WalkEncryptionTest.java View File

loadEnvVar(ENV_SECRET_KEY, SECRET_KEY, props); loadEnvVar(ENV_SECRET_KEY, SECRET_KEY, props);
loadEnvVar(ENV_BUCKET_NAME, TEST_BUCKET, props); loadEnvVar(ENV_BUCKET_NAME, TEST_BUCKET, props);
return props; return props;
} else {
return null;
} }
return null;
} }


static Properties fromEnvFile() throws Exception { static Properties fromEnvFile() throws Exception {
props.load(new FileInputStream(ENV_CONFIG_FILE)); props.load(new FileInputStream(ENV_CONFIG_FILE));
if (checkTestProps(props)) { if (checkTestProps(props)) {
return props; return props;
} else {
throw new Error("Environment config file is incomplete.");
} }
} else {
return null;
throw new Error("Environment config file is incomplete.");
} }
return null;
} }


static Properties fromSysProps() { static Properties fromSysProps() {
loadSysProp(SYS_SECRET_KEY, SECRET_KEY, props); loadSysProp(SYS_SECRET_KEY, SECRET_KEY, props);
loadSysProp(SYS_BUCKET_NAME, TEST_BUCKET, props); loadSysProp(SYS_BUCKET_NAME, TEST_BUCKET, props);
return props; return props;
} else {
return null;
} }
return null;
} }


static Properties fromSysFile() throws Exception { static Properties fromSysFile() throws Exception {
props.load(new FileInputStream(SYS_CONFIG_FILE)); props.load(new FileInputStream(SYS_CONFIG_FILE));
if (checkTestProps(props)) { if (checkTestProps(props)) {
return props; return props;
} else {
throw new Error("System props config file is incomplete.");
} }
} else {
return null;
throw new Error("System props config file is incomplete.");
} }
return null;
} }


static Properties fromConfigFile(String path) throws Exception { static Properties fromConfigFile(String path) throws Exception {
props.load(new FileInputStream(file)); props.load(new FileInputStream(file));
if (checkTestProps(props)) { if (checkTestProps(props)) {
return props; return props;
} else {
throw new Error("Props config file is incomplete: " + path);
} }
} else {
return null;
throw new Error("Props config file is incomplete: " + path);
} }
return null;
} }


/** /**

+ 1
- 1
org.eclipse.jgit.ui/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning

+ 1
- 1
org.eclipse.jgit/.settings/org.eclipse.jdt.core.prefs View File

org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning

+ 4
- 5
org.eclipse.jgit/src/org/eclipse/jgit/api/BlameCommand.java View File

byte[] buffer = new byte[upperSizeLimit]; byte[] buffer = new byte[upperSizeLimit];
try { try {
int read = IO.readFully(source, buffer, 0); int read = IO.readFully(source, buffer, 0);
if (read == upperSizeLimit)
if (read == upperSizeLimit) {
return buffer; return buffer;
else {
byte[] copy = new byte[read];
System.arraycopy(buffer, 0, copy, 0, read);
return copy;
} }
byte[] copy = new byte[read];
System.arraycopy(buffer, 0, copy, 0, read);
return copy;
} finally { } finally {
source.close(); source.close();
} }

+ 17
- 13
org.eclipse.jgit/src/org/eclipse/jgit/api/DiffCommand.java View File

} }
newTree = new DirCacheIterator(repo.readDirCache()); newTree = new DirCacheIterator(repo.readDirCache());
} else { } else {
if (oldTree == null)
if (oldTree == null) {
oldTree = new DirCacheIterator(repo.readDirCache()); oldTree = new DirCacheIterator(repo.readDirCache());
if (newTree == null)
}
if (newTree == null) {
newTree = new FileTreeIterator(repo); newTree = new FileTreeIterator(repo);
}
} }


diffFmt.setPathFilter(pathFilter); diffFmt.setPathFilter(pathFilter);


List<DiffEntry> result = diffFmt.scan(oldTree, newTree); List<DiffEntry> result = diffFmt.scan(oldTree, newTree);
if (showNameAndStatusOnly)
return result;
else {
if (contextLines >= 0)
diffFmt.setContext(contextLines);
if (destinationPrefix != null)
diffFmt.setNewPrefix(destinationPrefix);
if (sourcePrefix != null)
diffFmt.setOldPrefix(sourcePrefix);
diffFmt.format(result);
diffFmt.flush();
if (showNameAndStatusOnly) {
return result; return result;
} }
if (contextLines >= 0) {
diffFmt.setContext(contextLines);
}
if (destinationPrefix != null) {
diffFmt.setNewPrefix(destinationPrefix);
}
if (sourcePrefix != null) {
diffFmt.setOldPrefix(sourcePrefix);
}
diffFmt.format(result);
diffFmt.flush();
return result;
} catch (IOException e) { } catch (IOException e) {
throw new JGitInternalException(e.getMessage(), e); throw new JGitInternalException(e.getMessage(), e);
} }

+ 9
- 9
org.eclipse.jgit/src/org/eclipse/jgit/api/FetchCommand.java View File

* @return whether to remove refs which no longer exist in the source * @return whether to remove refs which no longer exist in the source
*/ */
public boolean isRemoveDeletedRefs() { public boolean isRemoveDeletedRefs() {
if (removeDeletedRefs != null)
if (removeDeletedRefs != null) {
return removeDeletedRefs.booleanValue(); return removeDeletedRefs.booleanValue();
else { // fall back to configuration
boolean result = false;
StoredConfig config = repo.getConfig();
result = config.getBoolean(ConfigConstants.CONFIG_FETCH_SECTION,
null, ConfigConstants.CONFIG_KEY_PRUNE, result);
result = config.getBoolean(ConfigConstants.CONFIG_REMOTE_SECTION,
remote, ConfigConstants.CONFIG_KEY_PRUNE, result);
return result;
} }
// fall back to configuration
boolean result = false;
StoredConfig config = repo.getConfig();
result = config.getBoolean(ConfigConstants.CONFIG_FETCH_SECTION, null,
ConfigConstants.CONFIG_KEY_PRUNE, result);
result = config.getBoolean(ConfigConstants.CONFIG_REMOTE_SECTION,
remote, ConfigConstants.CONFIG_KEY_PRUNE, result);
return result;
} }


/** /**

+ 1
- 2
org.eclipse.jgit/src/org/eclipse/jgit/api/GarbageCollectCommand.java View File

if (repo instanceof FileRepository) { if (repo instanceof FileRepository) {
GC gc = new GC((FileRepository) repo); GC gc = new GC((FileRepository) repo);
return toProperties(gc.getStatistics()); return toProperties(gc.getStatistics());
} else {
return new Properties();
} }
return new Properties();
} catch (IOException e) { } catch (IOException e) {
throw new JGitInternalException( throw new JGitInternalException(
JGitText.get().couldNotGetRepoStatistics, e); JGitText.get().couldNotGetRepoStatistics, e);

+ 17
- 20
org.eclipse.jgit/src/org/eclipse/jgit/api/MergeCommand.java View File

new ObjectId[] { headCommit.getId(), new ObjectId[] { headCommit.getId(),
srcCommit.getId() }, mergeStatus, srcCommit.getId() }, mergeStatus,
mergeStrategy, null, msg); mergeStrategy, null, msg);
} else {
if (failingPaths != null) {
repo.writeMergeCommitMsg(null);
repo.writeMergeHeads(null);
return new MergeResult(null, merger.getBaseCommitId(),
new ObjectId[] {
headCommit.getId(), srcCommit.getId() },
MergeStatus.FAILED, mergeStrategy,
lowLevelResults, failingPaths, null);
} else {
String mergeMessageWithConflicts = new MergeMessageFormatter()
.formatWithConflicts(mergeMessage,
unmergedPaths);
repo.writeMergeCommitMsg(mergeMessageWithConflicts);
return new MergeResult(null, merger.getBaseCommitId(),
new ObjectId[] { headCommit.getId(),
srcCommit.getId() },
MergeStatus.CONFLICTING, mergeStrategy,
lowLevelResults, null);
}
} }
if (failingPaths != null) {
repo.writeMergeCommitMsg(null);
repo.writeMergeHeads(null);
return new MergeResult(null, merger.getBaseCommitId(),
new ObjectId[] { headCommit.getId(),
srcCommit.getId() },
MergeStatus.FAILED, mergeStrategy, lowLevelResults,
failingPaths, null);
}
String mergeMessageWithConflicts = new MergeMessageFormatter()
.formatWithConflicts(mergeMessage, unmergedPaths);
repo.writeMergeCommitMsg(mergeMessageWithConflicts);
return new MergeResult(null, merger.getBaseCommitId(),
new ObjectId[] { headCommit.getId(),
srcCommit.getId() },
MergeStatus.CONFLICTING, mergeStrategy, lowLevelResults,
null);
} }
} catch (org.eclipse.jgit.errors.CheckoutConflictException e) { } catch (org.eclipse.jgit.errors.CheckoutConflictException e) {
List<String> conflicts = (dco == null) ? Collections List<String> conflicts = (dco == null) ? Collections

+ 5
- 4
org.eclipse.jgit/src/org/eclipse/jgit/api/PullCommand.java View File

Ref r = null; Ref r = null;
if (fetchRes != null) { if (fetchRes != null) {
r = fetchRes.getAdvertisedRef(remoteBranchName); r = fetchRes.getAdvertisedRef(remoteBranchName);
if (r == null)
if (r == null) {
r = fetchRes.getAdvertisedRef(Constants.R_HEADS r = fetchRes.getAdvertisedRef(Constants.R_HEADS
+ remoteBranchName); + remoteBranchName);
}
} }
if (r == null) { if (r == null) {
throw new RefNotAdvertisedException(MessageFormat.format( throw new RefNotAdvertisedException(MessageFormat.format(
JGitText.get().couldNotGetAdvertisedRef, remote, JGitText.get().couldNotGetAdvertisedRef, remote,
remoteBranchName)); remoteBranchName));
} else {
commitToMerge = r.getObjectId();
} }
commitToMerge = r.getObjectId();
} else { } else {
try { try {
commitToMerge = repo.resolve(remoteBranchName); commitToMerge = repo.resolve(remoteBranchName);
if (commitToMerge == null)
if (commitToMerge == null) {
throw new RefNotFoundException(MessageFormat.format( throw new RefNotFoundException(MessageFormat.format(
JGitText.get().refNotResolved, remoteBranchName)); JGitText.get().refNotResolved, remoteBranchName));
}
} catch (IOException e) { } catch (IOException e) {
throw new JGitInternalException( throw new JGitInternalException(
JGitText.get().exceptionCaughtDuringExecutionOfPullCommand, JGitText.get().exceptionCaughtDuringExecutionOfPullCommand,

+ 9
- 9
org.eclipse.jgit/src/org/eclipse/jgit/api/RebaseCommand.java View File

monitor.beginTask(MessageFormat.format( monitor.beginTask(MessageFormat.format(
JGitText.get().applyingCommit, JGitText.get().applyingCommit,
commitToPick.getShortMessage()), ProgressMonitor.UNKNOWN); commitToPick.getShortMessage()), ProgressMonitor.UNKNOWN);
if (preserveMerges)
if (preserveMerges) {
return cherryPickCommitPreservingMerges(commitToPick); return cherryPickCommitPreservingMerges(commitToPick);
else
return cherryPickCommitFlattening(commitToPick);
}
return cherryPickCommitFlattening(commitToPick);
} finally { } finally {
monitor.endTask(); monitor.endTask();
} }
.call(); .call();
switch (cherryPickResult.getStatus()) { switch (cherryPickResult.getStatus()) {
case FAILED: case FAILED:
if (operation == Operation.BEGIN)
if (operation == Operation.BEGIN) {
return abort(RebaseResult return abort(RebaseResult
.failed(cherryPickResult.getFailingPaths())); .failed(cherryPickResult.getFailingPaths()));
else
return stop(commitToPick, Status.STOPPED);
}
return stop(commitToPick, Status.STOPPED);
case CONFLICTING: case CONFLICTING:
return stop(commitToPick, Status.STOPPED); return stop(commitToPick, Status.STOPPED);
case OK: case OK:
CherryPickResult cherryPickResult = pickCommand.call(); CherryPickResult cherryPickResult = pickCommand.call();
switch (cherryPickResult.getStatus()) { switch (cherryPickResult.getStatus()) {
case FAILED: case FAILED:
if (operation == Operation.BEGIN)
if (operation == Operation.BEGIN) {
return abort(RebaseResult.failed( return abort(RebaseResult.failed(
cherryPickResult.getFailingPaths())); cherryPickResult.getFailingPaths()));
else
return stop(commitToPick, Status.STOPPED);
}
return stop(commitToPick, Status.STOPPED);
case CONFLICTING: case CONFLICTING:
return stop(commitToPick, Status.STOPPED); return stop(commitToPick, Status.STOPPED);
case OK: case OK:

+ 3
- 3
org.eclipse.jgit/src/org/eclipse/jgit/api/ResetCommand.java View File

} }


private String getRefOrHEAD() { private String getRefOrHEAD() {
if (ref != null)
if (ref != null) {
return ref; return ref;
else
return Constants.HEAD;
}
return Constants.HEAD;
} }


/** /**

+ 3
- 3
org.eclipse.jgit/src/org/eclipse/jgit/api/SubmoduleSyncCommand.java View File

*/ */
protected String getHeadBranch(Repository subRepo) throws IOException { protected String getHeadBranch(Repository subRepo) throws IOException {
Ref head = subRepo.exactRef(Constants.HEAD); Ref head = subRepo.exactRef(Constants.HEAD);
if (head != null && head.isSymbolic())
if (head != null && head.isSymbolic()) {
return Repository.shortenRefName(head.getLeaf().getName()); return Repository.shortenRefName(head.getLeaf().getName());
else
return null;
}
return null;
} }


/** {@inheritDoc} */ /** {@inheritDoc} */

+ 5
- 5
org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameResult.java View File

*/ */
public int computeNext() throws IOException { public int computeNext() throws IOException {
BlameGenerator gen = generator; BlameGenerator gen = generator;
if (gen == null)
if (gen == null) {
return -1; return -1;
}


if (gen.next()) { if (gen.next()) {
loadFrom(gen); loadFrom(gen);
lastLength = gen.getRegionLength(); lastLength = gen.getRegionLength();
return gen.getResultStart(); return gen.getResultStart();
} else {
gen.close();
generator = null;
return -1;
} }
gen.close();
generator = null;
return -1;
} }


/** /**

+ 2
- 2
org.eclipse.jgit/src/org/eclipse/jgit/diff/DiffFormatter.java View File

CanonicalTreeParser parser = new CanonicalTreeParser(); CanonicalTreeParser parser = new CanonicalTreeParser();
parser.reset(reader, tree); parser.reset(reader, tree);
return parser; return parser;
} else
return new EmptyTreeIterator();
}
return new EmptyTreeIterator();
} }


/** /**

+ 9
- 9
org.eclipse.jgit/src/org/eclipse/jgit/diff/Edit.java View File

*/ */
public final Type getType() { public final Type getType() {
if (beginA < endA) { if (beginA < endA) {
if (beginB < endB)
if (beginB < endB) {
return Type.REPLACE; return Type.REPLACE;
else /* if (beginB == endB) */
return Type.DELETE;

} else /* if (beginA == endA) */{
if (beginB < endB)
return Type.INSERT;
else /* if (beginB == endB) */
return Type.EMPTY;
}
return Type.DELETE;

}
if (beginB < endB) {
return Type.INSERT;
} }
// beginB == endB)
return Type.EMPTY;
} }


/** /**

+ 7
- 5
org.eclipse.jgit/src/org/eclipse/jgit/diff/RawText.java View File

* @return the line delimiter or <code>null</code> * @return the line delimiter or <code>null</code>
*/ */
public String getLineDelimiter() { public String getLineDelimiter() {
if (size() == 0)
if (size() == 0) {
return null; return null;
}
int e = getEnd(0); int e = getEnd(0);
if (content[e - 1] != '\n')
if (content[e - 1] != '\n') {
return null; return null;
if (content.length > 1 && e > 1 && content[e - 2] == '\r')
}
if (content.length > 1 && e > 1 && content[e - 2] == '\r') {
return "\r\n"; //$NON-NLS-1$ return "\r\n"; //$NON-NLS-1$
else
return "\n"; //$NON-NLS-1$
}
return "\n"; //$NON-NLS-1$
} }


/** /**

+ 24
- 22
org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCacheCheckout.java View File

prescanOneTree(); prescanOneTree();


if (!conflicts.isEmpty()) { if (!conflicts.isEmpty()) {
if (failOnConflict)
if (failOnConflict) {
throw new CheckoutConflictException(conflicts.toArray(new String[0])); throw new CheckoutConflictException(conflicts.toArray(new String[0]));
else
cleanUpConflicts();
}
cleanUpConflicts();
} }


// update our index // update our index
// the workingtree entry doesn't exist or also contains a folder // the workingtree entry doesn't exist or also contains a folder
// -> no problem // -> no problem
return; return;
} else {
// the workingtree entry exists and is not a folder
if (!idEqual(h, m)) {
// Because HEAD and MERGE differ we will try to update the
// workingtree with a folder -> return a conflict
conflict(name, null, null, null);
}
return;
} }
// the workingtree entry exists and is not a folder
if (!idEqual(h, m)) {
// Because HEAD and MERGE differ we will try to update the
// workingtree with a folder -> return a conflict
conflict(name, null, null, null);
}
return;
} }


if ((ffMask == 0x00F) && f != null && FileMode.TREE.equals(f.getEntryFileMode())) { if ((ffMask == 0x00F) && f != null && FileMode.TREE.equals(f.getEntryFileMode())) {
// Something in Head // Something in Head


if (!FileMode.TREE.equals(f.getEntryFileMode()) if (!FileMode.TREE.equals(f.getEntryFileMode())
&& FileMode.TREE.equals(iMode))
&& FileMode.TREE.equals(iMode)) {
// The workingtree contains a file and the index semantically contains a folder. // The workingtree contains a file and the index semantically contains a folder.
// Git considers the workingtree file as untracked. Just keep the untracked file. // Git considers the workingtree file as untracked. Just keep the untracked file.
return; return;
else
// -> file is dirty and tracked but is should be
// removed. That's a conflict
conflict(name, dce, h, m);
} else
}
// -> file is dirty and tracked but is should be
// removed. That's a conflict
conflict(name, dce, h, m);
} else {
// file doesn't exist or is clean // file doesn't exist or is clean
// Index contains the same as Head // Index contains the same as Head
// Something different from a submodule in Index // Something different from a submodule in Index
// Something in Head // Something in Head
// -> Remove from index and delete the file // -> Remove from index and delete the file
remove(name); remove(name);
} else
}
} else {
// Index contains something different from Head // Index contains something different from Head
// Something different from a submodule in Index // Something different from a submodule in Index
// Nothing in Merge // Nothing in Merge
// filesystem). But Merge wants the path to be removed. // filesystem). But Merge wants the path to be removed.
// Report a conflict // Report a conflict
conflict(name, dce, h, m); conflict(name, dce, h, m);
}
} }
} else { } else {
// Something in Merge // Something in Merge
private boolean isModified_IndexTree(String path, ObjectId iId, private boolean isModified_IndexTree(String path, ObjectId iId,
FileMode iMode, ObjectId tId, FileMode tMode, ObjectId rootTree) FileMode iMode, ObjectId tId, FileMode tMode, ObjectId rootTree)
throws CorruptObjectException, IOException { throws CorruptObjectException, IOException {
if (iMode != tMode)
if (iMode != tMode) {
return true; return true;
}
if (FileMode.TREE.equals(iMode) if (FileMode.TREE.equals(iMode)
&& (iId == null || ObjectId.zeroId().equals(iId)))
&& (iId == null || ObjectId.zeroId().equals(iId))) {
return isModifiedSubtree_IndexTree(path, rootTree); return isModifiedSubtree_IndexTree(path, rootTree);
else
return !equalIdAndMode(iId, iMode, tId, tMode);
}
return !equalIdAndMode(iId, iMode, tId, tMode);
} }


/** /**

+ 3
- 3
org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCacheEntry.java View File

} }


private int getExtendedFlags() { private int getExtendedFlags() {
if (isExtended())
if (isExtended()) {
return NB.decodeUInt16(info, infoOffset + P_FLAGS2) << 16; return NB.decodeUInt16(info, infoOffset + P_FLAGS2) << 16;
else
return 0;
}
return 0;
} }


private static void checkPath(byte[] path) { private static void checkPath(byte[] path) {

+ 3
- 3
org.eclipse.jgit/src/org/eclipse/jgit/fnmatch/AbstractHead.java View File

/** {@inheritDoc} */ /** {@inheritDoc} */
@Override @Override
public List<Head> getNextHeads(char c) { public List<Head> getNextHeads(char c) {
if (matches(c))
if (matches(c)) {
return newHeads; return newHeads;
else
return FileNameMatcher.EMPTY_HEAD_LIST;
}
return FileNameMatcher.EMPTY_HEAD_LIST;
} }


boolean isStar() { boolean isStar() {

+ 3
- 3
org.eclipse.jgit/src/org/eclipse/jgit/fnmatch/FileNameMatcher.java View File



private static AbstractHead createWildCardHead( private static AbstractHead createWildCardHead(
final Character invalidWildgetCharacter, final boolean star) { final Character invalidWildgetCharacter, final boolean star) {
if (invalidWildgetCharacter != null)
if (invalidWildgetCharacter != null) {
return new RestrictedWildCardHead(invalidWildgetCharacter return new RestrictedWildCardHead(invalidWildgetCharacter
.charValue(), star); .charValue(), star);
else
return new WildCardHead(star);
}
return new WildCardHead(star);
} }


/** /**

+ 3
- 4
org.eclipse.jgit/src/org/eclipse/jgit/gitrepo/ManifestParser.java View File

String revision = defaultRevision; String revision = defaultRevision;
if (remote == null) { if (remote == null) {
if (defaultRemote == null) { if (defaultRemote == null) {
if (filename != null)
if (filename != null) {
throw new SAXException(MessageFormat.format( throw new SAXException(MessageFormat.format(
RepoText.get().errorNoDefaultFilename, RepoText.get().errorNoDefaultFilename,
filename)); filename));
else
throw new SAXException(
RepoText.get().errorNoDefault);
}
throw new SAXException(RepoText.get().errorNoDefault);
} }
remote = defaultRemote; remote = defaultRemote;
} else { } else {

+ 10
- 11
org.eclipse.jgit/src/org/eclipse/jgit/gitrepo/RepoCommand.java View File

} catch (GitAPIException | IOException e) { } catch (GitAPIException | IOException e) {
throw new ManifestErrorException(e); throw new ManifestErrorException(e);
} }
} else {
try (Git git = new Git(repo)) {
for (RepoProject proj : filteredProjects) {
addSubmodule(proj.getName(), proj.getUrl(), proj.getPath(),
proj.getRevision(), proj.getCopyFiles(),
proj.getLinkFiles(), git);
}
return git.commit().setMessage(RepoText.get().repoCommitMessage)
.call();
} catch (GitAPIException | IOException e) {
throw new ManifestErrorException(e);
}
try (Git git = new Git(repo)) {
for (RepoProject proj : filteredProjects) {
addSubmodule(proj.getName(), proj.getUrl(), proj.getPath(),
proj.getRevision(), proj.getCopyFiles(),
proj.getLinkFiles(), git);
} }
return git.commit().setMessage(RepoText.get().repoCommitMessage)
.call();
} catch (GitAPIException | IOException e) {
throw new ManifestErrorException(e);
} }
} }



+ 3
- 3
org.eclipse.jgit/src/org/eclipse/jgit/gitrepo/RepoProject.java View File

} }


private String getPathWithSlash() { private String getPathWithSlash() {
if (path.endsWith("/")) //$NON-NLS-1$
if (path.endsWith("/")) { //$NON-NLS-1$
return path; return path;
else
return path + "/"; //$NON-NLS-1$
}
return path + "/"; //$NON-NLS-1$
} }


/** /**

+ 18
- 19
org.eclipse.jgit/src/org/eclipse/jgit/ignore/internal/PathMatcher.java View File

// We had a prefix match here. // We had a prefix match here.
if (!pathMatch) { if (!pathMatch) {
return true; return true;
}
if (right == endExcl - 1) {
// Extra slash at the end: actually a full match.
// Must meet directory expectations
return !dirOnly || assumeDirectory;
}
// Prefix matches only if pattern ended with /**
if (wasWild) {
return true;
}
if (lastWildmatch >= 0) {
// Consider pattern **/x and input x/x.
// We've matched the prefix x/ so far: we
// must try to extend the **!
matcher = lastWildmatch + 1;
right = wildmatchBacktrackPos;
wildmatchBacktrackPos = -1;
} else { } else {
if (right == endExcl - 1) {
// Extra slash at the end: actually a full match.
// Must meet directory expectations
return !dirOnly || assumeDirectory;
}
// Prefix matches only if pattern ended with /**
if (wasWild) {
return true;
}
if (lastWildmatch >= 0) {
// Consider pattern **/x and input x/x.
// We've matched the prefix x/ so far: we
// must try to extend the **!
matcher = lastWildmatch + 1;
right = wildmatchBacktrackPos;
wildmatchBacktrackPos = -1;
} else {
return false;
}
return false;
} }
} }
} else if (lastWildmatch != -1) { } else if (lastWildmatch != -1) {

+ 13
- 15
org.eclipse.jgit/src/org/eclipse/jgit/ignore/internal/Strings.java View File

} }
if (pattern.indexOf('?') != -1) { if (pattern.indexOf('?') != -1) {
return true; return true;
} else {
// check if the backslash escapes one of the glob special characters
// if not, backslash is not part of a regex and treated literally
int backSlash = pattern.indexOf('\\');
if (backSlash >= 0) {
int nextIdx = backSlash + 1;
if (pattern.length() == nextIdx) {
return false;
}
char nextChar = pattern.charAt(nextIdx);
if (escapedByBackslash(nextChar)) {
return true;
} else {
return false;
}
}
// check if the backslash escapes one of the glob special characters
// if not, backslash is not part of a regex and treated literally
int backSlash = pattern.indexOf('\\');
if (backSlash >= 0) {
int nextIdx = backSlash + 1;
if (pattern.length() == nextIdx) {
return false;
}
char nextChar = pattern.charAt(nextIdx);
if (escapedByBackslash(nextChar)) {
return true;
} }
return false;
} }
return false; return false;
} }

+ 1
- 2
org.eclipse.jgit/src/org/eclipse/jgit/internal/ketch/LagCheck.java View File

// TODO(sop) Check term to see if my leader was deposed. // TODO(sop) Check term to see if my leader was deposed.
if (rw.isMergedInto(head, remote)) { if (rw.isMergedInto(head, remote)) {
return AHEAD; return AHEAD;
} else {
return DIVERGENT;
} }
return DIVERGENT;
} catch (IOException err) { } catch (IOException err) {
KetchReplica.log.error(String.format( KetchReplica.log.error(String.format(
"Cannot compare %s", //$NON-NLS-1$ "Cannot compare %s", //$NON-NLS-1$

+ 4
- 7
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsRefDatabase.java View File

rw.peel(obj).copy(), rw.peel(obj).copy(),
hasVersioning() ? leaf.getUpdateIndex() hasVersioning() ? leaf.getUpdateIndex()
: UNDEFINED_UPDATE_INDEX); : UNDEFINED_UPDATE_INDEX);
} else {
return new ObjectIdRef.PeeledNonTag(
leaf.getStorage(),
leaf.getName(),
leaf.getObjectId(),
hasVersioning() ? leaf.getUpdateIndex()
: UNDEFINED_UPDATE_INDEX);
} }
return new ObjectIdRef.PeeledNonTag(leaf.getStorage(),
leaf.getName(), leaf.getObjectId(),
hasVersioning() ? leaf.getUpdateIndex()
: UNDEFINED_UPDATE_INDEX);
} }
} }



+ 1
- 2
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/FileRepository.java View File

File directory = getDirectory(); File directory = getDirectory();
if (directory != null) { if (directory != null) {
return directory.getPath(); return directory.getPath();
} else {
throw new IllegalStateException();
} }
throw new IllegalStateException();
} }


/** {@inheritDoc} */ /** {@inheritDoc} */

+ 3
- 4
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/GcLog.java View File

boolean commit() { boolean commit() {
if (nonEmpty) { if (nonEmpty) {
return lock.commit(); return lock.commit();
} else {
logFile.delete();
lock.unlock();
return true;
} }
logFile.delete();
lock.unlock();
return true;
} }


/** /**

+ 6
- 8
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/ObjectDirectoryInserter.java View File

ObjectId id = idFor(type, data, off, len); ObjectId id = idFor(type, data, off, len);
if (!createDuplicate && db.has(id)) { if (!createDuplicate && db.has(id)) {
return id; return id;
} else {
File tmp = toTemp(type, data, off, len);
return insertOneObject(tmp, id, createDuplicate);
} }
File tmp = toTemp(type, data, off, len);
return insertOneObject(tmp, id, createDuplicate);
} }


/** {@inheritDoc} */ /** {@inheritDoc} */
int actLen = IO.readFully(is, buf, 0); int actLen = IO.readFully(is, buf, 0);
return insert(type, buf, 0, actLen, createDuplicate); return insert(type, buf, 0, actLen, createDuplicate);


} else {
SHA1 md = digest();
File tmp = toTemp(md, type, len, is);
ObjectId id = md.toObjectId();
return insertOneObject(tmp, id, createDuplicate);
} }
SHA1 md = digest();
File tmp = toTemp(md, type, len, is);
ObjectId id = md.toObjectId();
return insertOneObject(tmp, id, createDuplicate);
} }


private ObjectId insertOneObject( private ObjectId insertOneObject(

+ 6
- 5
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/PackFile.java View File

case Constants.OBJ_TREE: case Constants.OBJ_TREE:
case Constants.OBJ_BLOB: case Constants.OBJ_BLOB:
case Constants.OBJ_TAG: { case Constants.OBJ_TAG: {
if (delta != null || sz < curs.getStreamFileThreshold())
if (delta != null || sz < curs.getStreamFileThreshold()) {
data = decompress(pos + p, (int) sz, curs); data = decompress(pos + p, (int) sz, curs);
}


if (delta != null) { if (delta != null) {
type = typeCode; type = typeCode;
break SEARCH; break SEARCH;
} }


if (data != null)
if (data != null) {
return new ObjectLoader.SmallObject(typeCode, data); return new ObjectLoader.SmallObject(typeCode, data);
else
return new LargePackedWholeObject(typeCode, sz, pos, p,
this, curs.db);
}
return new LargePackedWholeObject(typeCode, sz, pos, p,
this, curs.db);
} }


case Constants.OBJ_OFS_DELTA: { case Constants.OBJ_OFS_DELTA: {

+ 5
- 9
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/RefDirectory.java View File

if (obj instanceof RevTag) { if (obj instanceof RevTag) {
return new ObjectIdRef.PeeledTag(leaf.getStorage(), leaf return new ObjectIdRef.PeeledTag(leaf.getStorage(), leaf
.getName(), leaf.getObjectId(), rw.peel(obj).copy()); .getName(), leaf.getObjectId(), rw.peel(obj).copy());
} else {
return new ObjectIdRef.PeeledNonTag(leaf.getStorage(), leaf
.getName(), leaf.getObjectId());
} }
return new ObjectIdRef.PeeledNonTag(leaf.getStorage(),
leaf.getName(), leaf.getObjectId());
} }
} }


if (peeledObjectId != null) { if (peeledObjectId != null) {
return new ObjectIdRef.PeeledTag(PACKED, f.getName(), return new ObjectIdRef.PeeledTag(PACKED, f.getName(),
f.getObjectId(), peeledObjectId); f.getObjectId(), peeledObjectId);
} else {
return new ObjectIdRef.PeeledNonTag(PACKED, f.getName(),
f.getObjectId());
} }
return new ObjectIdRef.PeeledNonTag(PACKED, f.getName(),
f.getObjectId());
} }


void log(boolean force, RefUpdate update, String msg, boolean deref) void log(boolean force, RefUpdate update, String msg, boolean deref)
if (peeledObjectId != null) { if (peeledObjectId != null) {
return new LoosePeeledTag(snapShot, getName(), return new LoosePeeledTag(snapShot, getName(),
objectId, peeledObjectId); objectId, peeledObjectId);
} else {
return new LooseNonTag(snapShot, getName(),
objectId);
} }
return new LooseNonTag(snapShot, getName(), objectId);
} }
} }



+ 1
- 2
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/RefDirectoryUpdate.java View File

dst = database.findRef(name); dst = database.findRef(name);
setOldObjectId(dst != null ? dst.getObjectId() : null); setOldObjectId(dst != null ? dst.getObjectId() : null);
return true; return true;
} else {
return false;
} }
return false;
} }


/** {@inheritDoc} */ /** {@inheritDoc} */

+ 3
- 3
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/ReflogEntryImpl.java View File

/** {@inheritDoc} */ /** {@inheritDoc} */
@Override @Override
public CheckoutEntry parseCheckout() { public CheckoutEntry parseCheckout() {
if (getComment().startsWith(CheckoutEntryImpl.CHECKOUT_MOVING_FROM))
if (getComment().startsWith(CheckoutEntryImpl.CHECKOUT_MOVING_FROM)) {
return new CheckoutEntryImpl(this); return new CheckoutEntryImpl(this);
else
return null;
}
return null;
} }
} }

+ 50
- 52
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/UnpackedObject.java View File

} }
return new LargeObject(type, size, path, id, wc.db); return new LargeObject(type, size, path, id, wc.db);


} else {
readSome(in, hdr, 2, 18);
int c = hdr[0] & 0xff;
int type = (c >> 4) & 7;
long size = c & 15;
int shift = 4;
int p = 1;
while ((c & 0x80) != 0) {
c = hdr[p++] & 0xff;
size += ((long) (c & 0x7f)) << shift;
shift += 7;
}
}
readSome(in, hdr, 2, 18);
int c = hdr[0] & 0xff;
int type = (c >> 4) & 7;
long size = c & 15;
int shift = 4;
int p = 1;
while ((c & 0x80) != 0) {
c = hdr[p++] & 0xff;
size += ((long) (c & 0x7f)) << shift;
shift += 7;
}


switch (type) {
case Constants.OBJ_COMMIT:
case Constants.OBJ_TREE:
case Constants.OBJ_BLOB:
case Constants.OBJ_TAG:
// Acceptable types for a loose object.
break;
default:
throw new CorruptObjectException(id,
JGitText.get().corruptObjectInvalidType);
}
switch (type) {
case Constants.OBJ_COMMIT:
case Constants.OBJ_TREE:
case Constants.OBJ_BLOB:
case Constants.OBJ_TAG:
// Acceptable types for a loose object.
break;
default:
throw new CorruptObjectException(id,
JGitText.get().corruptObjectInvalidType);
}


if (path == null && Integer.MAX_VALUE < size) {
LargeObjectException.ExceedsByteArrayLimit e;
e = new LargeObjectException.ExceedsByteArrayLimit();
e.setObjectId(id);
throw e;
}
if (size < wc.getStreamFileThreshold() || path == null) {
in.reset();
IO.skipFully(in, p);
Inflater inf = wc.inflater();
InputStream zIn = inflate(in, inf);
byte[] data = new byte[(int) size];
IO.readFully(zIn, data, 0, data.length);
checkValidEndOfStream(in, inf, id, hdr);
return new ObjectLoader.SmallObject(type, data);
}
return new LargeObject(type, size, path, id, wc.db);
if (path == null && Integer.MAX_VALUE < size) {
LargeObjectException.ExceedsByteArrayLimit e;
e = new LargeObjectException.ExceedsByteArrayLimit();
e.setObjectId(id);
throw e;
} }
if (size < wc.getStreamFileThreshold() || path == null) {
in.reset();
IO.skipFully(in, p);
Inflater inf = wc.inflater();
InputStream zIn = inflate(in, inf);
byte[] data = new byte[(int) size];
IO.readFully(zIn, data, 0, data.length);
checkValidEndOfStream(in, inf, id, hdr);
return new ObjectLoader.SmallObject(type, data);
}
return new LargeObject(type, size, path, id, wc.db);
} catch (ZipException badStream) { } catch (ZipException badStream) {
throw new CorruptObjectException(id, throw new CorruptObjectException(id,
JGitText.get().corruptObjectBadStream); JGitText.get().corruptObjectBadStream);
JGitText.get().corruptObjectNegativeSize); JGitText.get().corruptObjectNegativeSize);
return size; return size;


} else {
readSome(in, hdr, 2, 18);
int c = hdr[0] & 0xff;
long size = c & 15;
int shift = 4;
int p = 1;
while ((c & 0x80) != 0) {
c = hdr[p++] & 0xff;
size += ((long) (c & 0x7f)) << shift;
shift += 7;
}
return size;
} }
readSome(in, hdr, 2, 18);
int c = hdr[0] & 0xff;
long size = c & 15;
int shift = 4;
int p = 1;
while ((c & 0x80) != 0) {
c = hdr[p++] & 0xff;
size += ((long) (c & 0x7f)) << shift;
shift += 7;
}
return size;
} catch (ZipException badStream) { } catch (ZipException badStream) {
throw new CorruptObjectException(id, throw new CorruptObjectException(id,
JGitText.get().corruptObjectBadStream); JGitText.get().corruptObjectBadStream);

+ 7
- 5
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/UnpackedObjectCache.java View File

for (int n = 0; n < MAX_CHAIN;) { for (int n = 0; n < MAX_CHAIN;) {
ObjectId obj = ids.get(i); ObjectId obj = ids.get(i);
if (obj == null) { if (obj == null) {
if (ids.compareAndSet(i, null, toAdd.copy()))
if (ids.compareAndSet(i, null, toAdd.copy())) {
return true; return true;
else
continue;
}
continue;
} }


if (AnyObjectId.isEqual(obj, toAdd))
if (AnyObjectId.isEqual(obj, toAdd)) {
return true; return true;
}


if (++i == ids.length())
if (++i == ids.length()) {
i = 0; i = 0;
}
n++; n++;
} }
return false; return false;

+ 9
- 9
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/pack/PackWriter.java View File

NullProgressMonitor.INSTANCE, NullProgressMonitor.INSTANCE,
Collections.singleton(otp)); Collections.singleton(otp));
continue; continue;
} else {
// Object writing already started, we cannot recover.
//
CorruptObjectException coe;
coe = new CorruptObjectException(otp, ""); //$NON-NLS-1$
coe.initCause(gone);
throw coe;
} }
// Object writing already started, we cannot recover.
//
CorruptObjectException coe;
coe = new CorruptObjectException(otp, ""); //$NON-NLS-1$
coe.initCause(gone);
throw coe;
} }
} }


// If we reached here, reuse wasn't possible. // If we reached here, reuse wasn't possible.
// //
if (otp.isDeltaRepresentation())
if (otp.isDeltaRepresentation()) {
writeDeltaObjectDeflate(out, otp); writeDeltaObjectDeflate(out, otp);
else
} else {
writeWholeObjectDeflate(out, otp); writeWholeObjectDeflate(out, otp);
}
out.endObject(); out.endObject();
otp.setCRC((int) crc32.getValue()); otp.setCRC((int) crc32.getValue());
} }

+ 8
- 12
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftable/ReftableDatabase.java View File

if (newRef.isSymbolic()) { if (newRef.isSymbolic()) {
return ReceiveCommand.link(oldRef.getTarget().getName(), return ReceiveCommand.link(oldRef.getTarget().getName(),
newRef.getTarget().getName(), name); newRef.getTarget().getName(), name);
} else {
// This should pass in oldId for compat with
// RefDirectoryUpdate
return ReceiveCommand.unlink(oldRef.getTarget().getName(),
newId, name);
} }
} else {
// This should pass in oldId for compat with
// RefDirectoryUpdate
return ReceiveCommand.unlink(oldRef.getTarget().getName(), return ReceiveCommand.unlink(oldRef.getTarget().getName(),
ObjectId.zeroId(), name);
newId, name);
} }
return ReceiveCommand.unlink(oldRef.getTarget().getName(),
ObjectId.zeroId(), name);
} }


if (newRef != null && newRef.isSymbolic()) { if (newRef != null && newRef.isSymbolic()) {
if (oldRef.isSymbolic()) { if (oldRef.isSymbolic()) {
return ReceiveCommand.link(oldRef.getTarget().getName(), return ReceiveCommand.link(oldRef.getTarget().getName(),
newRef.getTarget().getName(), name); newRef.getTarget().getName(), name);
} else {
return ReceiveCommand.link(oldId,
newRef.getTarget().getName(), name);
} }
} else {
return ReceiveCommand.link(ObjectId.zeroId(),
return ReceiveCommand.link(oldId,
newRef.getTarget().getName(), name); newRef.getTarget().getName(), name);
} }
return ReceiveCommand.link(ObjectId.zeroId(),
newRef.getTarget().getName(), name);
} }


return new ReceiveCommand(oldId, newId, name); return new ReceiveCommand(oldId, newId, name);

+ 1
- 2
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftree/RefTreeBatch.java View File

if (isAtomic()) { if (isAtomic()) {
ReceiveCommand.abort(getCommands()); ReceiveCommand.abort(getCommands());
return; return;
} else {
continue;
} }
continue;
} }
} }
todo.add(new Command(rw, c)); todo.add(new Command(rw, c));

+ 1
- 2
org.eclipse.jgit/src/org/eclipse/jgit/internal/transport/http/NetscapeCookieFileCache.java View File

public static NetscapeCookieFileCache getInstance(HttpConfig config) { public static NetscapeCookieFileCache getInstance(HttpConfig config) {
if (instance == null) { if (instance == null) {
return new NetscapeCookieFileCache(config); return new NetscapeCookieFileCache(config);
} else {
return instance;
} }
return instance;
} }


/** /**

+ 3
- 5
org.eclipse.jgit/src/org/eclipse/jgit/internal/transport/ssh/OpenSshConfigFile.java View File

private static boolean isHostMatch(String pattern, String name) { private static boolean isHostMatch(String pattern, String name) {
if (pattern.startsWith("!")) { //$NON-NLS-1$ if (pattern.startsWith("!")) { //$NON-NLS-1$
return !patternMatchesHost(pattern.substring(1), name); return !patternMatchesHost(pattern.substring(1), name);
} else {
return patternMatchesHost(pattern, name);
} }
return patternMatchesHost(pattern, name);
} }


private static boolean patternMatchesHost(String pattern, String name) { private static boolean patternMatchesHost(String pattern, String name) {
} }
fn.append(name); fn.append(name);
return fn.isMatch(); return fn.isMatch();
} else {
// Not a pattern but a full host name
return pattern.equals(name);
} }
// Not a pattern but a full host name
return pattern.equals(name);
} }


private static String dequote(String value) { private static String dequote(String value) {

+ 3
- 3
org.eclipse.jgit/src/org/eclipse/jgit/lib/AnyObjectId.java View File

/** {@inheritDoc} */ /** {@inheritDoc} */
@Override @Override
public final boolean equals(Object o) { public final boolean equals(Object o) {
if (o instanceof AnyObjectId)
if (o instanceof AnyObjectId) {
return equals((AnyObjectId) o); return equals((AnyObjectId) o);
else
return false;
}
return false;
} }


/** /**

+ 11
- 8
org.eclipse.jgit/src/org/eclipse/jgit/lib/BaseRepositoryBuilder.java View File

private static File getSymRef(File workTree, File dotGit, FS fs) private static File getSymRef(File workTree, File dotGit, FS fs)
throws IOException { throws IOException {
byte[] content = IO.readFully(dotGit); byte[] content = IO.readFully(dotGit);
if (!isSymRef(content))
if (!isSymRef(content)) {
throw new IOException(MessageFormat.format( throw new IOException(MessageFormat.format(
JGitText.get().invalidGitdirRef, dotGit.getAbsolutePath())); JGitText.get().invalidGitdirRef, dotGit.getAbsolutePath()));
}


int pathStart = 8; int pathStart = 8;
int lineEnd = RawParseUtils.nextLF(content, pathStart); int lineEnd = RawParseUtils.nextLF(content, pathStart);
while (content[lineEnd - 1] == '\n' || while (content[lineEnd - 1] == '\n' ||
(content[lineEnd - 1] == '\r' && SystemReader.getInstance().isWindows()))
(content[lineEnd - 1] == '\r'
&& SystemReader.getInstance().isWindows())) {
lineEnd--; lineEnd--;
if (lineEnd == pathStart)
}
if (lineEnd == pathStart) {
throw new IOException(MessageFormat.format( throw new IOException(MessageFormat.format(
JGitText.get().invalidGitdirRef, dotGit.getAbsolutePath())); JGitText.get().invalidGitdirRef, dotGit.getAbsolutePath()));
}


String gitdirPath = RawParseUtils.decode(content, pathStart, lineEnd); String gitdirPath = RawParseUtils.decode(content, pathStart, lineEnd);
File gitdirFile = fs.resolve(workTree, gitdirPath); File gitdirFile = fs.resolve(workTree, gitdirPath);
if (gitdirFile.isAbsolute())
if (gitdirFile.isAbsolute()) {
return gitdirFile; return gitdirFile;
else
return new File(workTree, gitdirPath).getCanonicalFile();
}
return new File(workTree, gitdirPath).getCanonicalFile();
} }


private FS fs; private FS fs;
.getAbsolutePath(), err.getMessage())); .getAbsolutePath(), err.getMessage()));
} }
return cfg; return cfg;
} else {
return new Config();
} }
return new Config();
} }


private File guessWorkTreeOrFail() throws IOException { private File guessWorkTreeOrFail() throws IOException {

+ 3
- 3
org.eclipse.jgit/src/org/eclipse/jgit/lib/BranchConfig.java View File



private String getRemoteOrDefault() { private String getRemoteOrDefault() {
String remote = getRemote(); String remote = getRemote();
if (remote == null)
if (remote == null) {
return Constants.DEFAULT_REMOTE_NAME; return Constants.DEFAULT_REMOTE_NAME;
else
return remote;
}
return remote;
} }
} }

+ 5
- 6
org.eclipse.jgit/src/org/eclipse/jgit/lib/Config.java View File

} }
trailingSpaces.append(cc); trailingSpaces.append(cc);
continue; continue;
} else {
inLeadingSpace = false;
if (trailingSpaces != null) {
value.append(trailingSpaces);
trailingSpaces.setLength(0);
}
}
inLeadingSpace = false;
if (trailingSpaces != null) {
value.append(trailingSpaces);
trailingSpaces.setLength(0);
} }


if ('\\' == c) { if ('\\' == c) {

+ 2
- 4
org.eclipse.jgit/src/org/eclipse/jgit/lib/DefaultTypedConfigGetter.java View File

throw new IllegalArgumentException( throw new IllegalArgumentException(
MessageFormat.format(JGitText.get().enumValueNotSupported3, MessageFormat.format(JGitText.get().enumValueNotSupported3,
section, subsection, name, value)); section, subsection, name, value));
} else {
throw new IllegalArgumentException(
MessageFormat.format(JGitText.get().enumValueNotSupported2,
section, name, value));
} }
throw new IllegalArgumentException(MessageFormat.format(
JGitText.get().enumValueNotSupported2, section, name, value));
} }


/** {@inheritDoc} */ /** {@inheritDoc} */

+ 5
- 4
org.eclipse.jgit/src/org/eclipse/jgit/lib/IndexDiff.java View File

} }


// consume the remaining work // consume the remaining work
if (monitor != null)
if (monitor != null) {
monitor.endTask(); monitor.endTask();
}


ignored = indexDiffFilter.getIgnoredPaths(); ignored = indexDiffFilter.getIgnoredPaths();
if (added.isEmpty() && changed.isEmpty() && removed.isEmpty() if (added.isEmpty() && changed.isEmpty() && removed.isEmpty()
&& missing.isEmpty() && modified.isEmpty() && missing.isEmpty() && modified.isEmpty()
&& untracked.isEmpty())
&& untracked.isEmpty()) {
return false; return false;
else
return true;
}
return true;
} }


private boolean hasFiles(File directory) { private boolean hasFiles(File directory) {

+ 2
- 4
org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectReader.java View File

if (idItr.hasNext()) { if (idItr.hasNext()) {
cur = idItr.next(); cur = idItr.next();
return true; return true;
} else {
return false;
} }
return false;
} }


@Override @Override
cur = idItr.next(); cur = idItr.next();
sz = getObjectSize(cur, OBJ_ANY); sz = getObjectSize(cur, OBJ_ANY);
return true; return true;
} else {
return false;
} }
return false;
} }


@Override @Override

+ 14
- 14
org.eclipse.jgit/src/org/eclipse/jgit/lib/Repository.java View File

if (resolved instanceof String) { if (resolved instanceof String) {
final Ref ref = findRef((String) resolved); final Ref ref = findRef((String) resolved);
return ref != null ? ref.getLeaf().getObjectId() : null; return ref != null ? ref.getLeaf().getObjectId() : null;
} else {
return (ObjectId) resolved;
} }
return (ObjectId) resolved;
} }
} }


try (RevWalk rw = new RevWalk(this)) { try (RevWalk rw = new RevWalk(this)) {
rw.setRetainBody(true); rw.setRetainBody(true);
Object resolved = resolve(rw, revstr); Object resolved = resolve(rw, revstr);
if (resolved != null)
if (resolved instanceof String)
if (resolved != null) {
if (resolved instanceof String) {
return (String) resolved; return (String) resolved;
else
return ((AnyObjectId) resolved).getName();
}
return ((AnyObjectId) resolved).getName();
}
return null; return null;
} }
} }
if (name == null) if (name == null)
throw new RevisionSyntaxException(revstr); throw new RevisionSyntaxException(revstr);
} else if (time.matches("^-\\d+$")) { //$NON-NLS-1$ } else if (time.matches("^-\\d+$")) { //$NON-NLS-1$
if (name != null)
if (name != null) {
throw new RevisionSyntaxException(revstr); throw new RevisionSyntaxException(revstr);
else {
String previousCheckout = resolveReflogCheckout(-Integer
.parseInt(time));
if (ObjectId.isId(previousCheckout))
rev = parseSimple(rw, previousCheckout);
else
name = previousCheckout;
}
String previousCheckout = resolveReflogCheckout(
-Integer.parseInt(time));
if (ObjectId.isId(previousCheckout)) {
rev = parseSimple(rw, previousCheckout);
} else {
name = previousCheckout;
} }
} else { } else {
if (name == null) if (name == null)

+ 6
- 6
org.eclipse.jgit/src/org/eclipse/jgit/merge/MergeConfig.java View File

String mergeOptions = config.getString( String mergeOptions = config.getString(
ConfigConstants.CONFIG_BRANCH_SECTION, branch, ConfigConstants.CONFIG_BRANCH_SECTION, branch,
ConfigConstants.CONFIG_KEY_MERGEOPTIONS); ConfigConstants.CONFIG_KEY_MERGEOPTIONS);
if (mergeOptions != null)
if (mergeOptions != null) {
return mergeOptions.split("\\s"); //$NON-NLS-1$ return mergeOptions.split("\\s"); //$NON-NLS-1$
else
return new String[0];
}
return new String[0];
} }


private static class MergeConfigSectionParser implements private static class MergeConfigSectionParser implements


@Override @Override
public boolean equals(Object obj) { public boolean equals(Object obj) {
if (obj instanceof MergeConfigSectionParser)
if (obj instanceof MergeConfigSectionParser) {
return branch.equals(((MergeConfigSectionParser) obj).branch); return branch.equals(((MergeConfigSectionParser) obj).branch);
else
return false;
}
return false;
} }


@Override @Override

+ 5
- 4
org.eclipse.jgit/src/org/eclipse/jgit/merge/MergeMessageFormatter.java View File

private static void addConflictsMessage(List<String> conflictingPaths, private static void addConflictsMessage(List<String> conflictingPaths,
StringBuilder sb) { StringBuilder sb) {
sb.append("Conflicts:\n"); //$NON-NLS-1$ sb.append("Conflicts:\n"); //$NON-NLS-1$
for (String conflictingPath : conflictingPaths)
for (String conflictingPath : conflictingPaths) {
sb.append('\t').append(conflictingPath).append('\n'); sb.append('\t').append(conflictingPath).append('\n');
}
} }


private static String joinNames(List<String> names, String singular, private static String joinNames(List<String> names, String singular,
String plural) { String plural) {
if (names.size() == 1)
if (names.size() == 1) {
return singular + " " + names.get(0); //$NON-NLS-1$ return singular + " " + names.get(0); //$NON-NLS-1$
else
return plural + " " + StringUtils.join(names, ", ", " and "); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
}
return plural + " " + StringUtils.join(names, ", ", " and "); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
} }
} }

+ 44
- 48
org.eclipse.jgit/src/org/eclipse/jgit/merge/ResolveMerger.java View File

keep(ourDce); keep(ourDce);
// no checkout needed! // no checkout needed!
return true; return true;
} else {
// same content but different mode on OURS and THEIRS.
// Try to merge the mode and report an error if this is
// not possible.
int newMode = mergeFileModes(modeB, modeO, modeT);
if (newMode != FileMode.MISSING.getBits()) {
if (newMode == modeO)
// ours version is preferred
keep(ourDce);
else {
// the preferred version THEIRS has a different mode
// than ours. Check it out!
if (isWorktreeDirty(work, ourDce))
return false;
// we know about length and lastMod only after we have written the new content.
// This will happen later. Set these values to 0 for know.
DirCacheEntry e = add(tw.getRawPath(), theirs,
DirCacheEntry.STAGE_0, EPOCH, 0);
addToCheckout(tw.getPathString(), e, attributes);
}
return true;
}
// same content but different mode on OURS and THEIRS.
// Try to merge the mode and report an error if this is
// not possible.
int newMode = mergeFileModes(modeB, modeO, modeT);
if (newMode != FileMode.MISSING.getBits()) {
if (newMode == modeO) {
// ours version is preferred
keep(ourDce);
} else { } else {
// FileModes are not mergeable. We found a conflict on modes.
// For conflicting entries we don't know lastModified and length.
add(tw.getRawPath(), base, DirCacheEntry.STAGE_1, EPOCH, 0);
add(tw.getRawPath(), ours, DirCacheEntry.STAGE_2, EPOCH, 0);
add(tw.getRawPath(), theirs, DirCacheEntry.STAGE_3, EPOCH,
0);
unmergedPaths.add(tw.getPathString());
mergeResults.put(
tw.getPathString(),
new MergeResult<>(Collections
.<RawText> emptyList()));
// the preferred version THEIRS has a different mode
// than ours. Check it out!
if (isWorktreeDirty(work, ourDce)) {
return false;
}
// we know about length and lastMod only after we have
// written the new content.
// This will happen later. Set these values to 0 for know.
DirCacheEntry e = add(tw.getRawPath(), theirs,
DirCacheEntry.STAGE_0, EPOCH, 0);
addToCheckout(tw.getPathString(), e, attributes);
} }
return true; return true;
} }
// FileModes are not mergeable. We found a conflict on modes.
// For conflicting entries we don't know lastModified and
// length.
add(tw.getRawPath(), base, DirCacheEntry.STAGE_1, EPOCH, 0);
add(tw.getRawPath(), ours, DirCacheEntry.STAGE_2, EPOCH, 0);
add(tw.getRawPath(), theirs, DirCacheEntry.STAGE_3, EPOCH, 0);
unmergedPaths.add(tw.getPathString());
mergeResults.put(tw.getPathString(),
new MergeResult<>(Collections.<RawText> emptyList()));
return true;
} }


if (modeB == modeT && tw.idEqual(T_BASE, T_THEIRS)) { if (modeB == modeT && tw.idEqual(T_BASE, T_THEIRS)) {
addToCheckout(tw.getPathString(), e, attributes); addToCheckout(tw.getPathString(), e, attributes);
} }
return true; return true;
} else {
// we want THEIRS ... but THEIRS contains a folder or the
// deletion of the path. Delete what's in the working tree,
// which we know to be clean.
if (tw.getTreeCount() > T_FILE && tw.getRawMode(T_FILE) == 0) {
// Not present in working tree, so nothing to delete
return true;
}
if (modeT != 0 && modeT == modeB) {
// Base, ours, and theirs all contain a folder: don't delete
return true;
}
addDeletion(tw.getPathString(), nonTree(modeO), attributes);
}
// we want THEIRS ... but THEIRS contains a folder or the
// deletion of the path. Delete what's in the working tree,
// which we know to be clean.
if (tw.getTreeCount() > T_FILE && tw.getRawMode(T_FILE) == 0) {
// Not present in working tree, so nothing to delete
return true; return true;
} }
if (modeT != 0 && modeT == modeB) {
// Base, ours, and theirs all contain a folder: don't delete
return true;
}
addDeletion(tw.getPathString(), nonTree(modeO), attributes);
return true;
} }


if (tw.isSubtree()) { if (tw.isSubtree()) {
if (getUnmergedPaths().isEmpty() && !failed()) { if (getUnmergedPaths().isEmpty() && !failed()) {
resultTree = dircache.writeTree(getObjectInserter()); resultTree = dircache.writeTree(getObjectInserter());
return true; return true;
} else {
resultTree = null;
return false;
} }
resultTree = null;
return false;
} }


/** /**

+ 4
- 4
org.eclipse.jgit/src/org/eclipse/jgit/merge/ThreeWayMerger.java View File

* @throws java.io.IOException * @throws java.io.IOException
*/ */
protected AbstractTreeIterator mergeBase() throws IOException { protected AbstractTreeIterator mergeBase() throws IOException {
if (baseTree != null)
if (baseTree != null) {
return openTree(baseTree); return openTree(baseTree);
}
RevCommit baseCommit = (baseCommitId != null) ? walk RevCommit baseCommit = (baseCommitId != null) ? walk
.parseCommit(baseCommitId) : getBaseCommit(sourceCommits[0], .parseCommit(baseCommitId) : getBaseCommit(sourceCommits[0],
sourceCommits[1]); sourceCommits[1]);
if (baseCommit == null) { if (baseCommit == null) {
baseCommitId = null; baseCommitId = null;
return new EmptyTreeIterator(); return new EmptyTreeIterator();
} else {
baseCommitId = baseCommit.toObjectId();
return openTree(baseCommit.getTree());
} }
baseCommitId = baseCommit.toObjectId();
return openTree(baseCommit.getTree());
} }
} }

+ 17
- 16
org.eclipse.jgit/src/org/eclipse/jgit/notes/FanoutBucket.java View File



@Override @Override
public Note next() { public Note next() {
if (hasNext())
if (hasNext()) {
return itr.next(); return itr.next();
else
throw new NoSuchElementException();
}
throw new NoSuchElementException();
} }


@Override @Override
NoteBucket b = table[cell]; NoteBucket b = table[cell];


if (b == null) { if (b == null) {
if (noteData == null)
if (noteData == null) {
return this; return this;
}


LeafBucket n = new LeafBucket(prefixLen + 2); LeafBucket n = new LeafBucket(prefixLen + 2);
table[cell] = n.set(noteOn, noteData, or); table[cell] = n.set(noteOn, noteData, or);
cnt++; cnt++;
return this; return this;


} else {
NoteBucket n = b.set(noteOn, noteData, or);
if (n == null) {
table[cell] = null;
cnt--;
}
NoteBucket n = b.set(noteOn, noteData, or);
if (n == null) {
table[cell] = null;
cnt--;


if (cnt == 0)
return null;
if (cnt == 0) {
return null;
}


return contractIfTooSmall(noteOn, or);
return contractIfTooSmall(noteOn, or);


} else if (n != b) {
table[cell] = n;
}
return this;
} else if (n != b) {
table[cell] = n;
} }
return this;
} }


InMemoryNoteBucket contractIfTooSmall(AnyObjectId noteOn, ObjectReader or) InMemoryNoteBucket contractIfTooSmall(AnyObjectId noteOn, ObjectReader or)

+ 17
- 21
org.eclipse.jgit/src/org/eclipse/jgit/notes/LeafBucket.java View File



@Override @Override
public Note next() { public Note next() {
if (hasNext())
if (hasNext()) {
return notes[idx++]; return notes[idx++];
else
throw new NoSuchElementException();
}
throw new NoSuchElementException();
} }


@Override @Override
notes[p].setData(noteData.copy()); notes[p].setData(noteData.copy());
return this; return this;


} else {
System.arraycopy(notes, p + 1, notes, p, cnt - p - 1);
cnt--;
return 0 < cnt ? this : null;
} }
System.arraycopy(notes, p + 1, notes, p, cnt - p - 1);
cnt--;
return 0 < cnt ? this : null;


} else if (noteData != null) { } else if (noteData != null) {
if (shouldSplit()) { if (shouldSplit()) {
return split().set(noteOn, noteData, or); return split().set(noteOn, noteData, or);

} else {
growIfFull();
p = -(p + 1);
if (p < cnt)
System.arraycopy(notes, p, notes, p + 1, cnt - p);
notes[p] = new Note(noteOn, noteData.copy());
cnt++;
return this;
} }
growIfFull();
p = -(p + 1);
if (p < cnt) {
System.arraycopy(notes, p, notes, p + 1, cnt - p);
}
notes[p] = new Note(noteOn, noteData.copy());
cnt++;
return this;


} else { } else {
return this; return this;
InMemoryNoteBucket append(Note note) { InMemoryNoteBucket append(Note note) {
if (shouldSplit()) { if (shouldSplit()) {
return split().append(note); return split().append(note);

} else {
growIfFull();
notes[cnt++] = note;
return this;
} }
growIfFull();
notes[cnt++] = note;
return this;
} }


private void growIfFull() { private void growIfFull() {

+ 3
- 3
org.eclipse.jgit/src/org/eclipse/jgit/notes/NoteMap.java View File

public byte[] getCachedBytes(AnyObjectId id, int sizeLimit) public byte[] getCachedBytes(AnyObjectId id, int sizeLimit)
throws LargeObjectException, MissingObjectException, IOException { throws LargeObjectException, MissingObjectException, IOException {
ObjectId dataId = get(id); ObjectId dataId = get(id);
if (dataId != null)
if (dataId != null) {
return reader.open(dataId).getCachedBytes(sizeLimit); return reader.open(dataId).getCachedBytes(sizeLimit);
else
return null;
}
return null;
} }


/** /**

+ 0
- 0
org.eclipse.jgit/src/org/eclipse/jgit/notes/NoteMapMerger.java View File


Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save