diff options
author | Jonathan Lebon <jonathan@jlebon.com> | 2018-09-28 17:36:45 -0400 |
---|---|---|
committer | Atomic Bot <atomic-devel@projectatomic.io> | 2018-09-28 21:49:36 +0000 |
commit | 39d5db7e1ef99b7c01a21dab3b189ccf660f9d48 (patch) | |
tree | d7742c0eff84d35d64f50f8f38cd113aa12e7611 /src/libostree/ostree-mutable-tree.c | |
parent | 899b0bfad29643c3b215aa922a6d2e5ae94edd8c (diff) | |
download | ostree-39d5db7e1ef99b7c01a21dab3b189ccf660f9d48.tar.gz |
lib/mutable-tree: Port to new style
Some therapeutic style conversion to finish off the week. Pretty
straightforward overall.
Closes: #1742
Approved by: cgwalters
Diffstat (limited to 'src/libostree/ostree-mutable-tree.c')
-rw-r--r-- | src/libostree/ostree-mutable-tree.c | 118 |
1 files changed, 38 insertions, 80 deletions
diff --git a/src/libostree/ostree-mutable-tree.c b/src/libostree/ostree-mutable-tree.c index 573f6260..f6577210 100644 --- a/src/libostree/ostree-mutable-tree.c +++ b/src/libostree/ostree-mutable-tree.c @@ -305,31 +305,22 @@ ostree_mutable_tree_replace_file (OstreeMutableTree *self, const char *checksum, GError **error) { - gboolean ret = FALSE; - g_return_val_if_fail (name != NULL, FALSE); if (!ot_util_filename_validate (name, error)) - goto out; + return FALSE; if (!_ostree_mutable_tree_make_whole (self, NULL, error)) - goto out; + return FALSE; if (g_hash_table_lookup (self->subdirs, name)) - { - g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED, - "Can't replace directory with file: %s", name); - goto out; - } + return glnx_throw (error, "Can't replace directory with file: %s", name); invalidate_contents_checksum (self); g_hash_table_replace (self->files, g_strdup (name), g_strdup (checksum)); - - ret = TRUE; - out: - return ret; + return TRUE; } /** @@ -347,34 +338,24 @@ ostree_mutable_tree_remove (OstreeMutableTree *self, gboolean allow_noent, GError **error) { - gboolean ret = FALSE; - g_return_val_if_fail (name != NULL, FALSE); if (!ot_util_filename_validate (name, error)) - goto out; + return FALSE; if (!_ostree_mutable_tree_make_whole (self, NULL, error)) - goto out; + return FALSE; if (!g_hash_table_remove (self->files, name) && !g_hash_table_remove (self->subdirs, name)) { if (allow_noent) - { - ret = TRUE; - goto out; - } - - set_error_noent (error, name); - goto out; + return TRUE; /* NB: early return */ + return set_error_noent (error, name); } invalidate_contents_checksum (self); - - ret = TRUE; - out: - return ret; + return TRUE; } /** @@ -393,36 +374,29 @@ ostree_mutable_tree_ensure_dir (OstreeMutableTree *self, OstreeMutableTree **out_subdir, GError **error) { - gboolean ret = FALSE; - g_autoptr(OstreeMutableTree) ret_dir = NULL; - g_return_val_if_fail (name != NULL, FALSE); if (!ot_util_filename_validate (name, error)) - goto out; + return FALSE; if (!_ostree_mutable_tree_make_whole (self, NULL, error)) - goto out; + return FALSE; if (g_hash_table_lookup (self->files, name)) - { - g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED, - "Can't replace file with directory: %s", name); - goto out; - } + return glnx_throw (error, "Can't replace file with directory: %s", name); - ret_dir = ot_gobject_refz (g_hash_table_lookup (self->subdirs, name)); + g_autoptr(OstreeMutableTree) ret_dir = + ot_gobject_refz (g_hash_table_lookup (self->subdirs, name)); if (!ret_dir) { ret_dir = ostree_mutable_tree_new (); invalidate_contents_checksum (self); insert_child_mtree (self, name, g_object_ref (ret_dir)); } - - ret = TRUE; - ot_transfer_out_value (out_subdir, &ret_dir); - out: - return ret; + + if (out_subdir) + *out_subdir = g_steal_pointer (&ret_dir); + return TRUE; } gboolean @@ -432,29 +406,24 @@ ostree_mutable_tree_lookup (OstreeMutableTree *self, OstreeMutableTree **out_subdir, GError **error) { - gboolean ret = FALSE; - g_autoptr(OstreeMutableTree) ret_subdir = NULL; - g_autofree char *ret_file_checksum = NULL; - if (!_ostree_mutable_tree_make_whole (self, NULL, error)) - goto out; + return FALSE; - ret_subdir = ot_gobject_refz (g_hash_table_lookup (self->subdirs, name)); + g_autofree char *ret_file_checksum = NULL; + g_autoptr(OstreeMutableTree) ret_subdir = + ot_gobject_refz (g_hash_table_lookup (self->subdirs, name)); if (!ret_subdir) { ret_file_checksum = g_strdup (g_hash_table_lookup (self->files, name)); if (!ret_file_checksum) - { - set_error_noent (error, name); - goto out; - } + return set_error_noent (error, name); } - ret = TRUE; - ot_transfer_out_value (out_file_checksum, &ret_file_checksum); - ot_transfer_out_value (out_subdir, &ret_subdir); - out: - return ret; + if (out_file_checksum) + *out_file_checksum = g_steal_pointer (&ret_file_checksum); + if (out_subdir) + *out_subdir = g_steal_pointer (&ret_subdir); + return TRUE; } /** @@ -475,49 +444,38 @@ ostree_mutable_tree_ensure_parent_dirs (OstreeMutableTree *self, OstreeMutableTree **out_parent, GError **error) { - gboolean ret = FALSE; - int i; - OstreeMutableTree *subdir = self; /* nofree */ - g_autoptr(OstreeMutableTree) ret_parent = NULL; + g_assert (metadata_checksum != NULL); if (!_ostree_mutable_tree_make_whole (self, NULL, error)) - goto out; - - g_assert (metadata_checksum != NULL); + return FALSE; if (!self->metadata_checksum) ostree_mutable_tree_set_metadata_checksum (self, metadata_checksum); - for (i = 0; i+1 < split_path->len; i++) + OstreeMutableTree *subdir = self; /* nofree */ + for (guint i = 0; i+1 < split_path->len; i++) { OstreeMutableTree *next; const char *name = split_path->pdata[i]; if (g_hash_table_lookup (subdir->files, name)) - { - g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED, - "Can't replace file with directory: %s", name); - goto out; - } + return glnx_throw (error, "Can't replace file with directory: %s", name); next = g_hash_table_lookup (subdir->subdirs, name); - if (!next) + if (!next) { invalidate_contents_checksum (subdir); next = ostree_mutable_tree_new (); ostree_mutable_tree_set_metadata_checksum (next, metadata_checksum); insert_child_mtree (subdir, g_strdup (name), next); } - + subdir = next; } - ret_parent = g_object_ref (subdir); - - ret = TRUE; - ot_transfer_out_value (out_parent, &ret_parent); - out: - return ret; + if (out_parent) + *out_parent = g_object_ref (subdir); + return TRUE; } const char empty_tree_csum[] = "6e340b9cffb37a989ca544e6bb780a2c78901d3fb33738768511a30617afa01d"; |