1

I'm trying to open files in a local application on an LTSP system. But if the path name contains accented characters, like é, it can not be opened because the URI seems to be encoded wrong.

The problems seems to be located in the way gvfs-open sends the file URI:

gvfs-open /home/user/testé/test.mov
VLC is unable to open the MRL 'file:///home/user/test303251/test.mov'.

Opening the same file from the application itself (using File > Open..) does not give any problems.

Spaces and comma's seem to be encoded differently, with %20, and do not give any problems.

gvfs-open /home/user/this is testé/test.mov
VLC is unable to open the MRL 'file:///home/user/this%20is%20test303251/test.mov'.

Any idea how this can be fixed?

Tom B.
  • 111
  • 4

1 Answers1

0

I found the solution and filed a bug for this: https://bugs.launchpad.net/ubuntu/+source/ltsp/+bug/1451915

It was caused by the way LTSP opens local applications: LTSP sets an X property containing the command and arguments, which is read on the client and then executed.

/usr/bin/vlc --started-from-file %U

gets replaced on the clients by

xprop -root -f LTSP_COMMAND 8s -set LTSP_COMMAND "/usr/bin/vlc --started-from-file %U"

But this uses an 8 bit encoding. If you change the "8s" to "8u" it will use an UTF-8 unicode string, which seems to fix the problem.

The file that needs to be changed is:

/opt/ltsp/i386/usr/bin/ltsp-genmenu
Tom B.
  • 111
  • 4