Index: gnome-vfs-hal-mounts.c =================================================================== RCS file: /cvs/gnome/gnome-vfs/libgnomevfs/gnome-vfs-hal-mounts.c,v retrieving revision 1.33 diff -u -p -r1.33 gnome-vfs-hal-mounts.c --- gnome-vfs/libgnomevfs/gnome-vfs-hal-mounts.c 7 Jul 2006 15:56:57 -0000 1.33 +++ gnome-vfs/libgnomevfs/gnome-vfs-hal-mounts.c 14 Jul 2006 18:48:51 -0000 @@ -877,6 +877,7 @@ _hal_add_volume (GnomeVFSVolumeMonitorDa GnomeVFSDrive *drive; GnomeVFSVolumeMonitor *volume_monitor; char *name; + char *icon; gboolean allowed_by_policy; const char *backing_udi; @@ -975,6 +976,8 @@ _hal_add_volume (GnomeVFSVolumeMonitorDa */ drive = _gnome_vfs_volume_monitor_find_drive_by_hal_udi (volume_monitor, libhal_volume_get_udi (hal_volume)); if (drive == NULL && allowed_by_policy) { + name = _hal_drive_policy_get_display_name (volume_monitor_daemon, hal_drive, hal_volume); + icon = _hal_drive_policy_get_icon (volume_monitor_daemon, hal_drive, hal_volume); drive = g_object_new (GNOME_VFS_TYPE_DRIVE, NULL); if (libhal_volume_disc_has_audio (hal_volume)) { drive->priv->activation_uri = g_strdup_printf ("cdda://%s", @@ -989,16 +992,16 @@ _hal_add_volume (GnomeVFSVolumeMonitorDa * So just set it to the empty string */ drive->priv->activation_uri = g_strdup (""); + g_free (name); + name = _hal_volume_policy_get_display_name (volume_monitor_daemon, hal_drive, hal_volume); + g_free (icon); + icon = _hal_volume_policy_get_icon (volume_monitor_daemon, hal_drive, hal_volume); } drive->priv->is_connected = TRUE; drive->priv->device_path = g_strdup (libhal_volume_get_device_file (hal_volume)); drive->priv->device_type = _hal_get_gnome_vfs_device_type (hal_drive); - /* TODO: could add an icon of a drive with media in it since this codepath only - * handles drives with media in them - */ - drive->priv->icon = _hal_drive_policy_get_icon (volume_monitor_daemon, hal_drive, NULL); - name = _hal_drive_policy_get_display_name (volume_monitor_daemon, hal_drive, hal_volume); + drive->priv->icon = icon; drive->priv->display_name = _gnome_vfs_volume_monitor_uniquify_drive_name (volume_monitor, name); g_free (name); name = g_utf8_casefold (drive->priv->display_name, -1);