g_hal_volume_get_name() locking?



Hey,

I'm working on porting Thunar to GIO/GVfs at the moment. When I tried
to switch from ThunarVfsVolumeManager to GVolumeMonitor I ran into a
locking issue but I'm not sure if it's my fault or a bug in GVfs.

Basically, what I try to do is: get the GVolumeMonitor, get a list of
volumes, and then mount one of them using g_volume_mount() and
g_volume_mount_finish() in the async callback. I'm using the HAL
implementation for that and I noticed that the application simply locks
when I try to access the internals of the GVolume in the async callback.

Here's a small test application: http://nopaste.geany.org/p/m13de531.
It locks in line 24. When I press <Ctrl>c, I get the backtrace you'll
find below the example code.

It seems like the lock on hal_volume is not unlocked with 
G_UNLOCK (hal_volume) before calling the callback but I can't figure
out why. Any ideas? It's GIO 2.18.3 and GVfs 0.2.3 by the way.

Thanks in advance, 
Jannis

Attachment: signature.asc
Description: PGP signature



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