summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <[email protected]>2021-12-16 12:54:50 +0800
committerGitHub <[email protected]>2021-12-16 12:54:50 +0800
commit9af42bcb37bde188b60d64d36c4e86873c2ece0b (patch)
treedb78e622e580b0c30175e8ddd5ddf9ad2f0f9f83
parent214b9fe1440a05e83c84d5b4f216d48ef99b35bf (diff)
Update extension.lua
-rw-r--r--xmake/modules/utils/archive/extension.lua9
1 files changed, 4 insertions, 5 deletions
diff --git a/xmake/modules/utils/archive/extension.lua b/xmake/modules/utils/archive/extension.lua
index ca4c8abd8..fe33a395f 100644
--- a/xmake/modules/utils/archive/extension.lua
+++ b/xmake/modules/utils/archive/extension.lua
@@ -25,13 +25,12 @@ import("core.base.hashset")
function main(archivefile)
local extension = ""
local filename = path.filename(archivefile)
- local extensionset = hashset.from({".zip", ".7z", ".gz", ".xz", ".tgz", ".bz2", ".tar", ".tar.gz", ".tar.xz", ".tar.bz2", ".tar.lz"})
+ local extensionset = hashset.from({".zip", ".7z", ".gz", ".xz", ".tgz", ".bz2", ".tar", ".tar.gz", ".tar.xz", ".tar.bz2"})
local i = filename:lastof(".", true)
if i then
local p = filename:sub(1, i - 1):lastof(".", true)
- if p and extensionset:has(filename:sub(p)) then
- extension = filename:sub(p)
- end
+ if p and extensionset:has(filename:sub(p)) then i = p end
+ extension = filename:sub(i)
end
- return extension
+ return extensionset:has(extension) and extension or ""
end