Set file size also for cached avatars

This commit is contained in:
Holger Weiß 2015-03-17 17:36:17 +01:00
parent 4aab45533a
commit 52af62d298

View file

@ -318,11 +318,12 @@ public class FileBackend {
}
public boolean save(Avatar avatar) {
File file;
if (isAvatarCached(avatar)) {
return true;
}
file = new File(getAvatarPath(avatar.getFilename()));
} else {
String filename = getAvatarPath(avatar.getFilename());
File file = new File(filename + ".tmp");
file = new File(filename + ".tmp");
file.getParentFile().mkdirs();
try {
file.createNewFile();
@ -334,11 +335,9 @@ public class FileBackend {
mDigestOutputStream.write(avatar.getImageAsBytes());
mDigestOutputStream.flush();
mDigestOutputStream.close();
avatar.size = file.length();
String sha1sum = CryptoHelper.bytesToHex(digest.digest());
if (sha1sum.equals(avatar.sha1sum)) {
file.renameTo(new File(filename));
return true;
} else {
Log.d(Config.LOGTAG, "sha1sum mismatch for " + avatar.owner);
file.delete();
@ -352,6 +351,9 @@ public class FileBackend {
return false;
}
}
avatar.size = file.length();
return true;
}
public String getAvatarPath(String avatar) {
return mXmppConnectionService.getFilesDir().getAbsolutePath()