static void g_udisks_device_removed(GUDisksDevice* dev, GUDisksVolumeMonitor* mon) { g_debug("g_udisks_device_removed"); if(dev->is_drive) remove_drive(mon, dev); remove_volume(mon, dev); }
/* HAL callback for removed device */ static void hal_removed_device( LibHalContext *ctx, const char *udi ) { DBusError error; TRACE( "removed %s\n", wine_dbgstr_a(udi) ); if (!remove_dos_device( -1, udi )) { p_dbus_error_init( &error ); p_libhal_device_remove_property_watch( ctx, udi, &error ); p_dbus_error_free( &error ); } else remove_volume( udi ); }
static void g_udisks_device_changed(GUDisksDevice* dev, GUDisksVolumeMonitor* mon) { GUDisksDrive* drv = find_drive(mon, dev); GUDisksVolume* vol = find_volume(mon, dev); /* gboolean is_drive = dev->is_drive; char* usage = g_strdup(dev->usage); */ g_debug("g_udisks_device_changed"); if(drv) { g_signal_emit(mon, sig_drive_changed, 0, drv); g_udisks_drive_changed(drv); /* it's no longer a drive */ if(!dev->is_drive) remove_drive(mon, dev); } else { if(dev->is_drive) add_drive(mon, dev, TRUE); } if(vol) { update_volume_drive(vol, mon); g_signal_emit(mon, sig_volume_changed, 0, vol); g_udisks_volume_changed(vol); /* it's no longer a volume */ if(!g_udisks_device_is_volume(dev)) remove_volume(mon, dev); } else { /* we got a usable volume now */ if(g_udisks_device_is_volume(dev)) add_volume(mon, dev, TRUE); } }
/* UDisks callback for removed device */ static void udisks_removed_device( const char *udi ) { TRACE( "removed %s\n", wine_dbgstr_a(udi) ); if (!remove_dos_device( -1, udi )) remove_volume( udi ); }