diff options
author | Matthias Sohn <matthias.sohn@sap.com> | 2019-08-21 12:13:08 +0200 |
---|---|---|
committer | Matthias Sohn <matthias.sohn@sap.com> | 2019-08-21 12:13:27 +0200 |
commit | 48498fd3e6cf28b30f56bc4d1c3986665fb39627 (patch) | |
tree | 349f6e52cd97bc21d9a6178b00fc2427cdb1f05a | |
parent | 18fb58ae05aafb9d7c831e5c4c3c0d375e7492e8 (diff) | |
parent | 7ac3a63e7fe16503c3b0e3c45b9d32333ef12a82 (diff) | |
download | jgit-48498fd3e6cf28b30f56bc4d1c3986665fb39627.tar.gz jgit-48498fd3e6cf28b30f56bc4d1c3986665fb39627.zip |
Merge branch 'stable-5.2' into stable-5.3
* stable-5.2:
Add missing @since tag on FileTreeIterator#getLastModifiedInstant
Prepare 5.1.10-SNAPSHOT builds
JGit v5.1.9.201908210455-r
Avoid sign extension when comparing mtime with Instant#getEpochSecond
Fix deprecation in DirCache caused by Instant based DirCacheEntry
Change-Id: If6d5f4dfd9fc8e8c09e29aa11b1004057eafeb9f
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
3 files changed, 9 insertions, 8 deletions
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCache.java b/org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCache.java index 0cfd16b58a..a778de910b 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCache.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCache.java @@ -671,8 +671,7 @@ public class DirCache { // Write the individual file entries. - final int smudge_s; - final int smudge_ns; + Instant smudge; if (myLock != null) { // For new files we need to smudge the index entry // if they have been modified "now". Ideally we'd @@ -680,12 +679,10 @@ public class DirCache { // so we use the current timestamp as a approximation. myLock.createCommitSnapshot(); snapshot = myLock.getCommitSnapshot(); - smudge_s = (int) (snapshot.lastModifiedInstant().getEpochSecond()); - smudge_ns = snapshot.lastModifiedInstant().getNano(); + smudge = snapshot.lastModifiedInstant(); } else { // Used in unit tests only - smudge_ns = 0; - smudge_s = 0; + smudge = Instant.EPOCH; } // Check if tree is non-null here since calling updateSmudgedEntries @@ -697,8 +694,9 @@ public class DirCache { for (int i = 0; i < entryCnt; i++) { final DirCacheEntry e = sortedEntries[i]; - if (e.mightBeRacilyClean(smudge_s, smudge_ns)) + if (e.mightBeRacilyClean(smudge)) { e.smudgeRacilyClean(); + } e.write(dos); } diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCacheEntry.java b/org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCacheEntry.java index d2a59c1310..b118fd6bc9 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCacheEntry.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCacheEntry.java @@ -378,7 +378,7 @@ public class DirCacheEntry { // final int base = infoOffset + P_MTIME; final int mtime = NB.decodeInt32(info, base); - if (smudge.getEpochSecond() == mtime) { + if ((int) smudge.getEpochSecond() == mtime) { return smudge.getNano() <= NB.decodeInt32(info, base + 4); } return false; diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/treewalk/FileTreeIterator.java b/org.eclipse.jgit/src/org/eclipse/jgit/treewalk/FileTreeIterator.java index d432c94450..4f3eb05b11 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/treewalk/FileTreeIterator.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/treewalk/FileTreeIterator.java @@ -412,6 +412,9 @@ public class FileTreeIterator extends WorkingTreeIterator { return attributes.getLastModifiedInstant().toEpochMilli(); } + /** + * @since 5.1.9 + */ @Override public Instant getLastModifiedInstant() { return attributes.getLastModifiedInstant(); |