X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=device-src%2Fdvdrw-device.c;h=128e05ff0d17694d226e478e3c2a77d35fdd8850;hb=0a6077b41c5db1d957dfdcc5c04954f8bb38320a;hp=ddae35e45130897c5b44aa2e8cad4934a9a7c76d;hpb=fd48f3e498442f0cbff5f3606c7c403d0566150e;p=debian%2Famanda diff --git a/device-src/dvdrw-device.c b/device-src/dvdrw-device.c index ddae35e..128e05f 100644 --- a/device-src/dvdrw-device.c +++ b/device-src/dvdrw-device.c @@ -321,6 +321,12 @@ dvdrw_device_init (DvdRwDevice *self) device_set_simple_property(dself, PROPERTY_FULL_DELETION, &val, PROPERTY_SURETY_GOOD, PROPERTY_SOURCE_DETECTED); g_value_unset(&val); + + g_value_init(&val, G_TYPE_BOOLEAN); + g_value_set_boolean(&val, TRUE); + device_set_simple_property(dself, PROPERTY_LEOM, + &val, PROPERTY_SURETY_GOOD, PROPERTY_SOURCE_DETECTED); + g_value_unset(&val); } static gboolean @@ -511,22 +517,13 @@ dvdrw_device_finish(Device *dself) /* Save access mode before parent class messes with it */ mode = dself->access_mode; - if (device_in_error(dself)) { - if (mode == ACCESS_READ) { - /* Still need to do this, don't care if it works or not */ - unmount_disc(self); - } - - return FALSE; - } - result = parent_class->finish(dself); if (mode == ACCESS_READ) { unmount_disc(self); } - if (! result) { + if (!result || device_in_error(dself)) { return FALSE; }