Re: gvfs: fails to mount certain removable devices



Hi!

On 11/12/2012 09:06 PM, David Zeuthen wrote:
The way it works is that GVfs is typically used to implement GVolumeMonitor/GDrive/GVolume/GMount instances. On a newish system, udisks2 is used, e.g. this code

http://git.gnome.org/browse/gvfs/tree/monitor/udisks2

On older systems the GDU code is used

http://git.gnome.org/browse/gvfs/tree/monitor/gdu

You can run 'gvfs-mount -li' from a terminal in the login session to see - it will print something like this

  Type: GProxyVolume (GProxyVolumeMonitorUDisks2)

Okay, that command tells me Type: GProxyDrive (GProxyVolumeMonitorGdu).

For the drives that work, it jumps thru glib's g_drive_get_volumes() back to gvfs' get_volumes() in file ggduvolumemonitor.c.

However, for the drives that don't work, it doesn't do that. I haven't found out yet what kind of GDriveIface G_DRIVE_GET_IFACE (drive) fetches in g_drive_get_volumes(). One thing is certain: iface->has_volumes() is 0, there!

(Any hints how to further debug this? I tried to find out what code is called with iface->get_volumes() using gdb, but wasn't successful. I do have to admit I'm new to glib and, errhm, to object-orientation in C in general.)

  -richy.
--
Richard B. Kreckel
<http://www.ginac.de/~kreckel/>



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]