Opened 13 years ago

Closed 13 years ago

#2818 closed defect (fixed)

Support for non-ascii filenames

Reported by: andrei@… Owned by: Isaac Richards
Priority: minor Milestone: unknown
Component: mythtv Version: head
Severity: high Keywords:
Cc: Ticket locked: no

Description

Hi,

uint myth_system(const QString &command, int flags) (used to launch external tools, specifically tested with mplayer) function accepts QString as a parameter, but in the actuall call to execl strips non-ASCII characters from the string. The end result (again, noticed and tested mainly in MythGallery, assumed to have similar implications in MythVideo?, MythArchive? and possibly other places) - if directory names contain non-ASCII characters (Cyrillic in my case), the external applications fail to launch because, for example, path "/home/pictures/видео.mpg" is converted to "/home/pictures/?????.mpg". Simple conversion to UTF8 instead of ASCII (backwards compatible with ASCII), solves the issue.

Attachments (2)

utf8_instead_of_ascii_in_execl_call.patch (467 bytes) - added by andrei@… 13 years ago.
myth_system() fix for non-ascii file paths and command line parameters
utf8_instead_of_ascii_in_execl_call.2.patch (484 bytes) - added by andrei@… 13 years ago.

Download all attachments as: .zip

Change History (6)

Changed 13 years ago by andrei@…

myth_system() fix for non-ascii file paths and command line parameters

comment:1 Changed 13 years ago by anonymous

Severity: mediumhigh

comment:2 Changed 13 years ago by anonymous

Version: 0.20head

Changed 13 years ago by andrei@…

comment:3 Changed 13 years ago by andrei@…

Please ignore the first version of the attached patch.

comment:4 Changed 13 years ago by cpinkham

Resolution: fixed
Status: newclosed

(In [12681]) Use the utf8 version of the command when calling execl in myth_system.

Modify the JobQueue? to pass a QString to myth_system() rather than the .ascii() version of that QString.

Closes #2818. References #2612.

Note: See TracTickets for help on using tickets.