Ignore cdda devices detected via gio ealier, to avoid crash when getting device's filesystem info. This seems to happen because both giolister and cddadevice try to access to the device at the same time

This commit is contained in:
Arnaud Bienner 2011-08-18 21:34:45 +02:00
parent 419447e192
commit 91537777c8
1 changed files with 7 additions and 7 deletions

View File

@ -213,13 +213,13 @@ void GioLister::VolumeAdded(GVolume* volume) {
DeviceInfo info;
info.ReadVolumeInfo(volume);
if (info.volume_root_uri.startsWith("cdda"))
// Audio CD devices are already handled by CDDA lister
return;
info.ReadDriveInfo(g_volume_get_drive(volume));
info.ReadMountInfo(g_volume_get_mount(volume));
if (!info.is_suitable())
return;
if (info.volume_root_uri.startsWith("cdda"))
// Audio CD devices are already handled by CDDA lister
return;
{
QMutexLocker l(&mutex_);
@ -247,14 +247,14 @@ void GioLister::MountAdded(GMount* mount) {
g_object_ref(mount);
DeviceInfo info;
info.ReadMountInfo(mount);
info.ReadVolumeInfo(g_mount_get_volume(mount));
info.ReadDriveInfo(g_mount_get_drive(mount));
if (!info.is_suitable())
return;
if (info.volume_root_uri.startsWith("cdda"))
// Audio CD devices are already handled by CDDA lister
return;
info.ReadMountInfo(mount);
info.ReadDriveInfo(g_mount_get_drive(mount));
if (!info.is_suitable())
return;
QString old_id;
{