diff --git a/app/src/main/java/org/fdroid/fdroid/data/Apk.java b/app/src/main/java/org/fdroid/fdroid/data/Apk.java index 28c12bf29..0668c8663 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/Apk.java +++ b/app/src/main/java/org/fdroid/fdroid/data/Apk.java @@ -516,7 +516,7 @@ public class Apk extends ValueObject implements Comparable, Parcelable { } public boolean isMediaInstalled(Context context) { - return new File(this.getMediaInstallPath(context), this.apkName).isFile(); + return new File(this.getMediaInstallPath(context), SanitizedFile.sanitizeFileName(this.apkName)).isFile(); } /** diff --git a/app/src/test/java/org/fdroid/fdroid/data/SanitizedFileTest.java b/app/src/test/java/org/fdroid/fdroid/data/SanitizedFileTest.java index a1415c425..fc4dca32b 100644 --- a/app/src/test/java/org/fdroid/fdroid/data/SanitizedFileTest.java +++ b/app/src/test/java/org/fdroid/fdroid/data/SanitizedFileTest.java @@ -37,11 +37,11 @@ public class SanitizedFileTest { assertEquals("/tmp/blah/safe", safeSanitized.getAbsolutePath()); assertEquals("/tmp/blah/safe-and_bleh.boo", nonEvilSanitized.getAbsolutePath()); - assertEquals("/tmp/blah/rmetcshadow", evilSanitized.getAbsolutePath()); + assertEquals("/tmp/blah/rm etcshadow", evilSanitized.getAbsolutePath()); assertEquals("safe", safeSanitized.getName()); assertEquals("safe-and_bleh.boo", nonEvilSanitized.getName()); - assertEquals("rmetcshadow", evilSanitized.getName()); + assertEquals("rm etcshadow", evilSanitized.getName()); }