Re: Are GnomeVFSVolume pointers supposed to be unique?

Alexander Larsson <[email protected]>
Newsgroups gmane.comp.gnome.vfs.general
Message-ID <[email protected]>
On Tue, 2007-10-23 at 12:50 -0500, Federico Mena Quintero wrote:

> When it says "Creating desktop link", it is the initial pass in
> nautilus-desktop-link-monitor that calls
> gnome_vfs_volume_monitor_get_mounted_volumes().  You can see that it
> gives us a GnomeVFSVolume* equal to 0x81ba330, for a certain HAL UDI.
> 
> Later, we get a "volume mounted" signal for the *same* HAL UDI, but we
> get a different GnomeVFSVolume* of 0x81f37d0.  The code in Nautilus then
> gets quite confused, since it assumes that GnomeVFSVolume pointers
> identify volumes uniquely.  Is this assumption correct?
> 
> I haven't finished digging into the gnome-vfs code yet, but
> gnome-vfs-volume-monitor-client.c is decoding a volume from the DBus
> signal, and indeed it creates a new volume object.  So I don't know if
> the daemon should be uniquifying the volumes, or not re-sending "volume
> mounted" signals for volumes that are already mounted, or if Nautilus's
> assumptions are just wrong.  Does anyone know what's the intended
> behavior here?

Well, for a given volume monitor, the volume pointers should at any time
identify a volume uniquely. However, if it is unmounted and then mounted
again it will have another identity.

Is that what is happening? Or is it getting a "mounted" even when its
already been added to the list of mounted volumes in the monitor?
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.