diff options
author | Hisham Muhammad <hisham@gobolinux.org> | 2016-06-22 16:37:03 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-06-22 16:37:03 -0300 |
commit | fa60a09a3a522f9f3b58f084ab8efdb35a04e7df (patch) | |
tree | 4d7c74acb326a8964f34a8a8cc6458f53da80877 | |
parent | ad5576263538aa61a92e4c97bf5e52fc134bda22 (diff) | |
parent | 998fe0b16920f5c8316dadf7d247588a23c36b29 (diff) | |
download | luarocks-fa60a09a3a522f9f3b58f084ab8efdb35a04e7df.tar.gz luarocks-fa60a09a3a522f9f3b58f084ab8efdb35a04e7df.tar.bz2 luarocks-fa60a09a3a522f9f3b58f084ab8efdb35a04e7df.zip |
Merge pull request #574 from mpeterv/unpack-archive-err
Improve error on archive unpack error
-rw-r--r-- | src/luarocks/fetch.lua | 3 | ||||
-rw-r--r-- | src/luarocks/fs/unix/tools.lua | 3 | ||||
-rw-r--r-- | src/luarocks/fs/win32/tools.lua | 3 |
3 files changed, 4 insertions, 5 deletions
diff --git a/src/luarocks/fetch.lua b/src/luarocks/fetch.lua index dfa6f191..824a3731 100644 --- a/src/luarocks/fetch.lua +++ b/src/luarocks/fetch.lua | |||
@@ -344,7 +344,8 @@ function fetch.get_sources(rockspec, extract, dest_dir) | |||
344 | if extract then | 344 | if extract then |
345 | local ok, err = fs.change_dir(store_dir) | 345 | local ok, err = fs.change_dir(store_dir) |
346 | if not ok then return nil, err end | 346 | if not ok then return nil, err end |
347 | fs.unpack_archive(rockspec.source.file) | 347 | ok, err = fs.unpack_archive(rockspec.source.file) |
348 | if not ok then return nil, err end | ||
348 | if not fs.exists(rockspec.source.dir) then | 349 | if not fs.exists(rockspec.source.dir) then |
349 | return nil, "Directory "..rockspec.source.dir.." not found inside archive "..rockspec.source.file, "source.dir", source_file, store_dir | 350 | return nil, "Directory "..rockspec.source.dir.." not found inside archive "..rockspec.source.file, "source.dir", source_file, store_dir |
350 | end | 351 | end |
diff --git a/src/luarocks/fs/unix/tools.lua b/src/luarocks/fs/unix/tools.lua index 7a67fb22..d0802725 100644 --- a/src/luarocks/fs/unix/tools.lua +++ b/src/luarocks/fs/unix/tools.lua | |||
@@ -192,8 +192,7 @@ function tools.unpack_archive(archive) | |||
192 | -- Ignore .lua and .c files; they don't need to be extracted. | 192 | -- Ignore .lua and .c files; they don't need to be extracted. |
193 | return true | 193 | return true |
194 | else | 194 | else |
195 | local ext = archive:match(".*(%..*)") | 195 | return false, "Couldn't extract archive "..archive..": unrecognized filename extension" |
196 | return false, "Unrecognized filename extension "..(ext or "") | ||
197 | end | 196 | end |
198 | if not ok then | 197 | if not ok then |
199 | return false, "Failed extracting "..archive | 198 | return false, "Failed extracting "..archive |
diff --git a/src/luarocks/fs/win32/tools.lua b/src/luarocks/fs/win32/tools.lua index 1d47fa59..4adc78d1 100644 --- a/src/luarocks/fs/win32/tools.lua +++ b/src/luarocks/fs/win32/tools.lua | |||
@@ -204,8 +204,7 @@ function tools.unpack_archive(archive) | |||
204 | -- Ignore .lua and .c files; they don't need to be extracted. | 204 | -- Ignore .lua and .c files; they don't need to be extracted. |
205 | return true | 205 | return true |
206 | else | 206 | else |
207 | local ext = archive:match(".*(%..*)") | 207 | return false, "Couldn't extract archive "..archive..": unrecognized filename extension" |
208 | return false, "Unrecognized filename extension "..(ext or "") | ||
209 | end | 208 | end |
210 | if not ok then | 209 | if not ok then |
211 | return false, "Failed extracting "..archive | 210 | return false, "Failed extracting "..archive |