always copy firefoxe’s shared files
This commit is contained in:
parent
eed2d93145
commit
6650c0bd57
|
@ -44,6 +44,7 @@ import java.security.DigestOutputStream;
|
||||||
import java.security.MessageDigest;
|
import java.security.MessageDigest;
|
||||||
import java.security.NoSuchAlgorithmException;
|
import java.security.NoSuchAlgorithmException;
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
|
import java.util.Arrays;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
|
@ -70,6 +71,8 @@ public class FileBackend {
|
||||||
|
|
||||||
private XmppConnectionService mXmppConnectionService;
|
private XmppConnectionService mXmppConnectionService;
|
||||||
|
|
||||||
|
private static final List<String> BLACKLISTED_PATH_ELEMENTS = Arrays.asList("org.mozilla.firefox");
|
||||||
|
|
||||||
public FileBackend(XmppConnectionService service) {
|
public FileBackend(XmppConnectionService service) {
|
||||||
this.mXmppConnectionService = service;
|
this.mXmppConnectionService = service;
|
||||||
}
|
}
|
||||||
|
@ -233,9 +236,12 @@ public class FileBackend {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public boolean useImageAsIs(Uri uri) {
|
public boolean useImageAsIs(Uri uri) {
|
||||||
String path = getOriginalPath(uri);
|
String path = getOriginalPath(uri);
|
||||||
if (path == null) {
|
if (path == null || isPathBlacklisted(path)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
File file = new File(path);
|
File file = new File(path);
|
||||||
|
@ -256,6 +262,15 @@ public class FileBackend {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static boolean isPathBlacklisted(String path) {
|
||||||
|
for(String element : BLACKLISTED_PATH_ELEMENTS) {
|
||||||
|
if (path.contains(element)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
public String getOriginalPath(Uri uri) {
|
public String getOriginalPath(Uri uri) {
|
||||||
return FileUtils.getPath(mXmppConnectionService, uri);
|
return FileUtils.getPath(mXmppConnectionService, uri);
|
||||||
}
|
}
|
||||||
|
|
|
@ -54,7 +54,7 @@ public class AttachFileToConversationRunnable implements Runnable, MediaTranscod
|
||||||
|
|
||||||
private void processAsFile() {
|
private void processAsFile() {
|
||||||
final String path = mXmppConnectionService.getFileBackend().getOriginalPath(uri);
|
final String path = mXmppConnectionService.getFileBackend().getOriginalPath(uri);
|
||||||
if (path != null) {
|
if (path != null && !FileBackend.isPathBlacklisted(path)) {
|
||||||
message.setRelativeFilePath(path);
|
message.setRelativeFilePath(path);
|
||||||
mXmppConnectionService.getFileBackend().updateFileParams(message);
|
mXmppConnectionService.getFileBackend().updateFileParams(message);
|
||||||
if (message.getEncryption() == Message.ENCRYPTION_DECRYPTED) {
|
if (message.getEncryption() == Message.ENCRYPTION_DECRYPTED) {
|
||||||
|
|
Loading…
Reference in a new issue