From 03eb3e7dcbdefee0f2a4ad3a50ad2b50c428dd2a Mon Sep 17 00:00:00 2001 From: Dani Palou Date: Fri, 12 Jan 2024 12:20:54 +0100 Subject: [PATCH] MOBILE-3947 core: Fix extension detection in guessExtensionFromUrl --- src/core/services/utils/mimetype.ts | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/src/core/services/utils/mimetype.ts b/src/core/services/utils/mimetype.ts index 69d6496a957..dc537b7b581 100644 --- a/src/core/services/utils/mimetype.ts +++ b/src/core/services/utils/mimetype.ts @@ -312,17 +312,12 @@ export class CoreMimetypeUtilsProvider { * @returns The lowercased extension without the dot, or undefined. */ guessExtensionFromUrl(fileUrl: string): string | undefined { - const split = CoreUrl.removeUrlAnchor(fileUrl).split('.'); + const parsed = CoreUrl.parse(fileUrl); + const split = parsed?.path?.split('.'); let extension: string | undefined; - if (split.length > 1) { - let candidate = split[split.length - 1].toLowerCase(); - // Remove params if any. - const position = candidate.indexOf('?'); - if (position > -1) { - candidate = candidate.substring(0, position); - } - + if (split && split.length > 1) { + const candidate = split[split.length - 1].toLowerCase(); if (EXTENSION_REGEX.test(candidate)) { extension = candidate; }