From b045dea5497b53c775ea3c5748d640066a088e9a Mon Sep 17 00:00:00 2001 From: iNPUTmice Date: Sun, 26 Oct 2014 20:18:57 +0100 Subject: set divider for image meta information to '|' to not conflict with URL. breaks images downloaded in between 0.7.3 and now --- src/eu/siacs/conversations/entities/Message.java | 37 ++++++++++++++++++++++-- 1 file changed, 35 insertions(+), 2 deletions(-) (limited to 'src/eu/siacs/conversations/entities') diff --git a/src/eu/siacs/conversations/entities/Message.java b/src/eu/siacs/conversations/entities/Message.java index 212eb0494..79b9b5ba3 100644 --- a/src/eu/siacs/conversations/entities/Message.java +++ b/src/eu/siacs/conversations/entities/Message.java @@ -7,6 +7,7 @@ import java.util.Arrays; import eu.siacs.conversations.Config; import android.content.ContentValues; import android.database.Cursor; +import android.util.Log; public class Message extends AbstractEntity { @@ -405,14 +406,18 @@ public class Message extends AbstractEntity { } public ImageParams getImageParams() { - ImageParams params = new ImageParams(); + ImageParams params = getLegacyImageParams(); + if (params!=null) { + return params; + } + params = new ImageParams(); if (this.downloadable != null) { params.size = this.downloadable.getFileSize(); } if (body == null) { return params; } - String parts[] = body.split(","); + String parts[] = body.split("\\|"); if (parts.length == 1) { try { params.size = Long.parseLong(parts[0]); @@ -465,6 +470,34 @@ public class Message extends AbstractEntity { } return params; } + + public ImageParams getLegacyImageParams() { + ImageParams params = new ImageParams(); + if (body == null) { + return params; + } + String parts[] = body.split(","); + if (parts.length == 3) { + try { + params.size = Long.parseLong(parts[0]); + } catch (NumberFormatException e) { + return null; + } + try { + params.width = Integer.parseInt(parts[1]); + } catch (NumberFormatException e) { + return null; + } + try { + params.height = Integer.parseInt(parts[2]); + } catch (NumberFormatException e) { + return null; + } + return params; + } else { + return null; + } + } public class ImageParams { public URL url; -- cgit v1.2.3