Skip to content

Commit 978fa99

Browse files
authored
Merge pull request #4176 from pratikmhatre/issue_4146
Files with ambiguous names crash on extraction : Fixed
2 parents 6984fc7 + 299e2fb commit 978fa99

File tree

1 file changed

+16
-14
lines changed

1 file changed

+16
-14
lines changed

app/src/main/java/com/amaze/filemanager/filesystem/compressed/CompressedHelper.java

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -202,21 +202,23 @@ public static boolean isFileExtractable(String path) {
202202
*/
203203
public static String getFileName(String compressedName) {
204204
compressedName = compressedName.toLowerCase();
205-
if (isZip(compressedName)
206-
|| isTar(compressedName)
207-
|| isRar(compressedName)
208-
|| is7zip(compressedName)
209-
|| isXz(compressedName)
210-
|| isLzma(compressedName)
211-
|| isGzip(compressedName)
212-
|| compressedName.endsWith(fileExtensionGzipTarShort)
213-
|| compressedName.endsWith(fileExtensionBzip2TarShort)
214-
|| isGzip(compressedName)
215-
|| isBzip2(compressedName)
216-
|| isLzma(compressedName)
217-
|| isXz(compressedName)) {
205+
boolean hasFileName = compressedName.contains(".");
206+
if (hasFileName
207+
&& (isZip(compressedName)
208+
|| isTar(compressedName)
209+
|| isRar(compressedName)
210+
|| is7zip(compressedName)
211+
|| isXz(compressedName)
212+
|| isLzma(compressedName)
213+
|| isGzip(compressedName)
214+
|| compressedName.endsWith(fileExtensionGzipTarShort)
215+
|| compressedName.endsWith(fileExtensionBzip2TarShort)
216+
|| isGzip(compressedName)
217+
|| isBzip2(compressedName)
218+
|| isLzma(compressedName)
219+
|| isXz(compressedName))) {
218220
return compressedName.substring(0, compressedName.lastIndexOf("."));
219-
} else if (isGzippedTar(compressedName)
221+
} else if (hasFileName && isGzippedTar(compressedName)
220222
|| isXzippedTar(compressedName)
221223
|| isLzippedTar(compressedName)
222224
|| isBzippedTar(compressedName)) {

0 commit comments

Comments
 (0)