[Spice-devel] [spice-gtk v1] file-xfer: Fix bad filename encoding
Victor Toso
victortoso at redhat.com
Wed Apr 12 11:57:19 UTC 2017
On Wed, Apr 12, 2017 at 07:18:54AM -0400, Marc-André Lureau wrote:
> Hi
>
> ----- Original Message -----
> > From: Victor Toso <me at victortoso.com>
> >
> > Manual for G_FILE_ATTRIBUTE_STANDARD_NAME states:
> > > The name is the on-disk filename which may not be in any known
> > > encoding, and can thus not be generally displayed as is.
> >
> > Considering a file named "ěščřžýáíé", if we use
> > G_FILE_ATTRIBUTE_STANDARD_NAME get the file name, we will have the
> > following 72 char long string:
> > "\xc4\x9b\xc5\xa1\xc4\x8d\xc5\x99\xc5\xbe\xc3\xbd\xc3\xa1\xc3\xad\xc3\xa9"
> >
> > We should be use G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME instead which
> > will give us the correct 18 long utf-8 string: "ěščřžýáíé"
> >
> > Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1440206
> >
> > Signed-off-by: Victor Toso <victortoso at redhat.com>
>
> I suppose this happens when the filename encoding isn't utf8,
> ack
I think it is utf8 but G_FILE_ATTRIBUTE_STANDARD_NAME give the bytes as
string instead, did not checked why.
Thanks for the ack!
Just for information, I also tested on win7 and win10 guests and it
works now (it fails without the patch)
>
> > ---
> > src/channel-main.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/src/channel-main.c b/src/channel-main.c
> > index be7c852..c8de5f3 100644
> > --- a/src/channel-main.c
> > +++ b/src/channel-main.c
> > @@ -2846,7 +2846,7 @@ static void file_xfer_init_task_async_cb(GObject *obj,
> > GAsyncResult *res, gpoint
> > goto failed;
> >
> > channel = spice_file_transfer_task_get_channel(xfer_task);
> > - basename = g_file_info_get_attribute_as_string(info,
> > G_FILE_ATTRIBUTE_STANDARD_NAME);
> > + basename = g_file_info_get_attribute_as_string(info,
> > G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME);
> > file_size = g_file_info_get_attribute_uint64(info,
> > G_FILE_ATTRIBUTE_STANDARD_SIZE);
> >
> > xfer_op = data;
> > --
> > 2.12.2
> >
> > _______________________________________________
> > Spice-devel mailing list
> > Spice-devel at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/spice-devel
> >
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/spice-devel/attachments/20170412/1191ad17/attachment.sig>
More information about the Spice-devel
mailing list