checkpoint: refactor setting error for lookup checkpoint failure
This changes the error reason in nm_checkpoint_manager_rollback() from NM_MANAGER_ERROR_FAILED to NM_MANAGER_ERROR_INVALID_ARGUMENTS.
This commit is contained in:
@@ -227,14 +227,9 @@ nm_checkpoint_manager_destroy (NMCheckpointManager *self,
|
|||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
checkpoint = nm_checkpoint_manager_lookup_by_path (self, path);
|
checkpoint = nm_checkpoint_manager_lookup_by_path (self, path, error);
|
||||||
if (!checkpoint) {
|
if (!checkpoint)
|
||||||
g_set_error (error,
|
|
||||||
NM_MANAGER_ERROR,
|
|
||||||
NM_MANAGER_ERROR_INVALID_ARGUMENTS,
|
|
||||||
"checkpoint %s does not exist", path);
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
|
||||||
|
|
||||||
destroy_checkpoint (self, checkpoint, TRUE);
|
destroy_checkpoint (self, checkpoint, TRUE);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
@@ -253,19 +248,16 @@ nm_checkpoint_manager_rollback (NMCheckpointManager *self,
|
|||||||
g_return_val_if_fail (results, FALSE);
|
g_return_val_if_fail (results, FALSE);
|
||||||
g_return_val_if_fail (!error || !*error, FALSE);
|
g_return_val_if_fail (!error || !*error, FALSE);
|
||||||
|
|
||||||
checkpoint = nm_checkpoint_manager_lookup_by_path (self, path);
|
checkpoint = nm_checkpoint_manager_lookup_by_path (self, path, error);
|
||||||
if (!checkpoint) {
|
if (!checkpoint)
|
||||||
g_set_error (error, NM_MANAGER_ERROR, NM_MANAGER_ERROR_FAILED,
|
|
||||||
"checkpoint %s does not exist", path);
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
|
||||||
|
|
||||||
*results = rollback_checkpoint (self, checkpoint);
|
*results = rollback_checkpoint (self, checkpoint);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
NMCheckpoint *
|
NMCheckpoint *
|
||||||
nm_checkpoint_manager_lookup_by_path (NMCheckpointManager *self, const char *path)
|
nm_checkpoint_manager_lookup_by_path (NMCheckpointManager *self, const char *path, GError **error)
|
||||||
{
|
{
|
||||||
NMCheckpoint *checkpoint;
|
NMCheckpoint *checkpoint;
|
||||||
|
|
||||||
@@ -274,8 +266,11 @@ nm_checkpoint_manager_lookup_by_path (NMCheckpointManager *self, const char *pat
|
|||||||
checkpoint = (NMCheckpoint *) nm_dbus_manager_lookup_object (nm_dbus_object_get_manager (NM_DBUS_OBJECT (GET_MANAGER (self))),
|
checkpoint = (NMCheckpoint *) nm_dbus_manager_lookup_object (nm_dbus_object_get_manager (NM_DBUS_OBJECT (GET_MANAGER (self))),
|
||||||
path);
|
path);
|
||||||
if ( !checkpoint
|
if ( !checkpoint
|
||||||
|| !NM_IS_CHECKPOINT (checkpoint))
|
|| !NM_IS_CHECKPOINT (checkpoint)) {
|
||||||
|
g_set_error (error, NM_MANAGER_ERROR, NM_MANAGER_ERROR_INVALID_ARGUMENTS,
|
||||||
|
"checkpoint %s does not exist", path);
|
||||||
return NULL;
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
nm_assert (c_list_contains (&self->checkpoints_lst_head, &checkpoint->checkpoints_lst));
|
nm_assert (c_list_contains (&self->checkpoints_lst_head, &checkpoint->checkpoints_lst));
|
||||||
return checkpoint;
|
return checkpoint;
|
||||||
|
@@ -32,7 +32,8 @@ NMCheckpointManager *nm_checkpoint_manager_new (NMManager *manager, GParamSpec *
|
|||||||
void nm_checkpoint_manager_free (NMCheckpointManager *self);
|
void nm_checkpoint_manager_free (NMCheckpointManager *self);
|
||||||
|
|
||||||
NMCheckpoint *nm_checkpoint_manager_lookup_by_path (NMCheckpointManager *self,
|
NMCheckpoint *nm_checkpoint_manager_lookup_by_path (NMCheckpointManager *self,
|
||||||
const char *path);
|
const char *path,
|
||||||
|
GError **error);
|
||||||
|
|
||||||
NMCheckpoint *nm_checkpoint_manager_create (NMCheckpointManager *self,
|
NMCheckpoint *nm_checkpoint_manager_create (NMCheckpointManager *self,
|
||||||
const char *const*device_names,
|
const char *const*device_names,
|
||||||
|
Reference in New Issue
Block a user