On May 20 2017, Markus Koschany <a...@debian.org> wrote:
> On Fri, 19 May 2017 16:26:03 -0700 Nikolaus Rath <nikol...@rath.org> wrote:
>> On May 20 2017, Markus Koschany <a...@debian.org> wrote:
>> > Am 19.05.2017 um 23:23 schrieb Chris Lamb:
>> >> tags 862593 + patch
>> >> thanks
>> >> 
>> >> The archive gets overwritten as the test to see whether it already exists
>> >> (to determine whether to create a new one or simply add a new file) uses
>> >> an escaped path.
>> >> 
>> >> Patch attached. 
>> >
>> > I came to a similar conclusion but I wondered whether the real issue is
>> > the wrongly escaped path.
>> [...]
>> 
>> Why is there a need for any escaping at all? I would have expected that
>> tar/xz/whatever is invoked directly, but  this almost sounds if
>> xarchiver goes through a shell..?!
>
> As in the description: Xarchiver is a GUI frontend for various separate
> tools which are invoked by Xarchiver. The program must ensure that
> characters in filenames and archive names are properly escaped when it
> passes them to the respective tools like tar or 7z.

Sorry, I still do not understand. Why is there a need to escape
filenames when calling other tools? For example,

execve("/usr/bin/tar", { "cf", "compl cated.tar", NULL });

should work perfectly fine without any need for escaping.


Best,
-Nikolaus

-- 
GPG Fingerprint: ED31 791B 2C5C 1613 AF38 8B8A D113 FCAC 3C4E 599F

             »Time flies like an arrow, fruit flies like a Banana.«

Reply via email to