diff options
author | Matthias Sohn <matthias.sohn@sap.com> | 2019-08-21 18:16:09 +0200 |
---|---|---|
committer | Matthias Sohn <matthias.sohn@sap.com> | 2019-08-21 18:16:23 +0200 |
commit | 5c93bbd344a9fbcaabe70b09f6f0f062834f568a (patch) | |
tree | 1abcf4ebeb3a45ce4dd7fbfcedf1410753a5d756 /org.eclipse.jgit | |
parent | 35d99477b81043f24314c4c84da8f29e601bec19 (diff) | |
parent | bbf3da1aac3742ec9fc606af5d4800944c19c0f5 (diff) | |
download | jgit-5c93bbd344a9fbcaabe70b09f6f0f062834f568a.tar.gz jgit-5c93bbd344a9fbcaabe70b09f6f0f062834f568a.zip |
Merge branch 'stable-5.3' into stable-5.4
* stable-5.3:
Prepare 5.3.4-SNAPSHOT builds
JGit v5.3.3.201908210735-r
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: Ic3c8d3adf522b73f87c713538a14697eb690f508
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
Diffstat (limited to 'org.eclipse.jgit')
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 95e1d21434..f07c24efc4 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCache.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCache.java @@ -657,8 +657,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 @@ -666,12 +665,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 @@ -683,8 +680,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 d4db15ce9b..0e91f0d748 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(); |