urlencode filenames are not correctly escaped
Submitted by Ángel González
Assigned to Brasero maintainer(s)
Link to original bug (#646023)
Description
Files with % encoding are not properly escaped, which produce conflicts.
Steps to reproduce: touch bug%2B mkdir /tmp/brasero-bug
Add the folder /tmp/brasero-bug to a project
Expected: It gets burned
Actual result: The disc creation fails. The log contains the confusing error: BraseroGenisoimage stderr: /usr/bin/genisoimage: Error: '/tmp/brasero-bug/bug%2B' and '/tmp/brasero-bug/bug%2B' have the same Rock Ridge name 'bug%2B'.
As they are the same file, it is obvious that they will have the same name in the disc.
Loking further, genisoimage is called with the path-list file containing /brasero-bug/=/tmp/brasero-bug /brasero-bug/bug%2B=/tmp/brasero-bug/bug%2B
(so far, so good) and the exclude file: /tmp/brasero-bug/bug+ /tmp/brasero-bug
Which is wrong, as the file is not called /tmp/brasero-bug/bug+ but /tmp/brasero-bug/bug%2B (it was urldecoded)
The result is that the file is not excluded, and is thus tried to be added twice, once as /tmp/brasero-bug child as another due to its explicit entry.
This happens at least with the codes: %2B, %20, %3C
Version: 2.32.x