mirror of
https://github.com/ostreedev/ostree.git
synced 2025-03-14 04:59:00 +03:00
libotutil: Allow no variant in ot_util_variant_builder_from_variant()
For programming convenience in cases where we may or may not have a GVariant to initialize the builder with.
This commit is contained in:
parent
b05d670031
commit
fdda36eb77
@ -369,14 +369,8 @@ add_size_index_to_metadata (OstreeRepo *self,
|
||||
gboolean ret = FALSE;
|
||||
gs_unref_variant_builder GVariantBuilder *builder = NULL;
|
||||
|
||||
if (original_metadata)
|
||||
{
|
||||
builder = ot_util_variant_builder_from_variant (original_metadata, G_VARIANT_TYPE ("a{sv}"));
|
||||
}
|
||||
else
|
||||
{
|
||||
builder = g_variant_builder_new (G_VARIANT_TYPE ("a{sv}"));
|
||||
}
|
||||
/* original_metadata may be NULL */
|
||||
builder = ot_util_variant_builder_from_variant (original_metadata, G_VARIANT_TYPE ("a{sv}"));
|
||||
|
||||
if (self->object_sizes &&
|
||||
g_hash_table_size (self->object_sizes) > 0)
|
||||
@ -2189,11 +2183,9 @@ get_modified_xattrs (OstreeRepo *self,
|
||||
{
|
||||
GVariantBuilder *builder;
|
||||
|
||||
if (ret_xattrs)
|
||||
builder = ot_util_variant_builder_from_variant (ret_xattrs,
|
||||
G_VARIANT_TYPE ("a(ayay)"));
|
||||
else
|
||||
builder = g_variant_builder_new (G_VARIANT_TYPE ("a(ayay)"));
|
||||
/* ret_xattrs may be NULL */
|
||||
builder = ot_util_variant_builder_from_variant (ret_xattrs,
|
||||
G_VARIANT_TYPE ("a(ayay)"));
|
||||
|
||||
g_variant_builder_add_value (builder,
|
||||
g_variant_new ("(@ay@ay)",
|
||||
|
@ -260,16 +260,20 @@ ot_util_variant_builder_from_variant (GVariant *variant,
|
||||
const GVariantType *type)
|
||||
{
|
||||
GVariantBuilder *builder = NULL;
|
||||
gint i, n;
|
||||
|
||||
builder = g_variant_builder_new (type);
|
||||
|
||||
n = g_variant_n_children (variant);
|
||||
for (i = 0; i < n; i++)
|
||||
if (variant != NULL)
|
||||
{
|
||||
GVariant *child = g_variant_get_child_value (variant, i);
|
||||
g_variant_builder_add_value (builder, child);
|
||||
g_variant_unref (child);
|
||||
gint i, n;
|
||||
|
||||
n = g_variant_n_children (variant);
|
||||
for (i = 0; i < n; i++)
|
||||
{
|
||||
GVariant *child = g_variant_get_child_value (variant, i);
|
||||
g_variant_builder_add_value (builder, child);
|
||||
g_variant_unref (child);
|
||||
}
|
||||
}
|
||||
|
||||
return builder;
|
||||
|
Loading…
x
Reference in New Issue
Block a user