Hi reviewers,

Could somebody investigate nautilus gio-branch?

I installed gio, gvfs, eel gio-branch, nautilus gio-branch.
But nautilus crashes below.

-------------- >8 =============

GFileMonitor*
g_local_file_monitor_new (const char* pathname,
                           GFileMonitorFlags flags)
{

...

#if defined(HAVE_SYS_INOTIFY_H) || defined(HAVE_LINUX_INOTIFY_H)
       /* Register Inotify monitor */
       g_inotify_file_monitor_get_type ();
#endif

...

       g_once_init_leave ((gsize*)&monitor_type, chosen_type);
     }

...

}


Reading libgvfsdbus.so
Reading libgvfscommon.so.0.0.0
Reading libsmb.so

GLib-CRITICAL **: file gthread.c: line 227: assertion `initialization_value != 
0' failed
aborting...
t at 1 (l at 1) signal ABRT in __lwp_kill at 0xd061fa85
0xd061fa85: __lwp_kill+0x0015:  jae      __lwp_kill+0x23        [ 0xd061fa93, 
.+0xe ]
Current function is g_local_file_monitor_new
   197         g_once_init_leave ((gsize*)&monitor_type, chosen_type);

   [1] __lwp_kill(0x1, 0x6), at 0xd061fa85
   [2] _thr_kill(0x1, 0x6), at 0xd061c57d
   [3] raise(0x6), at 0xd05d7392
   [4] abort(0xd0b74eb4, 0x8430c90, 0xd0a57434, 0x1, 0xd03f2a00, 0x8045ebc), at 
0xd05b5474
   [5] g_logv(0xd0a4608c, 0x8, 0xd0a46064, 0x8046308), at 0xd09cf9ec
   [6] g_log(0xd0a4608c, 0x8, 0xd0a46064, 0xd0a46058, 0xe3, 0xd0a46008), at 
0xd09cfa15
   [7] g_once_init_leave(0xd0b74eb4, 0x0), at 0xd09e7e9d
=>[8] g_local_file_monitor_new(pathname = 0x84314b8 "/etc/vfstab", flags = 
G_FILE_MONITOR_FLAGS_NONE), line 197 in "glocalfilemonitor.c"
   [9] g_local_file_monitor_file(file = 0x8430c90, flags = 
G_FILE_MONITOR_FLAGS_NONE, cancellable = (nil)), line 1750 in "glocalfile.c"
   [10] g_file_monitor_file(file = 0x8430c90, flags = 
G_FILE_MONITOR_FLAGS_NONE, cancellable = (nil)), line 2656 in "gfile.c"
   [11] g_unix_mount_monitor_init(monitor = 0x842fa20), line 1086 in 
"gunixmounts.c"
-------------- >8 =============

Probably g_inotify_file_monitor_get_type needs to be provided for Solaris.

Background: (Probably somebody has already noticed the discussion in nautlus 
community.)
=========================
I've been trying to fix smb filename encodings on none UTF-8 locales.
The problem is, when smb returns UTF-8 strings in case smb.conf does not exist 
or smb.conf has the default enconding, nautilus/gnome-vfs does not work well 
because the locale filesystem, i.e. "file://" scheme, has the current encoding 
but the smb share 
filesystem, i.e. "smb://" provides UTF-8 encoding.

When we copy a directory from smb to local, the top directory name is handled 
by nautlus but the child filenames are not handled by nautilus, which files are 
included in the directory.
I thought the child filenames would be handled by smb by my mistake.
And then my first approach was to fix nautilus in case that smb.conf is 
configured to return the current encoding instead of UTF-8.
But since I added a new parameter $G_USE_LOCAL_CHARSET_FOR_SMB_FILENAMES in the 
fix, the nautilus maintainer rejects the patch because gvfs, which is the 
replacement of gnome-vfs, provides a new feature of mount option so nautilus 
will can mount smb 
filesystems with the current encoding instead of UTF-8 and gvfs provides the 
filename path besides file URI.

So I need to check how gvfs works with smb filesystems.

However recently I noticed, the child filenames are handled by gnome-vfs in 
case the parent directory is copied/moved. So I can fix this problem with the 
default encoding UTF-8.
The attached patches works fine when smb returns the default UTF-8 encoding.
Through the discussion, I think the nautilus maintainer expects nautilus has 
UTF-8 URIs for the remote filesystems.
=========================

Currently I try to fix this problem for s10u5 and I'm waiting for gvfs for 
vermillion.
The attached patches may can be upstreamed but I need to check how I can apply 
the fix for gvfs/nautilus.
The nautilus maintainers mentioned gvfs provides smb mount however I think 
nautilus still needs to provide smb share besides smb mount.

Any suggestions?

At the moment, I try to prepare Fedora 7 to investigate gvfs but I'ld apply the 
attachments in vermillion for the s10u5 integration, i.e. when gvfs is 
integrated in vermillion, those pathes will be removed from trunk.
My main problem is that I don't know how to test gvfs and tries nautilus gio.

% env GIO_USE_VFS=gvfs gio-ls smb://foo
Error: Error while getting mount info: The specified location is not supported

Thanks,
fujiwara
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: nautilus-6489756-g11n-smb-filename.diff.bak5
URL: 
<http://mail.opensolaris.org/pipermail/jds-review/attachments/20071109/f61bfa0c/attachment.ksh>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: gnome-vfs-6489756-g11n-smb-filename.diff.bak5
URL: 
<http://mail.opensolaris.org/pipermail/jds-review/attachments/20071109/f61bfa0c/attachment-0001.ksh>

Reply via email to