~singpolyma/cheogram-android

8f057a0c95d674976291ea50627ce268e53c0b50 — Daniel Gultsch 5 years ago 25aa6be
try to catch out of memory exception
1 files changed, 5 insertions(+), 1 deletions(-)

M src/main/java/eu/siacs/conversations/persistance/FileBackend.java
M src/main/java/eu/siacs/conversations/persistance/FileBackend.java => src/main/java/eu/siacs/conversations/persistance/FileBackend.java +5 -1
@@ 784,11 784,12 @@ public class FileBackend {
            bitmap = BitmapFactory.decodeStream(mXmppConnectionService.getContentResolver().openInputStream(uri));
            return getPepAvatar(bitmap, Bitmap.CompressFormat.PNG, 100);
        } catch (Exception e) {
            return null;
        } finally {
            if (bitmap != null) {
                bitmap.recycle();
            }
        }
        return null;
    }

    private Avatar getPepAvatar(Bitmap bitmap, Bitmap.CompressFormat format, int quality) {


@@ 822,6 823,9 @@ public class FileBackend {
            avatar.width = bitmap.getWidth();
            avatar.height = bitmap.getHeight();
            return avatar;
        } catch (OutOfMemoryError e) {
            Log.d(Config.LOGTAG,"unable to convert avatar to base64 due to low memory");
            return null;
        } catch (Exception e) {
            return null;
        }