Re: [patch] [bug 432510] samba filename encoding on none UTF-8 locales
- From: Takao Fujiwara - Tokyo S/W Center <Takao Fujiwara Sun COM>
- To: nautilus-list gnome org
- Subject: Re: [patch] [bug 432510] samba filename encoding on none UTF-8 locales
- Date: Wed, 25 Jul 2007 10:27:11 +0900
Hi,
Are there acceptable solutoins?
I'ld like to fix this problem asap.
-------- Original Message --------
I updated the patches. It seems to be better to provide some options.
Which options can be acceptable?
Option 1: Fixes nautilus-file.c only
http://bugzilla.gnome.org/attachment.cgi?id=88990&action=view
The option 1 is to fix nautilus-file.c only.
Merit
- This is a small fix with one file.
Demerit
- This does not fix the similar problems on other GUIs.
Option2: Provide nautilus_use_local_charset() for the high visible UI
http://bugzilla.gnome.org/attachment.cgi?id=88991&action=view
The option 2 is to provide nautilus_use_local_charset() for the high visible
UI.
Merit
- The fix is closed in nautilus side
- Fixes the high visible UI.
Demerit
- It's likely that this is also affecting lots and lots of other places.
Option 3: Provide gnome_vfs_locale_uri_to/from_utf8()
http://bugzilla.gnome.org/attachment.cgi?id=88992&action=view
The option 3 is to provide gnome_vfs_locale_uri_to/from_utf8().
Merit
- It may be a preferable way.
Demerit
- gnome-vfs is deprecated now.
Alexander Larsson wrote:
> -locale_name = g_filename_from_utf8 (new_name, -1, NULL, NULL, NULL);
> +locale_name = g_convert (new_name, -1, filename_charset, "UTF-8", NULL, NULL, NULL);
>
> This changes nothing. This is exactly what g_filename_from_utf8() would
> do.
OK, I updated this.
>
> You said that setting G_BROKEN_FILENAMES_SMB is supposed to make
> nautilus use the encoding of the locale for smb uris. However, the code
> you just posted uses the encoding that is used for filenames when
> G_BROKEN_FILENAMES_SMB is set. So, if G_BROKEN_FILENAMES_SMB is set, but
> G_BROKEN_FILENAMES is not set, or if G_FILENAME_ENCODING is set to
> something else then it doesn't do what you wanted.
>
> Now, perhaps that is a better thing to do for your usecase, but in that
> case the name of the env var is pretty confusing, and you should use
> something better.
I see.
How about G_USE_LOCAL_CHARSET_FOR_SMB_FILENAMES ?
>
> +gboolean nautilus_use_local_charset_from_path (const char *text_uri);
> +gboolean nautilus_use_local_charset_from_uri (const GnomeVFSURI *uri);
> +use_local_charset (NautilusFile *file)
>
> These are very confusing. local and locale are two very different
> things. Also, a text_uri is not a "path".
> nautilus_use_local_charset_from_uri is also extremely inefficient,
> turning the parsed uri into a string just to look at the method name.
I renamed those those functions to follow the scheme of gnome_vfs_remove_directory_from_uri.
>
> Its likely that this is also affecting lots and lots of other places. In
> fact, every place in the desktop (including things like the file
> selector). I really don't think this can be handled by finding each
> place and adding in some smb specific code. A real solution would
> include adding the same kind of API as g_filename_to/from_utf8() to
> gnome-vfs and using it consistantly everywhere. However, since gnome-vfs
> is to be deprecated and the replacement has the proper API for this
> (display name and on-disk name is properly separated in the API) it
> seems like a bad idea to try to enforce this at this point.
>
> So, I don't really think that this solution is right at this point.
> Sorry.
I updated three patches. What do you think there are any ways to fix this problem tentatively until gvfs is available?
--
nautilus-list mailing list
nautilus-list gnome org
http://mail.gnome.org/mailman/listinfo/nautilus-list
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]