common: Add flatpak_variant_builder_init_from_variant

tingping/wmclass
Alexander Larsson 2016-09-27 12:39:27 +02:00
parent 8fa7f7fe09
commit af76206ba5
2 changed files with 20 additions and 0 deletions

View File

@ -1922,6 +1922,23 @@ flatpak_variant_save (GFile *dest,
return TRUE;
}
void
flatpak_variant_builder_init_from_variant (GVariantBuilder *builder,
const char *type,
GVariant *variant)
{
gint i, n;
g_variant_builder_init (builder, G_VARIANT_TYPE (type));
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);
}
}
gboolean
flatpak_variant_bsearch_str (GVariant *array,

View File

@ -65,6 +65,9 @@ gboolean flatpak_variant_save (GFile *dest,
GVariant *variant,
GCancellable *cancellable,
GError **error);
void flatpak_variant_builder_init_from_variant (GVariantBuilder *builder,
const char *type,
GVariant *variant);
gboolean flatpak_variant_bsearch_str (GVariant *array,
const char *str,
int *out_pos);