From ea2bcea7e55abc234615062f46ac4219030a77bd Mon Sep 17 00:00:00 2001 From: Stephen Paul Weber Date: Wed, 5 Jun 2024 15:57:42 -0500 Subject: [PATCH] Set access time on avatars when accessing them So they don't get blown away if being used, since relatime is a thing --- .../eu/siacs/conversations/persistance/FileBackend.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/main/java/eu/siacs/conversations/persistance/FileBackend.java b/src/main/java/eu/siacs/conversations/persistance/FileBackend.java index 6399ba2fa3e6f81475d7037fd9018c9819da9b37..a2ab92ded3a7fbebb3d83f997b3058e2c058f716 100644 --- a/src/main/java/eu/siacs/conversations/persistance/FileBackend.java +++ b/src/main/java/eu/siacs/conversations/persistance/FileBackend.java @@ -1814,7 +1814,13 @@ public class FileBackend { } public File getAvatarFile(String avatar) { - return new File(mXmppConnectionService.getCacheDir(), "/avatars/" + avatar); + final var f = new File(mXmppConnectionService.getCacheDir(), "/avatars/" + avatar); + try { + if (f.exists()) java.nio.file.Files.setAttribute(f.toPath(), "lastAccessTime", java.nio.file.attribute.FileTime.fromMillis(System.currentTimeMillis())); + } catch (final IOException e) { + Log.w(Config.LOGTAG, "unable to set lastAccessTime for " + f); + } + return f; } public Uri getAvatarUri(String avatar) {