fixed downloading of deleted files

Daniel Gultsch created

Change summary

src/main/java/eu/siacs/conversations/http/HttpDownloadConnection.java | 5 
src/main/java/eu/siacs/conversations/ui/ConversationFragment.java     | 2 
2 files changed, 4 insertions(+), 3 deletions(-)

Detailed changes

src/main/java/eu/siacs/conversations/http/HttpDownloadConnection.java 🔗

@@ -369,9 +369,10 @@ public class HttpDownloadConnection implements Transferable {
 				}
 				connection.setUseCaches(false);
 				connection.setRequestProperty("User-Agent", mXmppConnectionService.getIqGenerator().getUserAgent());
-				final boolean tryResume = file.exists() && file.getKey() == null && file.getSize() > 0;
+				final long expected = file.getExpectedSize();
+				final boolean tryResume = file.exists() && file.getKey() == null && file.getSize() > 0 && file.getSize() < expected;
 				long resumeSize = 0;
-				long expected = file.getExpectedSize();
+
 				if (tryResume) {
 					resumeSize = file.getSize();
 					Log.d(Config.LOGTAG, "http download trying resume after" + resumeSize + " of " + expected);

src/main/java/eu/siacs/conversations/ui/ConversationFragment.java 🔗

@@ -1422,7 +1422,7 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke
                 Log.d(Config.LOGTAG, "type: " + transferable.getClass().getName());
                 Toast.makeText(getActivity(), R.string.not_connected_try_again, Toast.LENGTH_SHORT).show();
             }
-        } else if (message.treatAsDownloadable()) {
+        } else if (message.treatAsDownloadable() || message.hasFileOnRemoteHost()) {
             createNewConnection(message);
         }
     }