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
/* 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;
}
gint errnum = 0;
GError *error = NULL;
gboolean success;
- int signum = 0;
/* g_debug("Executing: %s", argv[0]); */
if (WIFSIGNALED(errnum)) {
success = FALSE;
- signum = WTERMSIG(errnum);
} else if (WIFEXITED(errnum)) {
success = (WEXITSTATUS(errnum) == 0);
} else {