From bb105b16be7a56e51134438a0422a1de0aa814b0 Mon Sep 17 00:00:00 2001 From: Max Date: Mon, 18 Nov 2024 18:24:56 +0000 Subject: [PATCH 1/2] fix: Images not downloading if url has trailing slash --- lua/pixelui/core/cl_images.lua | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/lua/pixelui/core/cl_images.lua b/lua/pixelui/core/cl_images.lua index 90dfece..36cd22a 100644 --- a/lua/pixelui/core/cl_images.lua +++ b/lua/pixelui/core/cl_images.lua @@ -67,22 +67,29 @@ end function PIXEL.GetImage(url, callback, matSettings) local protocol = url:match("^([%a]+://)") - local urlWithoutProtocol = url - if not protocol then - protocol = "http://" - else - urlWithoutProtocol = string.gsub(url, protocol, "") + + local hasTrailingSlash = url:sub(-1) == "/" + local urlWithoutTrailingSlash = url + if hasTrailingSlash then + urlWithoutTrailingSlash = url:sub(1, -2) end - local fileNameStart = url:find("[^/]+$") + local fileNameStart = urlWithoutTrailingSlash:find("[^/]+$") if not fileNameStart then return end - local urlWithoutFileName = url:sub(protocol:len() + 1, fileNameStart - 1) + local urlWithoutProtocol = url + if not protocol then + protocol = "http://" + else + urlWithoutProtocol = string.gsub(urlWithoutTrailingSlash, protocol, "") + end + + local urlWithoutFileName = urlWithoutTrailingSlash:sub(protocol:len() + 1, fileNameStart - 1) - local dirPath = PIXEL.DownloadPath .. urlWithoutFileName - local filePath = PIXEL.DownloadPath .. urlWithoutProtocol + local dirPath = PulsarUI.DownloadPath .. urlWithoutFileName + local filePath = PulsarUI.DownloadPath .. urlWithoutProtocol file.CreateDir(dirPath) From ff06ed60da4b3ed6cc74641251365e6b13d49856 Mon Sep 17 00:00:00 2001 From: Max Date: Mon, 18 Nov 2024 18:25:41 +0000 Subject: [PATCH 2/2] fix: Wrong config options --- lua/pixelui/core/cl_images.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lua/pixelui/core/cl_images.lua b/lua/pixelui/core/cl_images.lua index 36cd22a..868c522 100644 --- a/lua/pixelui/core/cl_images.lua +++ b/lua/pixelui/core/cl_images.lua @@ -88,8 +88,8 @@ function PIXEL.GetImage(url, callback, matSettings) local urlWithoutFileName = urlWithoutTrailingSlash:sub(protocol:len() + 1, fileNameStart - 1) - local dirPath = PulsarUI.DownloadPath .. urlWithoutFileName - local filePath = PulsarUI.DownloadPath .. urlWithoutProtocol + local dirPath = PIXEL.DownloadPath .. urlWithoutFileName + local filePath = PIXEL.DownloadPath .. urlWithoutProtocol file.CreateDir(dirPath)