[vlc-devel] [PATCH] Fixes #21595: VLSub: fixes creation of cache directory if it doesn't exist

Thomas Guillem thomas at gllm.fr
Tue Mar 26 09:42:11 CET 2019


On Mon, Mar 25, 2019, at 18:45, Aakash Singh wrote:
> Hey everyone
> Someone please review this patch. It was submitted a week ago and hasn't been reviewed yet.
> 
> Regards 
> Aakash Singh
> 
> On Tue, Mar 19, 2019 at 6:11 PM Aakash Singh <17aakashsingh1999 at gmail.com> wrote:
>> The patch fixes creation of a cache directory for VLSub if it doesn't already exist. The patch is working correctly. If the directory already exists then vlc.io.mkdir() simply returns -1 indicating that the directory already exists and no changes were made to the folder structure.
>> ---
>>  share/lua/extensions/VLSub.lua | 17 +++++++++++++++++
>>  1 file changed, 17 insertions(+)
>> 
>> diff --git a/share/lua/extensions/VLSub.lua b/share/lua/extensions/VLSub.lua
>> index ee9e5f84a9..64013ae46a 100644
>> --- a/share/lua/extensions/VLSub.lua
>> +++ b/share/lua/extensions/VLSub.lua
>> @@ -1488,6 +1488,23 @@ function download_subtitles()
>> 
>>  subfileName = subfileName.."."..item.SubFormat
>>  local tmp_dir = vlc.config.cachedir()
>> + -- create the cache directory if it doens't already exist
>> + if package.config:sub(1, 1):match("/") then
>> + -- unix based systems
>> + local current_dir = "/"
>> + for dir in tmp_dir:gmatch("[^/]+") do
>> + current_dir = current_dir.."/"..dir
>> + vlc.io.mkdir(current_dir, "0700")
>> + end
>> + else
>> + -- windows systems
>> + local current_dir = ""
>> + for dir in tmp_dir:gmatch("[^\\]+") do
>> + current_dir = current_dir.."\\"..dir
>> + vlc.io.mkdir(current_dir, "0700")
>> + end
>> + end

You could factorize it with only one loop by storing "\\" or "/" in an intermediate var.

But this bug brings an other question: Should VLC CORE take care of creating directories for every kind of user_dir ?
In other word, should config_GetUserDir() create the directory ?

>> +
>>  local file_target_access = true
>> 
>>  local tmpFileName = dump_zip(
>> -- 
>> 2.19.1
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20190326/09eccfd6/attachment.html>


More information about the vlc-devel mailing list