From 1e5d9cbb3e38477b1756a7623f24f645728eff9f Mon Sep 17 00:00:00 2001 From: Horis <8674809+821938089@users.noreply.github.com> Date: Sun, 4 May 2025 13:06:47 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/java/io/legado/app/lib/webdav/WebDav.kt | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/io/legado/app/lib/webdav/WebDav.kt b/app/src/main/java/io/legado/app/lib/webdav/WebDav.kt index 5d608d073..95555b01a 100644 --- a/app/src/main/java/io/legado/app/lib/webdav/WebDav.kt +++ b/app/src/main/java/io/legado/app/lib/webdav/WebDav.kt @@ -183,13 +183,11 @@ open class WebDav( for (element in elements) { //依然是优化支持 caddy 自建的 WebDav ,其目录后缀都为“/”, 所以删除“/”的判定,不然无法获取该目录项 val href = element.findNS("href", ns)[0].text() - val fileName = URLDecoder.decodeForPath( - href.removeSuffix("/").substringAfterLast("/"), - Charsets.UTF_8 - ) + val hrefDecode = URLDecoder.decodeForPath(href, Charsets.UTF_8) + val fileName = hrefDecode.removeSuffix("/").substringAfterLast("/") val webDavFile: WebDav try { - val urlName = href.ifEmpty { + val urlName = hrefDecode.ifEmpty { url.file.replace("/", "") } val displayName = element @@ -213,7 +211,7 @@ open class WebDav( .toInstant(ZoneOffset.of("+8")).toEpochMilli() } }.getOrNull() ?: 0 - var fullURL = NetworkUtils.getAbsoluteURL(baseUrl, href) + var fullURL = NetworkUtils.getAbsoluteURL(baseUrl, hrefDecode) if (WebDavFile.isDir(contentType, resourceType) && !fullURL.endsWith("/")) { fullURL += "/" }