summaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@redhat.com>2016-05-06 16:03:27 +0200
committerAlexander Larsson <alexl@redhat.com>2016-05-06 16:03:27 +0200
commit1ffdf27d927c7944e3bce9b1cd3c101d823fd826 (patch)
treeb91268da5ea5f1d224977ce4e5bbb75386d9a424 /common
parentafa12a446fcc473eb740146805856e76ad82b4af (diff)
downloadxdg-app-1ffdf27d927c7944e3bce9b1cd3c101d823fd826.tar.gz
uncruftify: Initial run, all non-problematic changes
Diffstat (limited to 'common')
-rw-r--r--common/xdg-app-chain-input-stream.c111
-rw-r--r--common/xdg-app-chain-input-stream.h14
-rw-r--r--common/xdg-app-common-types.h4
-rw-r--r--common/xdg-app-db.c209
-rw-r--r--common/xdg-app-db.h123
-rw-r--r--common/xdg-app-dir.c975
-rw-r--r--common/xdg-app-dir.h540
-rw-r--r--common/xdg-app-portal-error.h4
-rw-r--r--common/xdg-app-run.c666
-rw-r--r--common/xdg-app-run.h116
-rw-r--r--common/xdg-app-utils.c469
-rw-r--r--common/xdg-app-utils.h314
12 files changed, 1859 insertions, 1686 deletions
diff --git a/common/xdg-app-chain-input-stream.c b/common/xdg-app-chain-input-stream.c
index 68b201c..ae1360f 100644
--- a/common/xdg-app-chain-input-stream.c
+++ b/common/xdg-app-chain-input-stream.c
@@ -1,5 +1,5 @@
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*-
- *
+ *
* Copyright (C) 2011 Colin Walters <walters@verbum.org>
*
* This library is free software; you can redistribute it and/or
@@ -29,35 +29,36 @@ enum {
G_DEFINE_TYPE (XdgAppChainInputStream, xdg_app_chain_input_stream, G_TYPE_INPUT_STREAM)
-struct _XdgAppChainInputStreamPrivate {
+struct _XdgAppChainInputStreamPrivate
+{
GPtrArray *streams;
- guint index;
+ guint index;
};
-static void xdg_app_chain_input_stream_set_property (GObject *object,
- guint prop_id,
- const GValue *value,
- GParamSpec *pspec);
-static void xdg_app_chain_input_stream_get_property (GObject *object,
- guint prop_id,
- GValue *value,
- GParamSpec *pspec);
-static void xdg_app_chain_input_stream_finalize (GObject *object);
-static gssize xdg_app_chain_input_stream_read (GInputStream *stream,
- void *buffer,
- gsize count,
- GCancellable *cancellable,
- GError **error);
-static gboolean xdg_app_chain_input_stream_close (GInputStream *stream,
- GCancellable *cancellable,
- GError **error);
+static void xdg_app_chain_input_stream_set_property (GObject *object,
+ guint prop_id,
+ const GValue *value,
+ GParamSpec *pspec);
+static void xdg_app_chain_input_stream_get_property (GObject *object,
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec);
+static void xdg_app_chain_input_stream_finalize (GObject *object);
+static gssize xdg_app_chain_input_stream_read (GInputStream *stream,
+ void *buffer,
+ gsize count,
+ GCancellable *cancellable,
+ GError **error);
+static gboolean xdg_app_chain_input_stream_close (GInputStream *stream,
+ GCancellable *cancellable,
+ GError **error);
static void
xdg_app_chain_input_stream_class_init (XdgAppChainInputStreamClass *klass)
{
GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
GInputStreamClass *stream_class = G_INPUT_STREAM_CLASS (klass);
-
+
g_type_class_add_private (klass, sizeof (XdgAppChainInputStreamPrivate));
gobject_class->get_property = xdg_app_chain_input_stream_get_property;
@@ -73,23 +74,23 @@ xdg_app_chain_input_stream_class_init (XdgAppChainInputStreamClass *klass)
* Chain of input streams read in order.
*/
g_object_class_install_property (gobject_class,
- PROP_STREAMS,
- g_param_spec_pointer ("streams",
- "", "",
- G_PARAM_READWRITE |
- G_PARAM_CONSTRUCT_ONLY |
- G_PARAM_STATIC_STRINGS));
+ PROP_STREAMS,
+ g_param_spec_pointer ("streams",
+ "", "",
+ G_PARAM_READWRITE |
+ G_PARAM_CONSTRUCT_ONLY |
+ G_PARAM_STATIC_STRINGS));
}
static void
-xdg_app_chain_input_stream_set_property (GObject *object,
- guint prop_id,
- const GValue *value,
- GParamSpec *pspec)
+xdg_app_chain_input_stream_set_property (GObject *object,
+ guint prop_id,
+ const GValue *value,
+ GParamSpec *pspec)
{
XdgAppChainInputStream *self;
-
+
self = XDG_APP_CHAIN_INPUT_STREAM (object);
switch (prop_id)
@@ -97,6 +98,7 @@ xdg_app_chain_input_stream_set_property (GObject *object,
case PROP_STREAMS:
self->priv->streams = g_ptr_array_ref (g_value_get_pointer (value));
break;
+
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
@@ -105,9 +107,9 @@ xdg_app_chain_input_stream_set_property (GObject *object,
static void
xdg_app_chain_input_stream_get_property (GObject *object,
- guint prop_id,
- GValue *value,
- GParamSpec *pspec)
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec)
{
XdgAppChainInputStream *self;
@@ -118,6 +120,7 @@ xdg_app_chain_input_stream_get_property (GObject *object,
case PROP_STREAMS:
g_value_set_pointer (value, self->priv->streams);
break;
+
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
}
@@ -128,7 +131,7 @@ xdg_app_chain_input_stream_finalize (GObject *object)
{
XdgAppChainInputStream *stream;
- stream = (XdgAppChainInputStream*)(object);
+ stream = (XdgAppChainInputStream *) (object);
g_ptr_array_unref (stream->priv->streams);
@@ -139,37 +142,37 @@ static void
xdg_app_chain_input_stream_init (XdgAppChainInputStream *self)
{
self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self,
- XDG_APP_TYPE_CHAIN_INPUT_STREAM,
- XdgAppChainInputStreamPrivate);
+ XDG_APP_TYPE_CHAIN_INPUT_STREAM,
+ XdgAppChainInputStreamPrivate);
}
XdgAppChainInputStream *
-xdg_app_chain_input_stream_new (GPtrArray *streams)
+xdg_app_chain_input_stream_new (GPtrArray *streams)
{
XdgAppChainInputStream *stream;
stream = g_object_new (XDG_APP_TYPE_CHAIN_INPUT_STREAM,
- "streams", streams,
- NULL);
+ "streams", streams,
+ NULL);
- return (XdgAppChainInputStream*) (stream);
+ return (XdgAppChainInputStream *) (stream);
}
static gssize
-xdg_app_chain_input_stream_read (GInputStream *stream,
- void *buffer,
- gsize count,
- GCancellable *cancellable,
- GError **error)
+xdg_app_chain_input_stream_read (GInputStream *stream,
+ void *buffer,
+ gsize count,
+ GCancellable *cancellable,
+ GError **error)
{
- XdgAppChainInputStream *self = (XdgAppChainInputStream*) stream;
+ XdgAppChainInputStream *self = (XdgAppChainInputStream *) stream;
GInputStream *child;
gssize res = -1;
if (g_cancellable_set_error_if_cancelled (cancellable, error))
return -1;
-
+
if (self->priv->index >= self->priv->streams->len)
return 0;
@@ -190,12 +193,12 @@ xdg_app_chain_input_stream_read (GInputStream *stream,
}
static gboolean
-xdg_app_chain_input_stream_close (GInputStream *stream,
- GCancellable *cancellable,
- GError **error)
+xdg_app_chain_input_stream_close (GInputStream *stream,
+ GCancellable *cancellable,
+ GError **error)
{
gboolean ret = FALSE;
- XdgAppChainInputStream *self = (gpointer)stream;
+ XdgAppChainInputStream *self = (gpointer) stream;
guint i;
for (i = 0; i < self->priv->streams->len; i++)
@@ -206,6 +209,6 @@ xdg_app_chain_input_stream_close (GInputStream *stream,
}
ret = TRUE;
- out:
+out:
return ret;
}
diff --git a/common/xdg-app-chain-input-stream.h b/common/xdg-app-chain-input-stream.h
index d6bab19..0d3b793 100644
--- a/common/xdg-app-chain-input-stream.h
+++ b/common/xdg-app-chain-input-stream.h
@@ -27,16 +27,16 @@
G_BEGIN_DECLS
-#define XDG_APP_TYPE_CHAIN_INPUT_STREAM (xdg_app_chain_input_stream_get_type ())
+#define XDG_APP_TYPE_CHAIN_INPUT_STREAM (xdg_app_chain_input_stream_get_type ())
#define XDG_APP_CHAIN_INPUT_STREAM(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), XDG_APP_TYPE_CHAIN_INPUT_STREAM, XdgAppChainInputStream))
-#define XDG_APP_CHAIN_INPUT_STREAM_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), XDG_APP_TYPE_CHAIN_INPUT_STREAM, XdgAppChainInputStreamClass))
+#define XDG_APP_CHAIN_INPUT_STREAM_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), XDG_APP_TYPE_CHAIN_INPUT_STREAM, XdgAppChainInputStreamClass))
#define XDG_APP_IS_CHAIN_INPUT_STREAM(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), XDG_APP_TYPE_CHAIN_INPUT_STREAM))
#define XDG_APP_IS_CHAIN_INPUT_STREAM_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), XDG_APP_TYPE_CHAIN_INPUT_STREAM))
#define XDG_APP_CHAIN_INPUT_STREAM_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), XDG_APP_TYPE_CHAIN_INPUT_STREAM, XdgAppChainInputStreamClass))
-typedef struct _XdgAppChainInputStream XdgAppChainInputStream;
-typedef struct _XdgAppChainInputStreamClass XdgAppChainInputStreamClass;
-typedef struct _XdgAppChainInputStreamPrivate XdgAppChainInputStreamPrivate;
+typedef struct _XdgAppChainInputStream XdgAppChainInputStream;
+typedef struct _XdgAppChainInputStreamClass XdgAppChainInputStreamClass;
+typedef struct _XdgAppChainInputStreamPrivate XdgAppChainInputStreamPrivate;
struct _XdgAppChainInputStream
{
@@ -59,9 +59,9 @@ struct _XdgAppChainInputStreamClass
void (*_g_reserved5) (void);
};
-GType xdg_app_chain_input_stream_get_type (void) G_GNUC_CONST;
+GType xdg_app_chain_input_stream_get_type (void) G_GNUC_CONST;
-XdgAppChainInputStream * xdg_app_chain_input_stream_new (GPtrArray *streams);
+XdgAppChainInputStream * xdg_app_chain_input_stream_new (GPtrArray *streams);
G_END_DECLS
diff --git a/common/xdg-app-common-types.h b/common/xdg-app-common-types.h
index ab49c2c..9e2e8d3 100644
--- a/common/xdg-app-common-types.h
+++ b/common/xdg-app-common-types.h
@@ -21,8 +21,8 @@
#ifndef __XDG_APP_COMMON_TYPES_H__
#define __XDG_APP_COMMON_TYPES_H__
-typedef struct XdgAppDir XdgAppDir;
-typedef struct XdgAppDeploy XdgAppDeploy;
+typedef struct XdgAppDir XdgAppDir;
+typedef struct XdgAppDeploy XdgAppDeploy;
typedef struct XdgAppContext XdgAppContext;
#endif /* __XDG_APP_COMMON_TYPES_H__ */
diff --git a/common/xdg-app-db.c b/common/xdg-app-db.c
index 6189b9c..8f8468f 100644
--- a/common/xdg-app-db.c
+++ b/common/xdg-app-db.c
@@ -31,31 +31,33 @@
#include "gvdb/gvdb-reader.h"
#include "gvdb/gvdb-builder.h"
-struct XdgAppDb {
- GObject parent;
+struct XdgAppDb
+{
+ GObject parent;
- char *path;
- gboolean fail_if_not_found;
+ char *path;
+ gboolean fail_if_not_found;
GvdbTable *gvdb;
- GBytes *gvdb_contents;
+ GBytes *gvdb_contents;
- gboolean dirty;
+ gboolean dirty;
/* Map id => GVariant (data, sorted-dict[appid->perms]) */
- GvdbTable *main_table;
+ GvdbTable *main_table;
GHashTable *main_updates;
/* (reverse) Map app id => [ id ]*/
- GvdbTable *app_table;
+ GvdbTable *app_table;
GHashTable *app_additions;
GHashTable *app_removals;
};
-typedef struct {
+typedef struct
+{
GObjectClass parent_class;
} XdgAppDbClass;
-static void initable_iface_init (GInitableIface *initable_iface);
+static void initable_iface_init (GInitableIface *initable_iface);
G_DEFINE_TYPE_WITH_CODE (XdgAppDb, xdg_app_db, G_TYPE_OBJECT,
G_IMPLEMENT_INTERFACE (G_TYPE_INITABLE, initable_iface_init));
@@ -70,17 +72,17 @@ enum {
static int
cmpstringp (const void *p1, const void *p2)
{
- return strcmp (* (char * const *) p1, * (char * const *) p2);
+ return strcmp (*(char * const *) p1, *(char * const *) p2);
}
static void
sort_strv (const char **strv)
{
- qsort (strv, g_strv_length ((char **)strv), sizeof (const char *), cmpstringp);
+ qsort (strv, g_strv_length ((char **) strv), sizeof (const char *), cmpstringp);
}
static int
-str_ptr_array_find (GPtrArray *array,
+str_ptr_array_find (GPtrArray *array,
const char *str)
{
int i;
@@ -93,7 +95,7 @@ str_ptr_array_find (GPtrArray *array,
}
static gboolean
-str_ptr_array_contains (GPtrArray *array,
+str_ptr_array_contains (GPtrArray *array,
const char *str)
{
return str_ptr_array_find (array, str) >= 0;
@@ -108,7 +110,7 @@ xdg_app_db_get_path (XdgAppDb *self)
}
void
-xdg_app_db_set_path (XdgAppDb *self,
+xdg_app_db_set_path (XdgAppDb *self,
const char *path)
{
g_return_if_fail (XDG_APP_IS_DB (self));
@@ -119,8 +121,8 @@ xdg_app_db_set_path (XdgAppDb *self,
XdgAppDb *
xdg_app_db_new (const char *path,
- gboolean fail_if_not_found,
- GError **error)
+ gboolean fail_if_not_found,
+ GError **error)
{
return g_initable_new (XDG_APP_TYPE_DB,
NULL,
@@ -133,7 +135,7 @@ xdg_app_db_new (const char *path,
static void
xdg_app_db_finalize (GObject *object)
{
- XdgAppDb *self = (XdgAppDb *)object;
+ XdgAppDb *self = (XdgAppDb *) object;
g_clear_pointer (&self->path, g_free);
g_clear_pointer (&self->gvdb_contents, g_bytes_unref);
@@ -149,11 +151,11 @@ xdg_app_db_finalize (GObject *object)
static void
xdg_app_db_get_property (GObject *object,
- guint prop_id,
- GValue *value,
- GParamSpec *pspec)
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec)
{
- XdgAppDb *self = XDG_APP_DB(object);
+ XdgAppDb *self = XDG_APP_DB (object);
switch (prop_id)
{
@@ -172,9 +174,9 @@ xdg_app_db_get_property (GObject *object,
static void
xdg_app_db_set_property (GObject *object,
- guint prop_id,
- const GValue *value,
- GParamSpec *pspec)
+ guint prop_id,
+ const GValue *value,
+ GParamSpec *pspec)
{
XdgAppDb *self = XDG_APP_DB (object);
@@ -226,13 +228,13 @@ xdg_app_db_init (XdgAppDb *self)
self->main_updates =
g_hash_table_new_full (g_str_hash, g_str_equal,
- g_free, (GDestroyNotify)g_variant_unref);
+ g_free, (GDestroyNotify) g_variant_unref);
self->app_additions =
g_hash_table_new_full (g_str_hash, g_str_equal,
- g_free, (GDestroyNotify)g_ptr_array_unref);
+ g_free, (GDestroyNotify) g_ptr_array_unref);
self->app_removals =
g_hash_table_new_full (g_str_hash, g_str_equal,
- g_free, (GDestroyNotify)g_ptr_array_unref);
+ g_free, (GDestroyNotify) g_ptr_array_unref);
}
static gboolean
@@ -252,11 +254,11 @@ is_on_nfs (const char *path)
}
static gboolean
-initable_init (GInitable *initable,
- GCancellable *cancellable,
- GError **error)
+initable_init (GInitable *initable,
+ GCancellable *cancellable,
+ GError **error)
{
- XdgAppDb *self = (XdgAppDb *)initable;
+ XdgAppDb *self = (XdgAppDb *) initable;
GError *my_error = NULL;
if (self->path == NULL)
@@ -365,7 +367,7 @@ xdg_app_db_list_ids (XdgAppDb *self)
}
g_ptr_array_add (res, NULL);
- return (char **)g_ptr_array_free (res, FALSE);
+ return (char **) g_ptr_array_free (res, FALSE);
}
static gboolean
@@ -447,12 +449,12 @@ xdg_app_db_list_apps (XdgAppDb *self)
}
g_ptr_array_add (res, NULL);
- return (char **)g_ptr_array_free (res, FALSE);
+ return (char **) g_ptr_array_free (res, FALSE);
}
/* Transfer: full */
char **
-xdg_app_db_list_ids_by_app (XdgAppDb *self,
+xdg_app_db_list_ids_by_app (XdgAppDb *self,
const char *app)
{
GPtrArray *res;
@@ -491,12 +493,12 @@ xdg_app_db_list_ids_by_app (XdgAppDb *self,
}
g_ptr_array_add (res, NULL);
- return (char **)g_ptr_array_free (res, FALSE);
+ return (char **) g_ptr_array_free (res, FALSE);
}
/* Transfer: full */
XdgAppDbEntry *
-xdg_app_db_lookup (XdgAppDb *self,
+xdg_app_db_lookup (XdgAppDb *self,
const char *id)
{
GVariant *res = NULL;
@@ -508,12 +510,14 @@ xdg_app_db_lookup (XdgAppDb *self,
if (g_hash_table_lookup_extended (self->main_updates, id, NULL, &value))
{
if (value != NULL)
- res = g_variant_ref ((GVariant *)value);
+ res = g_variant_ref ((GVariant *) value);
}
else if (self->main_table)
- res = gvdb_table_get_value (self->main_table, id);
+ {
+ res = gvdb_table_get_value (self->main_table, id);
+ }
- return (XdgAppDbEntry *)res;
+ return (XdgAppDbEntry *) res;
}
/* Transfer: full */
@@ -551,11 +555,11 @@ xdg_app_db_list_ids_by_value (XdgAppDb *self,
}
g_ptr_array_add (res, NULL);
- return (char **)g_ptr_array_free (res, FALSE);
+ return (char **) g_ptr_array_free (res, FALSE);
}
static void
-add_app_id (XdgAppDb *self,
+add_app_id (XdgAppDb *self,
const char *app,
const char *id)
{
@@ -588,7 +592,7 @@ add_app_id (XdgAppDb *self,
}
static void
-remove_app_id (XdgAppDb *self,
+remove_app_id (XdgAppDb *self,
const char *app,
const char *id)
{
@@ -630,8 +634,8 @@ xdg_app_db_is_dirty (XdgAppDb *self)
/* add, replace, or NULL entry to remove */
void
-xdg_app_db_set_entry (XdgAppDb *self,
- const char *id,
+xdg_app_db_set_entry (XdgAppDb *self,
+ const char *id,
XdgAppDbEntry *entry)
{
g_autoptr(XdgAppDbEntry) old_entry = NULL;
@@ -718,6 +722,7 @@ xdg_app_db_update (XdgAppDb *self)
GBytes *new_contents;
GvdbTable *new_gvdb;
int i;
+
g_auto(GStrv) ids = NULL;
g_auto(GStrv) apps = NULL;
@@ -738,7 +743,7 @@ xdg_app_db_update (XdgAppDb *self)
GvdbItem *item;
item = gvdb_hash_table_insert (main_h, ids[i]);
- gvdb_item_set_value (item, (GVariant *)entry);
+ gvdb_item_set_value (item, (GVariant *) entry);
}
}
@@ -751,7 +756,7 @@ xdg_app_db_update (XdgAppDb *self)
int j;
/* May as well ensure that on-disk arrays are sorted, even if we don't use it yet */
- sort_strv ((const char **)app_ids);
+ sort_strv ((const char **) app_ids);
/* We should never list an app that has empty id lists */
g_assert (app_ids[0] != NULL);
@@ -811,18 +816,18 @@ xdg_app_db_save_content (XdgAppDb *self,
}
static void
-save_content_callback (GObject *source_object,
+save_content_callback (GObject *source_object,
GAsyncResult *res,
- gpointer user_data)
+ gpointer user_data)
{
g_autoptr(GTask) task = user_data;
GFile *file = G_FILE (source_object);
gboolean ok;
g_autoptr(GError) error = NULL;
- ok = g_file_replace_contents_finish (file,
- res,
- NULL, &error);
+ ok = g_file_replace_contents_finish (file,
+ res,
+ NULL, &error);
if (ok)
g_task_return_boolean (task, TRUE);
else
@@ -830,12 +835,13 @@ save_content_callback (GObject *source_object,
}
void
-xdg_app_db_save_content_async (XdgAppDb *self,
- GCancellable *cancellable,
- GAsyncReadyCallback callback,
- gpointer user_data)
+xdg_app_db_save_content_async (XdgAppDb *self,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
{
GBytes *content = NULL;
+
g_autoptr(GTask) task = NULL;
g_autoptr(GFile) file = NULL;
@@ -856,7 +862,7 @@ xdg_app_db_save_content_async (XdgAppDb *self,
}
content = g_bytes_ref (self->gvdb_contents);
- g_task_set_task_data (task, content, (GDestroyNotify)g_bytes_unref);
+ g_task_set_task_data (task, content, (GDestroyNotify) g_bytes_unref);
file = g_file_new_for_path (self->path);
g_file_replace_contents_bytes_async (file, content,
@@ -867,9 +873,9 @@ xdg_app_db_save_content_async (XdgAppDb *self,
}
gboolean
-xdg_app_db_save_content_finish (XdgAppDb *self,
- GAsyncResult *res,
- GError **error)
+xdg_app_db_save_content_finish (XdgAppDb *self,
+ GAsyncResult *res,
+ GError **error)
{
return g_task_propagate_boolean (G_TASK (res), error);
}
@@ -877,7 +883,7 @@ xdg_app_db_save_content_finish (XdgAppDb *self,
GString *
xdg_app_db_print_string (XdgAppDb *self,
- GString *string)
+ GString *string)
{
g_auto(GStrv) ids = NULL;
g_auto(GStrv) apps = NULL;
@@ -891,7 +897,7 @@ xdg_app_db_print_string (XdgAppDb *self,
g_string_append_printf (string, "main {\n");
ids = xdg_app_db_list_ids (self);
- sort_strv ((const char **)ids);
+ sort_strv ((const char **) ids);
for (i = 0; ids[i] != 0; i++)
{
g_autoptr(XdgAppDbEntry) entry = xdg_app_db_lookup (self, ids[i]);
@@ -904,14 +910,14 @@ xdg_app_db_print_string (XdgAppDb *self,
g_string_append_printf (string, "}\napps {\n");
apps = xdg_app_db_list_apps (self);
- sort_strv ((const char **)apps);
+ sort_strv ((const char **) apps);
for (i = 0; apps[i] != 0; i++)
{
int j;
g_auto(GStrv) app_ids = NULL;
app_ids = xdg_app_db_list_ids_by_app (self, apps[i]);
- sort_strv ((const char **)app_ids);
+ sort_strv ((const char **) app_ids);
g_string_append_printf (string, " %s: ", apps[i]);
for (j = 0; app_ids[j] != NULL; j++)
@@ -931,33 +937,34 @@ xdg_app_db_print (XdgAppDb *self)
}
XdgAppDbEntry *
-xdg_app_db_entry_ref (XdgAppDbEntry *entry)
+xdg_app_db_entry_ref (XdgAppDbEntry *entry)
{
if (entry != NULL)
- g_variant_ref ((GVariant *)entry);
+ g_variant_ref ((GVariant *) entry);
return entry;
}
void
-xdg_app_db_entry_unref (XdgAppDbEntry *entry)
+xdg_app_db_entry_unref (XdgAppDbEntry *entry)
{
- g_variant_unref ((GVariant *)entry);
+ g_variant_unref ((GVariant *) entry);
}
/* Transfer: full */
GVariant *
-xdg_app_db_entry_get_data (XdgAppDbEntry *entry)
+xdg_app_db_entry_get_data (XdgAppDbEntry *entry)
{
- g_autoptr(GVariant) variant = g_variant_get_child_value ((GVariant *)entry, 0);
+ g_autoptr(GVariant) variant = g_variant_get_child_value ((GVariant *) entry, 0);
return g_variant_get_child_value (variant, 0);
}
/* Transfer: container */
const char **
-xdg_app_db_entry_list_apps (XdgAppDbEntry *entry)
+xdg_app_db_entry_list_apps (XdgAppDbEntry *entry)
{
- GVariant *v = (GVariant *)entry;
+ GVariant *v = (GVariant *) entry;
+
g_autoptr(GVariant) app_array = NULL;
GVariantIter iter;
GVariant *child;
@@ -976,21 +983,22 @@ xdg_app_db_entry_list_apps (XdgAppDbEntry *entry)
if (g_variant_n_children (permissions) > 0)
{
g_variant_get_child (child, 0, "&s", &child_app_id);
- g_ptr_array_add (res, (char *)child_app_id);
+ g_ptr_array_add (res, (char *) child_app_id);
}
g_variant_unref (child);
}
g_ptr_array_add (res, NULL);
- return (const char **)g_ptr_array_free (res, FALSE);
+ return (const char **) g_ptr_array_free (res, FALSE);
}
static GVariant *
xdg_app_db_entry_get_permissions_variant (XdgAppDbEntry *entry,
- const char *app_id)
+ const char *app_id)
{
- GVariant *v = (GVariant *)entry;
+ GVariant *v = (GVariant *) entry;
+
g_autoptr(GVariant) app_array = NULL;
GVariant *child;
GVariant *res = NULL;
@@ -1018,9 +1026,13 @@ xdg_app_db_entry_get_permissions_variant (XdgAppDbEntry *entry,
break;
}
else if (cmp < 0)
- end = m;
+ {
+ end = m;
+ }
else /* cmp > 0 */
- start = m + 1;
+ {
+ start = m + 1;
+ }
}
return res;
@@ -1030,7 +1042,7 @@ xdg_app_db_entry_get_permissions_variant (XdgAppDbEntry *entry,
/* Transfer: container */
const char **
xdg_app_db_entry_list_permissions (XdgAppDbEntry *entry,
- const char *app)
+ const char *app)
{
g_autoptr(GVariant) permissions = NULL;
@@ -1042,9 +1054,9 @@ xdg_app_db_entry_list_permissions (XdgAppDbEntry *entry,
}
gboolean
-xdg_app_db_entry_has_permission (XdgAppDbEntry *entry,
- const char *app,
- const char *permission)
+xdg_app_db_entry_has_permission (XdgAppDbEntry *entry,
+ const char *app,
+ const char *permission)
{
g_autofree const char **app_permissions = NULL;
@@ -1054,9 +1066,9 @@ xdg_app_db_entry_has_permission (XdgAppDbEntry *entry,
}
gboolean
-xdg_app_db_entry_has_permissions (XdgAppDbEntry *entry,
- const char *app,
- const char **permissions)
+xdg_app_db_entry_has_permissions (XdgAppDbEntry *entry,
+ const char *app,
+ const char **permissions)
{
g_autofree const char **app_permissions = NULL;
int i;
@@ -1089,6 +1101,7 @@ static GVariant *
make_permissions (const char *app, const char **permissions)
{
static const char **empty = { NULL };
+
if (permissions == NULL)
permissions = empty;
@@ -1108,6 +1121,7 @@ add_permissions (GVariant *app_permissions,
int cmp;
const char *new_app_id;
const char *child_app_id;
+
g_autoptr(GVariant) new_perms_array = NULL;
g_variant_get (permissions, "{&s@as}", &new_app_id, &new_perms_array);
@@ -1164,14 +1178,14 @@ xdg_app_db_entry_new (GVariant *data)
res = make_entry (data,
make_empty_app_permissions ());
- return (XdgAppDbEntry *)g_variant_ref_sink (res);
+ return (XdgAppDbEntry *) g_variant_ref_sink (res);
}
XdgAppDbEntry *
-xdg_app_db_entry_modify_data (XdgAppDbEntry *entry,
- GVariant *data)
+xdg_app_db_entry_modify_data (XdgAppDbEntry *entry,
+ GVariant *data)
{
- GVariant *v = (GVariant *)entry;
+ GVariant *v = (GVariant *) entry;
GVariant *res;
if (data == NULL)
@@ -1179,17 +1193,18 @@ xdg_app_db_entry_modify_data (XdgAppDbEntry *entry,
res = make_entry (data,
g_variant_get_child_value (v, 1));
- return (XdgAppDbEntry *)g_variant_ref_sink (res);
+ return (XdgAppDbEntry *) g_variant_ref_sink (res);
}
/* NULL (or empty) permissions to remove permissions */
XdgAppDbEntry *
xdg_app_db_entry_set_app_permissions (XdgAppDbEntry *entry,
- const char *app,
- const char **permissions)
+ const char *app,
+ const char **permissions)
{
- GVariant *v = (GVariant *)entry;
+ GVariant *v = (GVariant *) entry;
GVariant *res;
+
g_autoptr(GVariant) old_data_v = g_variant_get_child_value (v, 0);
g_autoptr(GVariant) old_data = g_variant_get_child_value (old_data_v, 0);
g_autoptr(GVariant) old_permissions = g_variant_get_child_value (v, 1);
@@ -1198,12 +1213,12 @@ xdg_app_db_entry_set_app_permissions (XdgAppDbEntry *entry,
add_permissions (old_permissions,
make_permissions (app,
permissions)));
- return (XdgAppDbEntry *)g_variant_ref_sink (res);
+ return (XdgAppDbEntry *) g_variant_ref_sink (res);
}
GString *
-xdg_app_db_entry_print_string (XdgAppDbEntry *entry,
- GString *string)
+xdg_app_db_entry_print_string (XdgAppDbEntry *entry,
+ GString *string)
{
- return g_variant_print_string ((GVariant *)entry, string, FALSE);
+ return g_variant_print_string ((GVariant *) entry, string, FALSE);
}
diff --git a/common/xdg-app-db.h b/common/xdg-app-db.h
index 3225c9e..ba49947 100644
--- a/common/xdg-app-db.h
+++ b/common/xdg-app-db.h
@@ -29,76 +29,75 @@
G_BEGIN_DECLS
-typedef struct XdgAppDb XdgAppDb;
+typedef struct XdgAppDb XdgAppDb;
typedef struct _XdgAppDbEntry XdgAppDbEntry;
-#define XDG_APP_TYPE_DB (xdg_app_db_get_type())
+#define XDG_APP_TYPE_DB (xdg_app_db_get_type ())
#define XDG_APP_DB(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), XDG_APP_TYPE_DB, XdgAppDb))
#define XDG_APP_IS_DB(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), XDG_APP_TYPE_DB))
GType xdg_app_db_get_type (void);
-XdgAppDb * xdg_app_db_new (const char *path,
- gboolean fail_if_not_found,
- GError **error);
-char ** xdg_app_db_list_ids (XdgAppDb *self);
-char ** xdg_app_db_list_apps (XdgAppDb *self);
-char ** xdg_app_db_list_ids_by_app (XdgAppDb *self,
- const char *app);
-char ** xdg_app_db_list_ids_by_value (XdgAppDb *self,
- GVariant *data);
-XdgAppDbEntry *xdg_app_db_lookup (XdgAppDb *self,
- const char *id);
-GString * xdg_app_db_print_string (XdgAppDb *self,
- GString *string);
-char * xdg_app_db_print (XdgAppDb *self);
-
-gboolean xdg_app_db_is_dirty (XdgAppDb *self);
-void xdg_app_db_set_entry (XdgAppDb *self,
- const char *id,
- XdgAppDbEntry *entry);
-void xdg_app_db_update (XdgAppDb *self);
-GBytes * xdg_app_db_get_content (XdgAppDb *self);
-const char * xdg_app_db_get_path (XdgAppDb *self);
-gboolean xdg_app_db_save_content (XdgAppDb *self,
- GError **error);
-void xdg_app_db_save_content_async (XdgAppDb *self,
- GCancellable *cancellable,
- GAsyncReadyCallback callback,
- gpointer user_data);
-gboolean xdg_app_db_save_content_finish (XdgAppDb *self,
- GAsyncResult *res,
- GError **error);
-void xdg_app_db_set_path (XdgAppDb *self,
- const char *path);
-
-
-XdgAppDbEntry *xdg_app_db_entry_ref (XdgAppDbEntry *entry);
-void xdg_app_db_entry_unref (XdgAppDbEntry *entry);
-GVariant * xdg_app_db_entry_get_data (XdgAppDbEntry *entry);
-const char ** xdg_app_db_entry_list_apps (XdgAppDbEntry *entry);
-const char ** xdg_app_db_entry_list_permissions (XdgAppDbEntry *entry,
- const char *app);
-gboolean xdg_app_db_entry_has_permission (XdgAppDbEntry *entry,
- const char *app,
- const char *permission);
-gboolean xdg_app_db_entry_has_permissions (XdgAppDbEntry *entry,
- const char *app,
- const char **permissions);
-GString * xdg_app_db_entry_print_string (XdgAppDbEntry *entry,
- GString *string);
-
-XdgAppDbEntry *xdg_app_db_entry_new (GVariant *data);
-XdgAppDbEntry *xdg_app_db_entry_modify_data (XdgAppDbEntry *entry,
- GVariant *data);
-XdgAppDbEntry *xdg_app_db_entry_set_app_permissions (XdgAppDbEntry *entry,
- const char *app,
- const char **permissions);
-
-G_DEFINE_AUTOPTR_CLEANUP_FUNC(XdgAppDb, g_object_unref)
-G_DEFINE_AUTOPTR_CLEANUP_FUNC(XdgAppDbEntry, xdg_app_db_entry_unref)
+XdgAppDb * xdg_app_db_new (const char *path,
+ gboolean fail_if_not_found,
+ GError **error);
+char ** xdg_app_db_list_ids (XdgAppDb *self);
+char ** xdg_app_db_list_apps (XdgAppDb *self);
+char ** xdg_app_db_list_ids_by_app (XdgAppDb *self,
+ const char *app);
+char ** xdg_app_db_list_ids_by_value (XdgAppDb *self,
+ GVariant *data);
+XdgAppDbEntry *xdg_app_db_lookup (XdgAppDb *self,
+ const char *id);
+GString * xdg_app_db_print_string (XdgAppDb *self,
+ GString *string);
+char * xdg_app_db_print (XdgAppDb *self);
+
+gboolean xdg_app_db_is_dirty (XdgAppDb *self);
+void xdg_app_db_set_entry (XdgAppDb *self,
+ const char *id,
+ XdgAppDbEntry *entry);
+void xdg_app_db_update (XdgAppDb *self);
+GBytes * xdg_app_db_get_content (XdgAppDb *self);
+const char * xdg_app_db_get_path (XdgAppDb *self);
+gboolean xdg_app_db_save_content (XdgAppDb *self,
+ GError **error);
+void xdg_app_db_save_content_async (XdgAppDb *self,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+gboolean xdg_app_db_save_content_finish (XdgAppDb *self,
+ GAsyncResult *res,
+ GError **error);
+void xdg_app_db_set_path (XdgAppDb *self,
+ const char *path);
+
+
+XdgAppDbEntry *xdg_app_db_entry_ref (XdgAppDbEntry *entry);
+void xdg_app_db_entry_unref (XdgAppDbEntry *entry);
+GVariant * xdg_app_db_entry_get_data (XdgAppDbEntry *entry);
+const char ** xdg_app_db_entry_list_apps (XdgAppDbEntry *entry);
+const char ** xdg_app_db_entry_list_permissions (XdgAppDbEntry *entry,
+ const char *app);
+gboolean xdg_app_db_entry_has_permission (XdgAppDbEntry *entry,
+ const char *app,
+ const char *permission);
+gboolean xdg_app_db_entry_has_permissions (XdgAppDbEntry *entry,
+ const char *app,
+ const char **permissions);
+GString * xdg_app_db_entry_print_string (XdgAppDbEntry *entry,
+ GString *string);
+
+XdgAppDbEntry *xdg_app_db_entry_new (GVariant *data);
+XdgAppDbEntry *xdg_app_db_entry_modify_data (XdgAppDbEntry *entry,
+ GVariant *data);
+XdgAppDbEntry *xdg_app_db_entry_set_app_permissions (XdgAppDbEntry *entry,
+ const char *app,
+ const char **permissions);
+
+G_DEFINE_AUTOPTR_CLEANUP_FUNC (XdgAppDb, g_object_unref)
+G_DEFINE_AUTOPTR_CLEANUP_FUNC (XdgAppDbEntry, xdg_app_db_entry_unref)
G_END_DECLS
#endif /* XDG_APP_DB_H */
-
diff --git a/common/xdg-app-dir.c b/common/xdg-app-dir.c
index 1cc74b1..563366b 100644
--- a/common/xdg-app-dir.c
+++ b/common/xdg-app-dir.c
@@ -37,41 +37,45 @@
#include "errno.h"
-#define NO_SYSTEM_HELPER ((XdgAppSystemHelper *)(gpointer)1)
+#define NO_SYSTEM_HELPER ((XdgAppSystemHelper *) (gpointer) 1)
-struct XdgAppDir {
- GObject parent;
+struct XdgAppDir
+{
+ GObject parent;
- gboolean user;
- GFile *basedir;
- OstreeRepo *repo;
+ gboolean user;
+ GFile *basedir;
+ OstreeRepo *repo;
XdgAppSystemHelper *system_helper;
- SoupSession *soup_session;
+ SoupSession *soup_session;
};
-typedef struct {
+typedef struct
+{
GObjectClass parent_class;
} XdgAppDirClass;
-struct XdgAppDeploy {
- GObject parent;
+struct XdgAppDeploy
+{
+ GObject parent;
- GFile *dir;
- GKeyFile *metadata;
+ GFile *dir;
+ GKeyFile *metadata;
XdgAppContext *system_overrides;
XdgAppContext *user_overrides;
};
-typedef struct {
+typedef struct
+{
GObjectClass parent_class;
} XdgAppDeployClass;
G_DEFINE_TYPE (XdgAppDir, xdg_app_dir, G_TYPE_OBJECT)
G_DEFINE_TYPE (XdgAppDeploy, xdg_app_deploy, G_TYPE_OBJECT)
-G_DEFINE_QUARK (xdg-app-dir-error-quark, xdg_app_dir_error)
+G_DEFINE_QUARK (xdg - app - dir - error - quark, xdg_app_dir_error)
enum {
PROP_0,
@@ -164,6 +168,7 @@ GFile *
xdg_app_get_user_base_dir_location (void)
{
g_autofree char *base = g_build_filename (g_get_user_data_dir (), "xdg-app", NULL);
+
return g_file_new_for_path (base);
}
@@ -260,10 +265,10 @@ xdg_app_dir_finalize (GObject *object)
}
static void
-xdg_app_dir_set_property(GObject *object,
- guint prop_id,
- const GValue *value,
- GParamSpec *pspec)
+xdg_app_dir_set_property (GObject *object,
+ guint prop_id,
+ const GValue *value,
+ GParamSpec *pspec)
{
XdgAppDir *self = XDG_APP_DIR (object);
@@ -273,9 +278,11 @@ xdg_app_dir_set_property(GObject *object,
/* Canonicalize */
self->basedir = g_file_new_for_path (gs_file_get_path_cached (g_value_get_object (value)));
break;
+
case PROP_USER:
self->user = g_value_get_boolean (value);
break;
+
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
@@ -283,10 +290,10 @@ xdg_app_dir_set_property(GObject *object,
}
static void
-xdg_app_dir_get_property(GObject *object,
- guint prop_id,
- GValue *value,
- GParamSpec *pspec)
+xdg_app_dir_get_property (GObject *object,
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec)
{
XdgAppDir *self = XDG_APP_DIR (object);
@@ -295,9 +302,11 @@ xdg_app_dir_get_property(GObject *object,
case PROP_PATH:
g_value_set_object (value, self->basedir);
break;
+
case PROP_USER:
g_value_set_boolean (value, self->user);
break;
+
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
@@ -353,10 +362,10 @@ xdg_app_dir_get_changed_path (XdgAppDir *self)
}
char *
-xdg_app_dir_load_override (XdgAppDir *self,
+xdg_app_dir_load_override (XdgAppDir *self,
const char *app_id,
- gsize *length,
- GError **error)
+ gsize *length,
+ GError **error)
{
g_autoptr(GFile) override_dir = NULL;
g_autoptr(GFile) file = NULL;
@@ -366,7 +375,7 @@ xdg_app_dir_load_override (XdgAppDir *self,
file = g_file_get_child (override_dir, app_id);
if (!g_file_load_contents (file, NULL,
- &metadata_contents, length, NULL, NULL))
+ &metadata_contents, length, NULL, NULL))
{
g_set_error (error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND,
"No overrides found for %s", app_id);
@@ -381,6 +390,7 @@ xdg_app_load_override_keyfile (const char *app_id, gboolean user, GError **error
{
g_autofree char *metadata_contents = NULL;
gsize metadata_size;
+
g_autoptr(GKeyFile) metakey = g_key_file_new ();
g_autoptr(XdgAppDir) dir = NULL;
@@ -403,6 +413,7 @@ XdgAppContext *
xdg_app_load_override_file (const char *app_id, gboolean user, GError **error)
{
XdgAppContext *overrides = xdg_app_context_new ();
+
g_autoptr(GKeyFile) metakey = NULL;
g_autoptr(GError) my_error = NULL;
@@ -425,10 +436,10 @@ xdg_app_load_override_file (const char *app_id, gboolean user, GError **error)
}
gboolean
-xdg_app_save_override_keyfile (GKeyFile *metakey,
- const char *app_id,
- gboolean user,
- GError **error)
+xdg_app_save_override_keyfile (GKeyFile *metakey,
+ const char *app_id,
+ gboolean user,
+ GError **error)
{
g_autoptr(GFile) base_dir = NULL;
g_autoptr(GFile) override_dir = NULL;
@@ -446,7 +457,7 @@ xdg_app_save_override_keyfile (GKeyFile *metakey,
filename = g_file_get_path (file);
parent = g_path_get_dirname (filename);
- if (g_mkdir_with_parents (parent, 0755))
+ if (g_mkdir_with_parents (parent, 0755))
{
glnx_set_error_from_errno (error);
return FALSE;
@@ -511,20 +522,20 @@ xdg_app_dir_load_deployed (XdgAppDir *self,
}
GFile *
-xdg_app_dir_get_deploy_dir (XdgAppDir *self,
- const char *ref)
+xdg_app_dir_get_deploy_dir (XdgAppDir *self,
+ const char *ref)
{
return g_file_resolve_relative_path (self->basedir, ref);
}
GFile *
-xdg_app_dir_get_exports_dir (XdgAppDir *self)
+xdg_app_dir_get_exports_dir (XdgAppDir *self)
{
return g_file_get_child (self->basedir, "exports");
}
GFile *
-xdg_app_dir_get_removed_dir (XdgAppDir *self)
+xdg_app_dir_get_removed_dir (XdgAppDir *self)
{
return g_file_get_child (self->basedir, ".removed");
}
@@ -544,10 +555,10 @@ xdg_app_dir_get_repo (XdgAppDir *self)
* to do the right thing.
*/
gboolean
-xdg_app_dir_lock (XdgAppDir *self,
- GLnxLockFile *lockfile,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_lock (XdgAppDir *self,
+ GLnxLockFile *lockfile,
+ GCancellable *cancellable,
+ GError **error)
{
g_autoptr(GFile) lock_file = g_file_get_child (xdg_app_dir_get_path (self), "lock");
g_autofree char *lock_path = g_file_get_path (lock_file);
@@ -559,6 +570,7 @@ const char *
xdg_app_deploy_data_get_origin (GVariant *deploy_data)
{
const char *origin;
+
g_variant_get_child (deploy_data, 0, "&s", &origin);
return origin;
}
@@ -567,6 +579,7 @@ const char *
xdg_app_deploy_data_get_commit (GVariant *deploy_data)
{
const char *commit;
+
g_variant_get_child (deploy_data, 1, "&s", &commit);
return commit;
}
@@ -580,6 +593,7 @@ const char **
xdg_app_deploy_data_get_subpaths (GVariant *deploy_data)
{
const char **subpaths;
+
g_variant_get_child (deploy_data, 2, "^as", &subpaths);
return subpaths;
}
@@ -588,6 +602,7 @@ guint64
xdg_app_deploy_data_get_installed_size (GVariant *deploy_data)
{
guint64 size;
+
g_variant_get_child (deploy_data, 3, "t", &size);
return GUINT64_FROM_BE (size);
}
@@ -595,9 +610,9 @@ xdg_app_deploy_data_get_installed_size (GVariant *deploy_data)
static GVariant *
xdg_app_dir_new_deploy_data (const char *origin,
const char *commit,
- char **subpaths,
- guint64 installed_size,
- GVariant *metadata)
+ char **subpaths,
+ guint64 installed_size,
+ GVariant *metadata)
{
char *empty_subpaths[] = {NULL};
GVariantBuilder builder;
@@ -617,9 +632,9 @@ xdg_app_dir_new_deploy_data (const char *origin,
}
static char **
-get_old_subpaths (GFile *deploy_base,
- GCancellable *cancellable,
- GError **error)
+get_old_subpaths (GFile *deploy_base,
+ GCancellable *cancellable,
+ GError **error)
{
g_autoptr(GFile) file = NULL;
g_autofree char *data = NULL;
@@ -632,7 +647,9 @@ get_old_subpaths (GFile *deploy_base,
if (!g_file_load_contents (file, cancellable, &data, NULL, NULL, &my_error))
{
if (g_error_matches (my_error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND))
- data = g_strdup ("");
+ {
+ data = g_strdup ("");
+ }
else
{
g_propagate_error (error, g_steal_pointer (&my_error));
@@ -651,14 +668,14 @@ get_old_subpaths (GFile *deploy_base,
}
g_ptr_array_add (subpaths, NULL);
- return (char **)g_ptr_array_free (subpaths, FALSE);
+ return (char **) g_ptr_array_free (subpaths, FALSE);
}
static GVariant *
-xdg_app_create_deploy_data_from_old (XdgAppDir *self,
- GFile *deploy_dir,
+xdg_app_create_deploy_data_from_old (XdgAppDir *self,
+ GFile *deploy_dir,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
g_autoptr(GFile) deploy_base = NULL;
g_autofree char *old_origin = NULL;
@@ -687,10 +704,10 @@ xdg_app_create_deploy_data_from_old (XdgAppDir *self,
}
GVariant *
-xdg_app_dir_get_deploy_data (XdgAppDir *self,
- const char *ref,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_get_deploy_data (XdgAppDir *self,
+ const char *ref,
+ GCancellable *cancellable,
+ GError **error)
{
g_autoptr(GFile) deploy_dir = NULL;
g_autoptr(GFile) data_file = NULL;
@@ -726,10 +743,10 @@ xdg_app_dir_get_deploy_data (XdgAppDir *self,
char *
-xdg_app_dir_get_origin (XdgAppDir *self,
- const char *ref,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_get_origin (XdgAppDir *self,
+ const char *ref,
+ GCancellable *cancellable,
+ GError **error)
{
g_autoptr(GVariant) deploy_data = NULL;
@@ -745,10 +762,10 @@ xdg_app_dir_get_origin (XdgAppDir *self,
}
char **
-xdg_app_dir_get_subpaths (XdgAppDir *self,
- const char *ref,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_get_subpaths (XdgAppDir *self,
+ const char *ref,
+ GCancellable *cancellable,
+ GError **error)
{
g_autoptr(GVariant) deploy_data = NULL;
char **subpaths;
@@ -762,7 +779,7 @@ xdg_app_dir_get_subpaths (XdgAppDir *self,
return NULL;
}
- subpaths = (char **)xdg_app_deploy_data_get_subpaths (deploy_data);
+ subpaths = (char **) xdg_app_deploy_data_get_subpaths (deploy_data);
for (i = 0; subpaths[i] != NULL; i++)
subpaths[i] = g_strdup (subpaths[i]);
@@ -770,19 +787,20 @@ xdg_app_dir_get_subpaths (XdgAppDir *self,
}
gboolean
-xdg_app_dir_ensure_path (XdgAppDir *self,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_ensure_path (XdgAppDir *self,
+ GCancellable *cancellable,
+ GError **error)
{
return gs_file_ensure_directory (self->basedir, TRUE, cancellable, error);
}
gboolean
-xdg_app_dir_ensure_repo (XdgAppDir *self,
+xdg_app_dir_ensure_repo (XdgAppDir *self,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
gboolean ret = FALSE;
+
g_autoptr(GFile) repodir = NULL;
g_autoptr(OstreeRepo) repo = NULL;
@@ -793,7 +811,9 @@ xdg_app_dir_ensure_repo (XdgAppDir *self,
repodir = g_file_get_child (self->basedir, "repo");
if (self->user)
- repo = ostree_repo_new (repodir);
+ {
+ repo = ostree_repo_new (repodir);
+ }
else
{
g_autoptr(GFile) cache_dir = NULL;
@@ -841,13 +861,13 @@ xdg_app_dir_ensure_repo (XdgAppDir *self,
}
ret = TRUE;
- out:
+out:
return ret;
}
gboolean
xdg_app_dir_mark_changed (XdgAppDir *self,
- GError **error)
+ GError **error)
{
g_autoptr(GFile) changed_file = NULL;
@@ -860,10 +880,10 @@ xdg_app_dir_mark_changed (XdgAppDir *self,
}
gboolean
-xdg_app_dir_remove_appstream (XdgAppDir *self,
- const char *remote,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_remove_appstream (XdgAppDir *self,
+ const char *remote,
+ GCancellable *cancellable,
+ GError **error)
{
g_autoptr(GFile) appstream_dir = NULL;
g_autoptr(GFile) remote_dir = NULL;
@@ -882,12 +902,13 @@ xdg_app_dir_remove_appstream (XdgAppDir *self,
}
gboolean
-xdg_app_dir_remove_all_refs (XdgAppDir *self,
- const char *remote,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_remove_all_refs (XdgAppDir *self,
+ const char *remote,
+ GCancellable *cancellable,
+ GError **error)
{
g_autofree char *prefix = NULL;
+
g_autoptr(GHashTable) refs = NULL;
GHashTableIter hash_iter;
gpointer key;
@@ -917,18 +938,19 @@ xdg_app_dir_remove_all_refs (XdgAppDir *self,
}
gboolean
-xdg_app_dir_update_appstream (XdgAppDir *self,
- const char *remote,
- const char *arch,
- gboolean *out_changed,
+xdg_app_dir_update_appstream (XdgAppDir *self,
+ const char *remote,
+ const char *arch,
+ gboolean *out_changed,
OstreeAsyncProgress *progress,
- GCancellable *cancellable,
- GError **error)
+ GCancellable *cancellable,
+ GError **error)
{
g_autofree char *branch = NULL;
g_autofree char *remote_and_branch = NULL;
g_autofree char *old_checksum = NULL;
g_autofree char *new_checksum = NULL;
+
g_autoptr(GFile) root = NULL;
g_autoptr(GFile) appstream_dir = NULL;
g_autoptr(GFile) remote_dir = NULL;
@@ -1054,16 +1076,17 @@ xdg_app_dir_update_appstream (XdgAppDir *self,
/* This is a copy of ostree_repo_pull_one_dir that always disables
static deltas if subdir is used */
static gboolean
-repo_pull_one_dir (OstreeRepo *self,
- const char *remote_name,
- const char *dir_to_pull,
- char **refs_to_fetch,
- OstreeRepoPullFlags flags,
- OstreeAsyncProgress *progress,
- GCancellable *cancellable,
- GError **error)
+repo_pull_one_dir (OstreeRepo *self,
+ const char *remote_name,
+ const char *dir_to_pull,
+ char **refs_to_fetch,
+ OstreeRepoPullFlags flags,
+ OstreeAsyncProgress *progress,
+ GCancellable *cancellable,
+ GError **error)
{
GVariantBuilder builder;
+
g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}"));
if (dir_to_pull)
@@ -1078,7 +1101,7 @@ repo_pull_one_dir (OstreeRepo *self,
g_variant_new_variant (g_variant_new_int32 (flags)));
if (refs_to_fetch)
g_variant_builder_add (&builder, "{s@v}", "refs",
- g_variant_new_variant (g_variant_new_strv ((const char *const*) refs_to_fetch, -1)));
+ g_variant_new_variant (g_variant_new_strv ((const char * const *) refs_to_fetch, -1)));
return ostree_repo_pull_with_options (self, remote_name, g_variant_builder_end (&builder),
progress, cancellable, error);
@@ -1086,18 +1109,19 @@ repo_pull_one_dir (OstreeRepo *self,
gboolean
-xdg_app_dir_pull (XdgAppDir *self,
- const char *repository,
- const char *ref,
- char **subpaths,
- OstreeRepo *repo,
- OstreeRepoPullFlags flags,
+xdg_app_dir_pull (XdgAppDir *self,
+ const char *repository,
+ const char *ref,
+ char **subpaths,
+ OstreeRepo *repo,
+ OstreeRepoPullFlags flags,
OstreeAsyncProgress *progress,
- GCancellable *cancellable,
- GError **error)
+ GCancellable *cancellable,
+ GError **error)
{
gboolean ret = FALSE;
GSConsole *console = NULL;
+
g_autoptr(OstreeAsyncProgress) console_progress = NULL;
const char *refs[2];
g_autofree char *url = NULL;
@@ -1135,7 +1159,7 @@ xdg_app_dir_pull (XdgAppDir *self,
if (subpaths == NULL || subpaths[0] == NULL)
{
if (!ostree_repo_pull (repo, repository,
- (char **)refs, flags,
+ (char **) refs, flags,
progress,
cancellable, error))
{
@@ -1149,7 +1173,7 @@ xdg_app_dir_pull (XdgAppDir *self,
if (!repo_pull_one_dir (repo, repository,
"/metadata",
- (char **)refs, flags,
+ (char **) refs, flags,
progress,
cancellable, error))
{
@@ -1163,7 +1187,7 @@ xdg_app_dir_pull (XdgAppDir *self,
g_autofree char *subpath = g_build_filename ("/files", subpaths[i], NULL);
if (!repo_pull_one_dir (repo, repository,
subpath,
- (char **)refs, flags,
+ (char **) refs, flags,
progress,
cancellable, error))
{
@@ -1176,7 +1200,7 @@ xdg_app_dir_pull (XdgAppDir *self,
ret = TRUE;
- out:
+out:
if (console)
{
ostree_async_progress_finish (progress);
@@ -1187,18 +1211,19 @@ xdg_app_dir_pull (XdgAppDir *self,
}
static gboolean
-repo_pull_one_untrusted (OstreeRepo *self,
- const char *remote_name,
- const char *url,
- const char *dir_to_pull,
- const char *ref,
- const char *checksum,
- OstreeAsyncProgress *progress,
- GCancellable *cancellable,
- GError **error)
+repo_pull_one_untrusted (OstreeRepo *self,
+ const char *remote_name,
+ const char *url,
+ const char *dir_to_pull,
+ const char *ref,
+ const char *checksum,
+ OstreeAsyncProgress *progress,
+ GCancellable *cancellable,
+ GError **error)
{
OstreeRepoPullFlags flags = OSTREE_REPO_PULL_FLAGS_UNTRUSTED;
GVariantBuilder builder;
+
g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}"));
const char *refs[2] = { NULL, NULL };
const char *commits[2] = { NULL, NULL };
@@ -1209,9 +1234,9 @@ repo_pull_one_untrusted (OstreeRepo *self,
g_variant_builder_add (&builder, "{s@v}", "flags",
g_variant_new_variant (g_variant_new_int32 (flags)));
g_variant_builder_add (&builder, "{s@v}", "refs",
- g_variant_new_variant (g_variant_new_strv ((const char *const*) refs, -1)));
+ g_variant_new_variant (g_variant_new_strv ((const char * const *) refs, -1)));
g_variant_builder_add (&builder, "{s@v}", "override-commit-ids",
- g_variant_new_variant (g_variant_new_strv ((const char *const*) commits, -1)));
+ g_variant_new_variant (g_variant_new_strv ((const char * const *) commits, -1)));
g_variant_builder_add (&builder, "{s@v}", "override-remote-name",
g_variant_new_variant (g_variant_new_string (remote_name)));
g_variant_builder_add (&builder, "{s@v}", "gpg-verify",
@@ -1232,17 +1257,18 @@ repo_pull_one_untrusted (OstreeRepo *self,
}
gboolean
-xdg_app_dir_pull_untrusted_local (XdgAppDir *self,
- const char *src_path,
- const char *remote_name,
- const char *ref,
- char **subpaths,
+xdg_app_dir_pull_untrusted_local (XdgAppDir *self,
+ const char *src_path,
+ const char *remote_name,
+ const char *ref,
+ char **subpaths,
OstreeAsyncProgress *progress,
- GCancellable *cancellable,
- GError **error)
+ GCancellable *cancellable,
+ GError **error)
{
gboolean ret = FALSE;
GSConsole *console = NULL;
+
g_autoptr(OstreeAsyncProgress) console_progress = NULL;
g_autoptr(GFile) path_file = g_file_new_for_path (src_path);
g_autoptr(GFile) summary_file = g_file_get_child (path_file, "summary");
@@ -1311,7 +1337,7 @@ xdg_app_dir_pull_untrusted_local (XdgAppDir *self,
return FALSE;
}
- (void)ostree_repo_load_commit (self->repo, checksum, &old_commit, NULL, NULL);
+ (void) ostree_repo_load_commit (self->repo, checksum, &old_commit, NULL, NULL);
if (old_commit)
{
@@ -1347,7 +1373,7 @@ xdg_app_dir_pull_untrusted_local (XdgAppDir *self,
if (subpaths == NULL || subpaths[0] == NULL)
{
- if (!repo_pull_one_untrusted (self->repo, remote_name,url,
+ if (!repo_pull_one_untrusted (self->repo, remote_name, url,
NULL, ref, checksum, progress,
cancellable, error))
{
@@ -1359,7 +1385,7 @@ xdg_app_dir_pull_untrusted_local (XdgAppDir *self,
{
int i;
- if (!repo_pull_one_untrusted (self->repo, remote_name,url,
+ if (!repo_pull_one_untrusted (self->repo, remote_name, url,
"/metadata", ref, checksum, progress,
cancellable, error))
{
@@ -1371,7 +1397,7 @@ xdg_app_dir_pull_untrusted_local (XdgAppDir *self,
for (i = 0; subpaths[i] != NULL; i++)
{
g_autofree char *subpath = g_build_filename ("/files", subpaths[i], NULL);
- if (!repo_pull_one_untrusted (self->repo, remote_name,url,
+ if (!repo_pull_one_untrusted (self->repo, remote_name, url,
subpath, ref, checksum, progress,
cancellable, error))
{
@@ -1384,7 +1410,7 @@ xdg_app_dir_pull_untrusted_local (XdgAppDir *self,
ret = TRUE;
- out:
+out:
if (console)
{
ostree_async_progress_finish (progress);
@@ -1396,8 +1422,8 @@ xdg_app_dir_pull_untrusted_local (XdgAppDir *self,
char *
-xdg_app_dir_current_ref (XdgAppDir *self,
- const char *name,
+xdg_app_dir_current_ref (XdgAppDir *self,
+ const char *name,
GCancellable *cancellable)
{
g_autoptr(GFile) base = NULL;
@@ -1420,10 +1446,10 @@ xdg_app_dir_current_ref (XdgAppDir *self,
}
gboolean
-xdg_app_dir_drop_current_ref (XdgAppDir *self,
- const char *name,
+xdg_app_dir_drop_current_ref (XdgAppDir *self,
+ const char *name,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
g_autoptr(GFile) base = NULL;
g_autoptr(GFile) dir = NULL;
@@ -1438,10 +1464,10 @@ xdg_app_dir_drop_current_ref (XdgAppDir *self,
}
gboolean
-xdg_app_dir_make_current_ref (XdgAppDir *self,
- const char *ref,
+xdg_app_dir_make_current_ref (XdgAppDir *self,
+ const char *ref,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
g_autoptr(GFile) base = NULL;
g_autoptr(GFile) dir = NULL;
@@ -1471,19 +1497,20 @@ xdg_app_dir_make_current_ref (XdgAppDir *self,
ret = TRUE;
- out:
+out:
return ret;
}
gboolean
-xdg_app_dir_list_refs_for_name (XdgAppDir *self,
- const char *kind,
- const char *name,
- char ***refs_out,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_list_refs_for_name (XdgAppDir *self,
+ const char *kind,
+ const char *name,
+ char ***refs_out,
+ GCancellable *cancellable,
+ GError **error)
{
gboolean ret = FALSE;
+
g_autoptr(GFile) base = NULL;
g_autoptr(GFile) dir = NULL;
g_autoptr(GFileEnumerator) dir_enum = NULL;
@@ -1564,7 +1591,7 @@ out:
if (ret)
{
g_ptr_array_add (refs, NULL);
- *refs_out = (char **)g_ptr_array_free (refs, FALSE);
+ *refs_out = (char **) g_ptr_array_free (refs, FALSE);
refs = NULL;
}
@@ -1575,13 +1602,14 @@ out:
}
gboolean
-xdg_app_dir_list_refs (XdgAppDir *self,
- const char *kind,
- char ***refs_out,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_list_refs (XdgAppDir *self,
+ const char *kind,
+ char ***refs_out,
+ GCancellable *cancellable,
+ GError **error)
{
gboolean ret = FALSE;
+
g_autoptr(GFile) base;
g_autoptr(GFileEnumerator) dir_enum = NULL;
g_autoptr(GFileInfo) child_info = NULL;
@@ -1639,7 +1667,7 @@ out:
if (ret)
{
g_ptr_array_add (refs, NULL);
- *refs_out = (char **)g_ptr_array_free (refs, FALSE);
+ *refs_out = (char **) g_ptr_array_free (refs, FALSE);
refs = NULL;
}
@@ -1650,11 +1678,11 @@ out:
}
char *
-xdg_app_dir_read_latest (XdgAppDir *self,
- const char *remote,
- const char *ref,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_read_latest (XdgAppDir *self,
+ const char *remote,
+ const char *ref,
+ GCancellable *cancellable,
+ GError **error)
{
g_autofree char *remote_and_ref = NULL;
char *res = NULL;
@@ -1676,8 +1704,8 @@ xdg_app_dir_read_latest (XdgAppDir *self,
char *
-xdg_app_dir_read_active (XdgAppDir *self,
- const char *ref,
+xdg_app_dir_read_active (XdgAppDir *self,
+ const char *ref,
GCancellable *cancellable)
{
g_autoptr(GFile) deploy_base = NULL;
@@ -1697,18 +1725,19 @@ xdg_app_dir_read_active (XdgAppDir *self,
}
gboolean
-xdg_app_dir_set_active (XdgAppDir *self,
- const char *ref,
- const char *checksum,
+xdg_app_dir_set_active (XdgAppDir *self,
+ const char *ref,
+ const char *checksum,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
gboolean ret = FALSE;
+
g_autoptr(GFile) deploy_base = NULL;
g_autofree char *tmpname = NULL;
g_autoptr(GFile) active_tmp_link = NULL;
g_autoptr(GFile) active_link = NULL;
- g_autoptr (GError) my_error = NULL;
+ g_autoptr(GError) my_error = NULL;
deploy_base = xdg_app_dir_get_deploy_dir (self, ref);
active_link = g_file_get_child (deploy_base, "active");
@@ -1737,17 +1766,18 @@ xdg_app_dir_set_active (XdgAppDir *self,
}
ret = TRUE;
- out:
+out:
return ret;
}
gboolean
-xdg_app_dir_run_triggers (XdgAppDir *self,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_run_triggers (XdgAppDir *self,
+ GCancellable *cancellable,
+ GError **error)
{
gboolean ret = FALSE;
+
g_autoptr(GFileEnumerator) dir_enum = NULL;
g_autoptr(GFileInfo) child_info = NULL;
g_autoptr(GFile) triggersdir = NULL;
@@ -1778,48 +1808,48 @@ xdg_app_dir_run_triggers (XdgAppDir *self,
child = g_file_get_child (triggersdir, name);
if (g_file_info_get_file_type (child_info) == G_FILE_TYPE_REGULAR &&
- g_str_has_suffix (name, ".trigger"))
- {
- g_autoptr(GPtrArray) argv_array = NULL;
+ g_str_has_suffix (name, ".trigger"))
+ {
+ g_autoptr(GPtrArray) argv_array = NULL;
- g_debug ("running trigger %s", name);
+ g_debug ("running trigger %s", name);
- argv_array = g_ptr_array_new_with_free_func (g_free);
+ argv_array = g_ptr_array_new_with_free_func (g_free);
#ifdef DISABLE_SANDBOXED_TRIGGERS
- g_ptr_array_add (argv_array, g_file_get_path (child));
- g_ptr_array_add (argv_array, g_file_get_path (self->basedir));
+ g_ptr_array_add (argv_array, g_file_get_path (child));
+ g_ptr_array_add (argv_array, g_file_get_path (self->basedir));
#else
- g_ptr_array_add (argv_array, g_strdup (xdg_app_get_bwrap ()));
- g_ptr_array_add (argv_array, g_strdup ("--unshare-ipc"));
- g_ptr_array_add (argv_array, g_strdup ("--unshare-net"));
- g_ptr_array_add (argv_array, g_strdup ("--unshare-pid"));
- g_ptr_array_add (argv_array, g_strdup ("--ro-bind"));
- g_ptr_array_add (argv_array, g_strdup ("/"));
- g_ptr_array_add (argv_array, g_strdup ("/"));
- g_ptr_array_add (argv_array, g_strdup ("--proc"));
- g_ptr_array_add (argv_array, g_strdup ("/proc"));
- g_ptr_array_add (argv_array, g_strdup ("--dev"));
- g_ptr_array_add (argv_array, g_strdup ("/dev"));
- g_ptr_array_add (argv_array, g_strdup ("--bind"));
- g_ptr_array_add (argv_array, g_file_get_path (self->basedir));
- g_ptr_array_add (argv_array, g_file_get_path (self->basedir));
+ g_ptr_array_add (argv_array, g_strdup (xdg_app_get_bwrap ()));
+ g_ptr_array_add (argv_array, g_strdup ("--unshare-ipc"));
+ g_ptr_array_add (argv_array, g_strdup ("--unshare-net"));
+ g_ptr_array_add (argv_array, g_strdup ("--unshare-pid"));
+ g_ptr_array_add (argv_array, g_strdup ("--ro-bind"));
+ g_ptr_array_add (argv_array, g_strdup ("/"));
+ g_ptr_array_add (argv_array, g_strdup ("/"));
+ g_ptr_array_add (argv_array, g_strdup ("--proc"));
+ g_ptr_array_add (argv_array, g_strdup ("/proc"));
+ g_ptr_array_add (argv_array, g_strdup ("--dev"));
+ g_ptr_array_add (argv_array, g_strdup ("/dev"));
+ g_ptr_array_add (argv_array, g_strdup ("--bind"));
+ g_ptr_array_add (argv_array, g_file_get_path (self->basedir));
+ g_ptr_array_add (argv_array, g_file_get_path (self->basedir));
#endif
- g_ptr_array_add (argv_array, g_file_get_path (child));
- g_ptr_array_add (argv_array, g_file_get_path (self->basedir));
- g_ptr_array_add (argv_array, NULL);
-
- if (!g_spawn_sync ("/",
- (char **)argv_array->pdata,
- NULL,
- G_SPAWN_DEFAULT,
- NULL, NULL,
- NULL, NULL,
- NULL, &trigger_error))
- {
- g_warning ("Error running trigger %s: %s", name, trigger_error->message);
- g_clear_error (&trigger_error);
- }
- }
+ g_ptr_array_add (argv_array, g_file_get_path (child));
+ g_ptr_array_add (argv_array, g_file_get_path (self->basedir));
+ g_ptr_array_add (argv_array, NULL);
+
+ if (!g_spawn_sync ("/",
+ (char **) argv_array->pdata,
+ NULL,
+ G_SPAWN_DEFAULT,
+ NULL, NULL,
+ NULL, NULL,
+ NULL, &trigger_error))
+ {
+ g_warning ("Error running trigger %s: %s", name, trigger_error->message);
+ g_clear_error (&trigger_error);
+ }
+ }
g_clear_object (&child_info);
}
@@ -1831,16 +1861,16 @@ xdg_app_dir_run_triggers (XdgAppDir *self,
}
ret = TRUE;
- out:
+out:
return ret;
}
static gboolean
-read_fd (int fd,
- struct stat *stat_buf,
- gchar **contents,
- gsize *length,
- GError **error)
+read_fd (int fd,
+ struct stat *stat_buf,
+ gchar **contents,
+ gsize *length,
+ GError **error)
{
gchar *buf;
gsize bytes_read;
@@ -1883,9 +1913,13 @@ read_fd (int fd,
}
}
else if (rc == 0)
- break;
+ {
+ break;
+ }
else
- bytes_read += rc;
+ {
+ bytes_read += rc;
+ }
}
buf[bytes_read] = '\0';
@@ -1925,20 +1959,21 @@ maybe_quote (const char *str)
}
static gboolean
-export_desktop_file (const char *app,
- const char *branch,
- const char *arch,
- GKeyFile *metadata,
- int parent_fd,
- const char *name,
- struct stat *stat_buf,
- char **target,
- GCancellable *cancellable,
- GError **error)
+export_desktop_file (const char *app,
+ const char *branch,
+ const char *arch,
+ GKeyFile *metadata,
+ int parent_fd,
+ const char *name,
+ struct stat *stat_buf,
+ char **target,
+ GCancellable *cancellable,
+ GError **error)
{
gboolean ret = FALSE;
glnx_fd_close int desktop_fd = -1;
g_autofree char *tmpfile_name = NULL;
+
g_autoptr(GOutputStream) out_stream = NULL;
g_autofree gchar *data = NULL;
gsize data_len;
@@ -1988,10 +2023,12 @@ export_desktop_file (const char *app,
NULL);
if (tags != NULL)
- g_key_file_set_string_list (keyfile,
- "Desktop Entry",
- "X-XdgApp-Tags",
- (const char * const *)tags, length);
+ {
+ g_key_file_set_string_list (keyfile,
+ "Desktop Entry",
+ "X-XdgApp-Tags",
+ (const char * const *) tags, length);
+ }
}
groups = g_key_file_get_groups (keyfile, NULL);
@@ -2004,7 +2041,7 @@ export_desktop_file (const char *app,
g_key_file_remove_key (keyfile, groups[i], "X-GNOME-Bugzilla-ExtraInfoScript", NULL);
new_exec = g_string_new ("");
- g_string_append_printf (new_exec, XDG_APP_BINDIR"/xdg-app run --branch=%s --arch=%s", escaped_branch, escaped_arch);
+ g_string_append_printf (new_exec, XDG_APP_BINDIR "/xdg-app run --branch=%s --arch=%s", escaped_branch, escaped_arch);
old_exec = g_key_file_get_string (keyfile, groups[i], "Exec", NULL);
if (old_exec && g_shell_parse_argv (old_exec, &old_argc, &old_argv, NULL) && old_argc >= 1)
@@ -2050,7 +2087,7 @@ export_desktop_file (const char *app,
*target = g_steal_pointer (&tmpfile_name);
ret = TRUE;
- out:
+out:
if (new_exec != NULL)
g_string_free (new_exec, TRUE);
@@ -2059,16 +2096,17 @@ export_desktop_file (const char *app,
}
static gboolean
-rewrite_export_dir (const char *app,
- const char *branch,
- const char *arch,
- GKeyFile *metadata,
- int source_parent_fd,
- const char *source_name,
- GCancellable *cancellable,
- GError **error)
+rewrite_export_dir (const char *app,
+ const char *branch,
+ const char *arch,
+ GKeyFile *metadata,
+ int source_parent_fd,
+ const char *source_name,
+ GCancellable *cancellable,
+ GError **error)
{
gboolean ret = FALSE;
+
g_auto(GLnxDirFdIterator) source_iter = {0};
g_autoptr(GHashTable) visited_children = NULL;
struct dirent *dent;
@@ -2089,15 +2127,17 @@ rewrite_export_dir (const char *app,
break;
if (g_hash_table_contains (visited_children, dent->d_name))
- continue;
+ continue;
/* Avoid processing the same file again if it was re-created during an export */
- g_hash_table_insert (visited_children, g_strdup (dent->d_name), GINT_TO_POINTER(1));
+ g_hash_table_insert (visited_children, g_strdup (dent->d_name), GINT_TO_POINTER (1));
if (fstatat (source_iter.fd, dent->d_name, &stbuf, AT_SYMLINK_NOFOLLOW) == -1)
{
if (errno == ENOENT)
- continue;
+ {
+ continue;
+ }
else
{
glnx_set_error_from_errno (error);
@@ -2133,7 +2173,7 @@ rewrite_export_dir (const char *app,
source_iter.fd, dent->d_name, &stbuf, &new_name, cancellable, error))
goto out;
- g_hash_table_insert (visited_children, g_strdup (new_name), GINT_TO_POINTER(1));
+ g_hash_table_insert (visited_children, g_strdup (new_name), GINT_TO_POINTER (1));
if (renameat (source_iter.fd, new_name, source_iter.fd, dent->d_name) != 0)
{
@@ -2154,19 +2194,19 @@ rewrite_export_dir (const char *app,
}
ret = TRUE;
- out:
+out:
return ret;
}
gboolean
-xdg_app_rewrite_export_dir (const char *app,
- const char *branch,
- const char *arch,
- GKeyFile *metadata,
- GFile *source,
- GCancellable *cancellable,
- GError **error)
+xdg_app_rewrite_export_dir (const char *app,
+ const char *branch,
+ const char *arch,
+ GKeyFile *metadata,
+ GFile *source,
+ GCancellable *cancellable,
+ GError **error)
{
gboolean ret = FALSE;
@@ -2178,23 +2218,24 @@ xdg_app_rewrite_export_dir (const char *app,
ret = TRUE;
- out:
+out:
return ret;
}
static gboolean
-export_dir (int source_parent_fd,
- const char *source_name,
- const char *source_symlink_prefix,
- const char *source_relpath,
- int destination_parent_fd,
- const char *destination_name,
- GCancellable *cancellable,
- GError **error)
+export_dir (int source_parent_fd,
+ const char *source_name,
+ const char *source_symlink_prefix,
+ const char *source_relpath,
+ int destination_parent_fd,
+ const char *destination_name,
+ GCancellable *cancellable,
+ GError **error)
{
gboolean ret = FALSE;
int res;
+
g_auto(GLnxDirFdIterator) source_iter = {0};
glnx_fd_close int destination_dfd = -1;
struct dirent *dent;
@@ -2232,7 +2273,9 @@ export_dir (int source_parent_fd,
if (fstatat (source_iter.fd, dent->d_name, &stbuf, AT_SYMLINK_NOFOLLOW) == -1)
{
if (errno == ENOENT)
- continue;
+ {
+ continue;
+ }
else
{
glnx_set_error_from_errno (error);
@@ -2270,17 +2313,17 @@ export_dir (int source_parent_fd,
}
ret = TRUE;
- out:
+out:
return ret;
}
gboolean
-xdg_app_export_dir (GFile *source,
- GFile *destination,
- const char *symlink_prefix,
- GCancellable *cancellable,
- GError **error)
+xdg_app_export_dir (GFile *source,
+ GFile *destination,
+ const char *symlink_prefix,
+ GCancellable *cancellable,
+ GError **error)
{
gboolean ret = FALSE;
@@ -2295,17 +2338,18 @@ xdg_app_export_dir (GFile *source,
ret = TRUE;
- out:
+out:
return ret;
}
gboolean
-xdg_app_dir_update_exports (XdgAppDir *self,
- const char *changed_app,
+xdg_app_dir_update_exports (XdgAppDir *self,
+ const char *changed_app,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
gboolean ret = FALSE;
+
g_autoptr(GFile) exports = NULL;
g_autofree char *current_ref = NULL;
g_autofree char *active_id = NULL;
@@ -2347,21 +2391,22 @@ xdg_app_dir_update_exports (XdgAppDir *self,
ret = TRUE;
- out:
+out:
return ret;
}
gboolean
-xdg_app_dir_deploy (XdgAppDir *self,
- const char *origin,
- const char *ref,
- const char *checksum_or_latest,
+xdg_app_dir_deploy (XdgAppDir *self,
+ const char *origin,
+ const char *ref,
+ const char *checksum_or_latest,
const char * const * subpaths,
- GVariant *old_deploy_data,
- GCancellable *cancellable,
- GError **error)
+ GVariant *old_deploy_data,
+ GCancellable *cancellable,
+ GError **error)
{
g_autofree char *resolved_ref = NULL;
+
g_autoptr(GFile) root = NULL;
g_autoptr(GFileInfo) file_info = NULL;
g_autoptr(GFile) deploy_base = NULL;
@@ -2492,7 +2537,7 @@ xdg_app_dir_deploy (XdgAppDir *self,
g_autofree char *subpath = g_build_filename ("/files", subpaths[i], NULL);
g_autofree char *dstpath = g_build_filename (checkoutdirpath, "/files", subpaths[i], NULL);
g_autofree char *dstpath_parent = g_path_get_dirname (dstpath);
- if (g_mkdir_with_parents (dstpath_parent, 0755))
+ if (g_mkdir_with_parents (dstpath_parent, 0755))
{
glnx_set_error_from_errno (error);
return FALSE;
@@ -2523,7 +2568,7 @@ xdg_app_dir_deploy (XdgAppDir *self,
char *etcfiles[] = {"passwd", "group", "machine-id" };
g_autoptr(GFile) etc_resolve_conf = g_file_get_child (files_etc, "resolv.conf");
int i;
- for (i = 0; i < G_N_ELEMENTS(etcfiles); i++)
+ for (i = 0; i < G_N_ELEMENTS (etcfiles); i++)
{
g_autoptr(GFile) etc_file = g_file_get_child (files_etc, etcfiles[i]);
GFileType type;
@@ -2582,7 +2627,7 @@ xdg_app_dir_deploy (XdgAppDir *self,
deploy_data = xdg_app_dir_new_deploy_data (origin,
checksum,
- (char **)subpaths,
+ (char **) subpaths,
installed_size,
NULL);
@@ -2601,12 +2646,12 @@ xdg_app_dir_deploy (XdgAppDir *self,
}
gboolean
-xdg_app_dir_deploy_install (XdgAppDir *self,
- const char *ref,
- const char *origin,
- char **subpaths,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_deploy_install (XdgAppDir *self,
+ const char *ref,
+ const char *origin,
+ char **subpaths,
+ GCancellable *cancellable,
+ GError **error)
{
g_auto(GLnxLockFile) lock = GLNX_LOCK_FILE_INIT;
g_autoptr(GFile) deploy_base = NULL;
@@ -2623,12 +2668,16 @@ xdg_app_dir_deploy_install (XdgAppDir *self,
if (!g_file_make_directory_with_parents (deploy_base, cancellable, &local_error))
{
if (g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_EXISTS))
- g_set_error (error,
- G_IO_ERROR, G_IO_ERROR_EXISTS,
- "%s branch %s already installed",
- ref_parts[1], ref_parts[3]);
+ {
+ g_set_error (error,
+ G_IO_ERROR, G_IO_ERROR_EXISTS,
+ "%s branch %s already installed",
+ ref_parts[1], ref_parts[3]);
+ }
else
- g_propagate_error (error, g_steal_pointer (&local_error));
+ {
+ g_propagate_error (error, g_steal_pointer (&local_error));
+ }
goto out;
}
@@ -2636,7 +2685,7 @@ xdg_app_dir_deploy_install (XdgAppDir *self,
/* After we create the deploy base we must goto out on errors */
created_deploy_base = TRUE;
- if (!xdg_app_dir_deploy (self, origin, ref, NULL, (const char * const *)subpaths, NULL, cancellable, error))
+ if (!xdg_app_dir_deploy (self, origin, ref, NULL, (const char * const *) subpaths, NULL, cancellable, error))
goto out;
if (g_str_has_prefix (ref, "app/"))
@@ -2659,7 +2708,7 @@ xdg_app_dir_deploy_install (XdgAppDir *self,
ret = TRUE;
- out:
+out:
if (created_deploy_base && !ret)
gs_shutil_rm_rf (deploy_base, cancellable, NULL);
@@ -2668,13 +2717,14 @@ xdg_app_dir_deploy_install (XdgAppDir *self,
gboolean
-xdg_app_dir_deploy_update (XdgAppDir *self,
- const char *ref,
- const char *checksum_or_latest,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_deploy_update (XdgAppDir *self,
+ const char *ref,
+ const char *checksum_or_latest,
+ GCancellable *cancellable,
+ GError **error)
{
g_autofree char *previous_deployment = NULL;
+
g_autoptr(GError) my_error = NULL;
g_autoptr(GVariant) old_deploy_data = NULL;
g_auto(GLnxLockFile) lock = GLNX_LOCK_FILE_INIT;
@@ -2738,9 +2788,9 @@ xdg_app_dir_deploy_update (XdgAppDir *self,
}
static OstreeRepo *
-xdg_app_dir_create_system_child_repo (XdgAppDir *self,
+xdg_app_dir_create_system_child_repo (XdgAppDir *self,
GLnxLockFile *file_lock,
- GError **error)
+ GError **error)
{
g_autoptr(GFile) cache_dir = NULL;
g_autoptr(GFile) repo_dir = NULL;
@@ -2803,15 +2853,15 @@ xdg_app_dir_create_system_child_repo (XdgAppDir *self,
}
gboolean
-xdg_app_dir_install (XdgAppDir *self,
- gboolean no_pull,
- gboolean no_deploy,
- const char *ref,
- const char *remote_name,
- char **subpaths,
+xdg_app_dir_install (XdgAppDir *self,
+ gboolean no_pull,
+ gboolean no_deploy,
+ const char *ref,
+ const char *remote_name,
+ char **subpaths,
OstreeAsyncProgress *progress,
- GCancellable *cancellable,
- GError **error)
+ GCancellable *cancellable,
+ GError **error)
{
if (xdg_app_dir_use_child_repo (self))
{
@@ -2844,7 +2894,7 @@ xdg_app_dir_install (XdgAppDir *self,
XDG_APP_HELPER_DEPLOY_FLAGS_NONE,
ref,
remote_name,
- (const char *const *)(subpaths ? subpaths : empty_subpaths),
+ (const char * const *) (subpaths ? subpaths : empty_subpaths),
cancellable,
error))
return FALSE;
@@ -2875,16 +2925,16 @@ xdg_app_dir_install (XdgAppDir *self,
}
gboolean
-xdg_app_dir_update (XdgAppDir *self,
- gboolean no_pull,
- gboolean no_deploy,
- const char *ref,
- const char *remote_name,
- const char *checksum_or_latest,
- char **subpaths,
+xdg_app_dir_update (XdgAppDir *self,
+ gboolean no_pull,
+ gboolean no_deploy,
+ const char *ref,
+ const char *remote_name,
+ const char *checksum_or_latest,
+ char **subpaths,
OstreeAsyncProgress *progress,
- GCancellable *cancellable,
- GError **error)
+ GCancellable *cancellable,
+ GError **error)
{
if (xdg_app_dir_use_child_repo (self))
{
@@ -2929,7 +2979,7 @@ xdg_app_dir_update (XdgAppDir *self,
XDG_APP_HELPER_DEPLOY_FLAGS_UPDATE,
ref,
remote_name,
- (const char *const *)empty_subpaths,
+ (const char * const *) empty_subpaths,
cancellable,
error))
return FALSE;
@@ -2954,7 +3004,7 @@ xdg_app_dir_update (XdgAppDir *self,
if (!no_deploy)
{
if (!xdg_app_dir_deploy_update (self, ref, checksum_or_latest,
- cancellable, error))
+ cancellable, error))
return FALSE;
}
@@ -2964,16 +3014,17 @@ xdg_app_dir_update (XdgAppDir *self,
gboolean
-xdg_app_dir_collect_deployed_refs (XdgAppDir *self,
- const char *type,
- const char *name_prefix,
- const char *branch,
- const char *arch,
- GHashTable *hash,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_collect_deployed_refs (XdgAppDir *self,
+ const char *type,
+ const char *name_prefix,
+ const char *branch,
+ const char *arch,
+ GHashTable *hash,
+ GCancellable *cancellable,
+ GError **error)
{
gboolean ret = FALSE;
+
g_autoptr(GFile) dir = NULL;
g_autoptr(GFileEnumerator) dir_enum = NULL;
g_autoptr(GFileInfo) child_info = NULL;
@@ -2996,15 +3047,15 @@ xdg_app_dir_collect_deployed_refs (XdgAppDir *self,
if (g_file_info_get_file_type (child_info) == G_FILE_TYPE_DIRECTORY &&
name[0] != '.' && (name_prefix == NULL || g_str_has_prefix (name, name_prefix)))
- {
- g_autoptr(GFile) child1 = g_file_get_child (dir, name);
- g_autoptr(GFile) child2 = g_file_get_child (child1, branch);
- g_autoptr(GFile) child3 = g_file_get_child (child2, arch);
- g_autoptr(GFile) active = g_file_get_child (child3, "active");
+ {
+ g_autoptr(GFile) child1 = g_file_get_child (dir, name);
+ g_autoptr(GFile) child2 = g_file_get_child (child1, branch);
+ g_autoptr(GFile) child3 = g_file_get_child (child2, arch);
+ g_autoptr(GFile) active = g_file_get_child (child3, "active");
- if (g_file_query_exists (active, cancellable))
- g_hash_table_add (hash, g_strdup (name));
- }
+ if (g_file_query_exists (active, cancellable))
+ g_hash_table_add (hash, g_strdup (name));
+ }
g_clear_object (&child_info);
}
@@ -3016,18 +3067,19 @@ xdg_app_dir_collect_deployed_refs (XdgAppDir *self,
}
ret = TRUE;
- out:
+out:
return ret;
}
gboolean
-xdg_app_dir_list_deployed (XdgAppDir *self,
- const char *ref,
- char ***deployed_checksums,
+xdg_app_dir_list_deployed (XdgAppDir *self,
+ const char *ref,
+ char ***deployed_checksums,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
gboolean ret = FALSE;
+
g_autoptr(GFile) deploy_base = NULL;
g_autoptr(GPtrArray) checksums = NULL;
GError *temp_error = NULL;
@@ -3078,11 +3130,11 @@ xdg_app_dir_list_deployed (XdgAppDir *self,
ret = TRUE;
- out:
+out:
if (ret)
{
g_ptr_array_add (checksums, NULL);
- *deployed_checksums = (char **)g_ptr_array_free (g_steal_pointer (&checksums), FALSE);
+ *deployed_checksums = (char **) g_ptr_array_free (g_steal_pointer (&checksums), FALSE);
}
return ret;
@@ -3094,6 +3146,7 @@ dir_is_locked (GFile *dir)
{
glnx_fd_close int ref_fd = -1;
struct flock lock = {0};
+
g_autoptr(GFile) reffile = NULL;
reffile = g_file_resolve_relative_path (dir, "files/.ref");
@@ -3107,21 +3160,22 @@ dir_is_locked (GFile *dir)
lock.l_len = 0;
if (fcntl (ref_fd, F_GETLK, &lock) == 0)
- return lock.l_type != F_UNLCK;
+ return lock.l_type != F_UNLCK;
}
return FALSE;
}
gboolean
-xdg_app_dir_undeploy (XdgAppDir *self,
- const char *ref,
- const char *checksum,
- gboolean force_remove,
+xdg_app_dir_undeploy (XdgAppDir *self,
+ const char *ref,
+ const char *checksum,
+ gboolean force_remove,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
gboolean ret = FALSE;
+
g_autoptr(GFile) deploy_base = NULL;
g_autoptr(GFile) checkoutdir = NULL;
g_autoptr(GFile) removed_subdir = NULL;
@@ -3199,17 +3253,17 @@ xdg_app_dir_undeploy (XdgAppDir *self,
}
ret = TRUE;
- out:
+out:
return ret;
}
gboolean
-xdg_app_dir_undeploy_all (XdgAppDir *self,
- const char *ref,
- gboolean force_remove,
- gboolean *was_deployed_out,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_undeploy_all (XdgAppDir *self,
+ const char *ref,
+ gboolean force_remove,
+ gboolean *was_deployed_out,
+ GCancellable *cancellable,
+ GError **error)
{
g_auto(GStrv) deployed = NULL;
g_autoptr(GFile) deploy_base = NULL;
@@ -3270,11 +3324,11 @@ xdg_app_dir_undeploy_all (XdgAppDir *self,
}
gboolean
-xdg_app_dir_remove_ref (XdgAppDir *self,
- const char *remote_name,
- const char *ref,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_remove_ref (XdgAppDir *self,
+ const char *remote_name,
+ const char *ref,
+ GCancellable *cancellable,
+ GError **error)
{
if (!ostree_repo_set_ref_immediate (self->repo, remote_name, ref, NULL, cancellable, error))
return FALSE;
@@ -3283,11 +3337,12 @@ xdg_app_dir_remove_ref (XdgAppDir *self,
}
gboolean
-xdg_app_dir_cleanup_removed (XdgAppDir *self,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_cleanup_removed (XdgAppDir *self,
+ GCancellable *cancellable,
+ GError **error)
{
gboolean ret = FALSE;
+
g_autoptr(GFile) removed_dir = NULL;
g_autoptr(GFileEnumerator) dir_enum = NULL;
g_autoptr(GFileInfo) child_info = NULL;
@@ -3310,15 +3365,15 @@ xdg_app_dir_cleanup_removed (XdgAppDir *self,
g_autoptr(GFile) child = g_file_get_child (removed_dir, name);
if (g_file_info_get_file_type (child_info) == G_FILE_TYPE_DIRECTORY &&
- !dir_is_locked (child))
- {
+ !dir_is_locked (child))
+ {
GError *tmp_error = NULL;
if (!gs_shutil_rm_rf (child, cancellable, &tmp_error))
{
g_warning ("Unable to remove old checkout: %s\n", tmp_error->message);
g_error_free (tmp_error);
}
- }
+ }
g_clear_object (&child_info);
}
@@ -3330,15 +3385,15 @@ xdg_app_dir_cleanup_removed (XdgAppDir *self,
}
ret = TRUE;
- out:
+out:
return ret;
}
gboolean
-xdg_app_dir_prune (XdgAppDir *self,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_prune (XdgAppDir *self,
+ GCancellable *cancellable,
+ GError **error)
{
gboolean ret = FALSE;
gint objects_total, objects_pruned;
@@ -3361,16 +3416,16 @@ xdg_app_dir_prune (XdgAppDir *self,
g_debug ("Pruned %d/%d objects, size %s", objects_total, objects_pruned, formatted_freed_size);
ret = TRUE;
- out:
+out:
return ret;
}
GFile *
-xdg_app_dir_get_if_deployed (XdgAppDir *self,
- const char *ref,
- const char *checksum,
- GCancellable *cancellable)
+xdg_app_dir_get_if_deployed (XdgAppDir *self,
+ const char *ref,
+ const char *checksum,
+ GCancellable *cancellable)
{
g_autoptr(GFile) deploy_base = NULL;
g_autoptr(GFile) deploy_dir = NULL;
@@ -3378,7 +3433,9 @@ xdg_app_dir_get_if_deployed (XdgAppDir *self,
deploy_base = xdg_app_dir_get_deploy_dir (self, ref);
if (checksum != NULL)
- deploy_dir = g_file_get_child (deploy_base, checksum);
+ {
+ deploy_dir = g_file_get_child (deploy_base, checksum);
+ }
else
{
g_autoptr(GFile) active_link = g_file_get_child (deploy_base, "active");
@@ -3406,11 +3463,11 @@ xdg_app_dir_get_if_deployed (XdgAppDir *self,
}
static gboolean
-xdg_app_dir_remote_fetch_summary (XdgAppDir *self,
- const char *name,
- GBytes **out_summary,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_remote_fetch_summary (XdgAppDir *self,
+ const char *name,
+ GBytes **out_summary,
+ GCancellable *cancellable,
+ GError **error)
{
/* TODO: Add in-memory cache here, also use for ostree_repo_list_refs */
if (!ostree_repo_remote_fetch_summary (self->repo, name,
@@ -3423,21 +3480,22 @@ xdg_app_dir_remote_fetch_summary (XdgAppDir *self,
}
char *
-xdg_app_dir_find_remote_ref (XdgAppDir *self,
- const char *remote,
- const char *name,
- const char *opt_branch,
- const char *opt_arch,
- gboolean app,
- gboolean runtime,
- gboolean *is_app,
- GCancellable *cancellable,
- GError **error)
+xdg_app_dir_find_remote_ref (XdgAppDir *self,
+ const char *remote,
+ const char *name,
+ const char *opt_branch,
+ const char *opt_arch,
+ gboolean app,
+ gboolean runtime,
+ gboolean *is_app,
+ GCancellable *cancellable,
+ GError **error)
{
g_autofree char *app_ref = NULL;
g_autofree char *runtime_ref = NULL;
g_autofree char *app_ref_with_remote = NULL;
g_autofree char *runtime_ref_with_remote = NULL;
+
g_autoptr(GVariant) summary = NULL;
g_autoptr(GVariant) refs = NULL;
g_autoptr(GBytes) summary_bytes = NULL;
@@ -3517,14 +3575,14 @@ xdg_app_dir_find_remote_ref (XdgAppDir *self,
}
char *
-xdg_app_dir_find_installed_ref (XdgAppDir *self,
- const char *name,
- const char *opt_branch,
- const char *opt_arch,
- gboolean app,
- gboolean runtime,
- gboolean *is_app,
- GError **error)
+xdg_app_dir_find_installed_ref (XdgAppDir *self,
+ const char *name,
+ const char *opt_branch,
+ const char *opt_arch,
+ gboolean app,
+ gboolean runtime,
+ gboolean *is_app,
+ GError **error)
{
if (app)
{
@@ -3568,13 +3626,13 @@ xdg_app_dir_find_installed_ref (XdgAppDir *self,
return NULL;
}
-XdgAppDir*
+XdgAppDir *
xdg_app_dir_new (GFile *path, gboolean user)
{
return g_object_new (XDG_APP_TYPE_DIR, "path", path, "user", user, NULL);
}
-XdgAppDir*
+XdgAppDir *
xdg_app_dir_clone (XdgAppDir *self)
{
return xdg_app_dir_new (self->basedir, self->user);
@@ -3588,7 +3646,7 @@ xdg_app_dir_get_system (void)
}
XdgAppDir *
-xdg_app_dir_get_user (void)
+xdg_app_dir_get_user (void)
{
g_autoptr(GFile) path = xdg_app_get_user_base_dir_location ();
return xdg_app_dir_new (path, TRUE);
@@ -3610,7 +3668,7 @@ get_group (const char *remote_name)
}
char *
-xdg_app_dir_get_remote_title (XdgAppDir *self,
+xdg_app_dir_get_remote_title (XdgAppDir *self,
const char *remote_name)
{
GKeyFile *config = ostree_repo_get_config (self->repo);
@@ -3623,7 +3681,7 @@ xdg_app_dir_get_remote_title (XdgAppDir *self,
}
int
-xdg_app_dir_get_remote_prio (XdgAppDir *self,
+xdg_app_dir_get_remote_prio (XdgAppDir *self,
const char *remote_name)
{
GKeyFile *config = ostree_repo_get_config (self->repo);
@@ -3636,7 +3694,7 @@ xdg_app_dir_get_remote_prio (XdgAppDir *self,
}
gboolean
-xdg_app_dir_get_remote_noenumerate (XdgAppDir *self,
+xdg_app_dir_get_remote_noenumerate (XdgAppDir *self,
const char *remote_name)
{
GKeyFile *config = ostree_repo_get_config (self->repo);
@@ -3649,7 +3707,7 @@ xdg_app_dir_get_remote_noenumerate (XdgAppDir *self,
}
gboolean
-xdg_app_dir_get_remote_disabled (XdgAppDir *self,
+xdg_app_dir_get_remote_disabled (XdgAppDir *self,
const char *remote_name)
{
GKeyFile *config = ostree_repo_get_config (self->repo);
@@ -3662,13 +3720,13 @@ xdg_app_dir_get_remote_disabled (XdgAppDir *self,
}
gint
-cmp_remote (gconstpointer a,
- gconstpointer b,
- gpointer user_data)
+cmp_remote (gconstpointer a,
+ gconstpointer b,
+ gpointer user_data)
{
XdgAppDir *self = user_data;
- const char *a_name = *(const char **)a;
- const char *b_name = *(const char **)b;
+ const char *a_name = *(const char **) a;
+ const char *b_name = *(const char **) b;
int prio_a, prio_b;
prio_a = xdg_app_dir_get_remote_prio (self, a_name);
@@ -3678,15 +3736,16 @@ cmp_remote (gconstpointer a,
}
char *
-xdg_app_dir_create_origin_remote (XdgAppDir *self,
- const char *url,
- const char *id,
- const char *title,
- GBytes *gpg_data,
+xdg_app_dir_create_origin_remote (XdgAppDir *self,
+ const char *url,
+ const char *id,
+ const char *title,
+ GBytes *gpg_data,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
g_autofree char *remote = NULL;
+
g_auto(GStrv) remotes = NULL;
int version = 0;
g_autoptr(GVariantBuilder) optbuilder = g_variant_builder_new (G_VARIANT_TYPE ("a{sv}"));
@@ -3745,9 +3804,9 @@ xdg_app_dir_create_origin_remote (XdgAppDir *self,
char **
-xdg_app_dir_list_remotes (XdgAppDir *self,
+xdg_app_dir_list_remotes (XdgAppDir *self,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
char **res;
@@ -3765,20 +3824,21 @@ xdg_app_dir_list_remotes (XdgAppDir *self,
}
static gboolean
-remove_unless_in_hash (gpointer key,
- gpointer value,
- gpointer user_data)
+remove_unless_in_hash (gpointer key,
+ gpointer value,
+ gpointer user_data)
{
GHashTable *table = user_data;
+
return !g_hash_table_contains (table, key);
}
gboolean
-xdg_app_dir_list_remote_refs (XdgAppDir *self,
- const char *remote,
- GHashTable **refs,
+xdg_app_dir_list_remote_refs (XdgAppDir *self,
+ const char *remote,
+ GHashTable **refs,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
g_autoptr(GError) my_error = NULL;
@@ -3804,7 +3864,7 @@ xdg_app_dir_list_remote_refs (XdgAppDir *self,
* available refs */
if (!ostree_repo_list_refs (self->repo, refspec_prefix, &local_refs,
- cancellable, error))
+ cancellable, error))
return FALSE;
/* First we need to unprefix the remote name from the local refs */
@@ -3828,10 +3888,10 @@ xdg_app_dir_list_remote_refs (XdgAppDir *self,
}
char *
-xdg_app_dir_fetch_remote_title (XdgAppDir *self,
- const char *remote,
+xdg_app_dir_fetch_remote_title (XdgAppDir *self,
+ const char *remote,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
g_autoptr(GError) my_error = NULL;
g_autoptr(GBytes) summary_bytes = NULL;
@@ -3904,19 +3964,20 @@ ensure_soup_session (XdgAppDir *self)
}
if (g_getenv ("OSTREE_DEBUG_HTTP"))
- soup_session_add_feature (soup_session, (SoupSessionFeature*)soup_logger_new (SOUP_LOGGER_LOG_BODY, 500));
+ soup_session_add_feature (soup_session, (SoupSessionFeature *) soup_logger_new (SOUP_LOGGER_LOG_BODY, 500));
g_once_init_leave (&self->soup_session, soup_session);
}
}
static GBytes *
-xdg_app_dir_load_uri (XdgAppDir *self,
- const char *uri,
+xdg_app_dir_load_uri (XdgAppDir *self,
+ const char *uri,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
g_autofree char *scheme = NULL;
+
g_autoptr(GBytes) bytes = NULL;
scheme = g_uri_parse_scheme (uri);
@@ -3955,6 +4016,7 @@ xdg_app_dir_load_uri (XdgAppDir *self,
case 410:
code = G_IO_ERROR_NOT_FOUND;
break;
+
default:
code = G_IO_ERROR_FAILED;
}
@@ -3981,17 +4043,18 @@ xdg_app_dir_load_uri (XdgAppDir *self,
}
GBytes *
-xdg_app_dir_fetch_remote_object (XdgAppDir *self,
- const char *remote_name,
- const char *checksum,
- const char *type,
+xdg_app_dir_fetch_remote_object (XdgAppDir *self,
+ const char *remote_name,
+ const char *checksum,
+ const char *type,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
g_autofree char *base_url = NULL;
g_autofree char *object_url = NULL;
g_autofree char *part1 = NULL;
g_autofree char *part2 = NULL;
+
g_autoptr(GBytes) bytes = NULL;
if (!ostree_repo_remote_get_url (self->repo, remote_name, &base_url, error))
@@ -4066,30 +4129,28 @@ xdg_app_dir_fetch_ref_cache (XdgAppDir *self,
{
guint64 v;
g_variant_get_child (res, 0, "t", &v);
- *installed_size = GUINT64_FROM_BE(v);
+ *installed_size = GUINT64_FROM_BE (v);
}
if (download_size)
{
guint64 v;
g_variant_get_child (res, 1, "t", &v);
- *download_size = GUINT64_FROM_BE(v);
+ *download_size = GUINT64_FROM_BE (v);
}
if (metadata)
- {
- g_variant_get_child (res, 2, "s", metadata);
- }
+ g_variant_get_child (res, 2, "s", metadata);
return TRUE;
}
GBytes *
-xdg_app_dir_fetch_metadata (XdgAppDir *self,
- const char *remote_name,
- const char *commit,
+xdg_app_dir_fetch_metadata (XdgAppDir *self,
+ const char *remote_name,
+ const char *commit,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
g_autoptr(GBytes) commit_bytes = NULL;
g_autoptr(GBytes) root_bytes = NULL;
@@ -4161,8 +4222,8 @@ xdg_app_dir_fetch_metadata (XdgAppDir *self,
}
filez_bytes = xdg_app_dir_fetch_remote_object (self, remote_name,
- file_checksum, "filez",
- cancellable, error);
+ file_checksum, "filez",
+ cancellable, error);
if (filez_bytes == NULL)
return NULL;
@@ -4174,7 +4235,7 @@ xdg_app_dir_fetch_metadata (XdgAppDir *self,
return NULL;
}
- archive_header_size = GUINT32_FROM_BE (*(guint32 *)filez_data);
+ archive_header_size = GUINT32_FROM_BE (*(guint32 *) filez_data);
archive_header_size += 4 + 4; /* Include header-size and padding */
@@ -4182,18 +4243,18 @@ xdg_app_dir_fetch_metadata (XdgAppDir *self,
{
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
"File header size %u exceeds file size",
- (guint)archive_header_size);
+ (guint) archive_header_size);
return NULL;
}
- dataz_stream = (GMemoryInputStream*)g_memory_input_stream_new_from_data (filez_data + archive_header_size,
- g_bytes_get_size (filez_bytes) - archive_header_size,
- NULL);
+ dataz_stream = (GMemoryInputStream *) g_memory_input_stream_new_from_data (filez_data + archive_header_size,
+ g_bytes_get_size (filez_bytes) - archive_header_size,
+ NULL);
- zlib_decomp = (GConverter*)g_zlib_decompressor_new (G_ZLIB_COMPRESSOR_FORMAT_RAW);
+ zlib_decomp = (GConverter *) g_zlib_decompressor_new (G_ZLIB_COMPRESSOR_FORMAT_RAW);
zlib_input = g_converter_input_stream_new (G_INPUT_STREAM (dataz_stream), zlib_decomp);
- data_stream = (GMemoryOutputStream*)g_memory_output_stream_new (NULL, 0, g_realloc, g_free);
+ data_stream = (GMemoryOutputStream *) g_memory_output_stream_new (NULL, 0, g_realloc, g_free);
if (g_output_stream_splice (G_OUTPUT_STREAM (data_stream), zlib_input,
G_OUTPUT_STREAM_SPLICE_CLOSE_SOURCE | G_OUTPUT_STREAM_SPLICE_CLOSE_TARGET,
diff --git a/common/xdg-app-dir.h b/common/xdg-app-dir.h
index ccca522..bb7c1b4 100644
--- a/common/xdg-app-dir.h
+++ b/common/xdg-app-dir.h
@@ -26,21 +26,21 @@
#include "libglnx/libglnx.h"
#include <xdg-app-common-types.h>
-#define XDG_APP_TYPE_DIR xdg_app_dir_get_type()
+#define XDG_APP_TYPE_DIR xdg_app_dir_get_type ()
#define XDG_APP_DIR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), XDG_APP_TYPE_DIR, XdgAppDir))
#define XDG_APP_IS_DIR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), XDG_APP_TYPE_DIR))
-#define XDG_APP_TYPE_DEPLOY xdg_app_deploy_get_type()
+#define XDG_APP_TYPE_DEPLOY xdg_app_deploy_get_type ()
#define XDG_APP_DEPLOY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), XDG_APP_TYPE_DEPLOY, XdgAppDeploy))
#define XDG_APP_IS_DEPLOY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), XDG_APP_TYPE_DEPLOY))
GType xdg_app_dir_get_type (void);
GType xdg_app_deploy_get_type (void);
-G_DEFINE_AUTOPTR_CLEANUP_FUNC(XdgAppDir, g_object_unref)
-G_DEFINE_AUTOPTR_CLEANUP_FUNC(XdgAppDeploy, g_object_unref)
+G_DEFINE_AUTOPTR_CLEANUP_FUNC (XdgAppDir, g_object_unref)
+G_DEFINE_AUTOPTR_CLEANUP_FUNC (XdgAppDeploy, g_object_unref)
-#define XDG_APP_DIR_ERROR xdg_app_dir_error_quark()
+#define XDG_APP_DIR_ERROR xdg_app_dir_error_quark ()
typedef enum {
XDG_APP_DIR_ERROR_ALREADY_DEPLOYED,
@@ -50,12 +50,12 @@ typedef enum {
typedef enum {
XDG_APP_HELPER_DEPLOY_FLAGS_NONE = 0,
- XDG_APP_HELPER_DEPLOY_FLAGS_UPDATE = 1<<0,
+ XDG_APP_HELPER_DEPLOY_FLAGS_UPDATE = 1 << 0,
} XdgAppHelperDeployFlags;
#define XDG_APP_HELPER_DEPLOY_FLAGS_ALL (XDG_APP_HELPER_DEPLOY_FLAGS_UPDATE)
-GQuark xdg_app_dir_error_quark (void);
+GQuark xdg_app_dir_error_quark (void);
/**
* XDG_APP_DEPLOY_DATA_GVARIANT_FORMAT:
@@ -70,284 +70,284 @@ GQuark xdg_app_dir_error_quark (void);
#define XDG_APP_DEPLOY_DATA_GVARIANT_FORMAT G_VARIANT_TYPE (XDG_APP_DEPLOY_DATA_GVARIANT_STRING)
GFile * xdg_app_get_system_base_dir_location (void);
-GFile * xdg_app_get_user_base_dir_location (void);
+GFile * xdg_app_get_user_base_dir_location (void);
-GKeyFile * xdg_app_load_override_keyfile (const char *app_id,
- gboolean user,
- GError **error);
-XdgAppContext *xdg_app_load_override_file (const char *app_id,
- gboolean user,
- GError **error);
-gboolean xdg_app_save_override_keyfile (GKeyFile *metakey,
- const char *app_id,
- gboolean user,
- GError **error);
+GKeyFile * xdg_app_load_override_keyfile (const char *app_id,
+ gboolean user,
+ GError **error);
+XdgAppContext *xdg_app_load_override_file (const char *app_id,
+ gboolean user,
+ GError **error);
+gboolean xdg_app_save_override_keyfile (GKeyFile *metakey,
+ const char *app_id,
+ gboolean user,
+ GError **error);
-const char * xdg_app_deploy_data_get_origin (GVariant *deploy_data);
-const char * xdg_app_deploy_data_get_commit (GVariant *deploy_data);
-const char ** xdg_app_deploy_data_get_subpaths (GVariant *deploy_data);
+const char * xdg_app_deploy_data_get_origin (GVariant *deploy_data);
+const char * xdg_app_deploy_data_get_commit (GVariant *deploy_data);
+const char ** xdg_app_deploy_data_get_subpaths (GVariant *deploy_data);
guint64 xdg_app_deploy_data_get_installed_size (GVariant *deploy_data);
-GFile * xdg_app_deploy_get_dir (XdgAppDeploy *deploy);
-GFile * xdg_app_deploy_get_files (XdgAppDeploy *deploy);
+GFile * xdg_app_deploy_get_dir (XdgAppDeploy *deploy);
+GFile * xdg_app_deploy_get_files (XdgAppDeploy *deploy);
XdgAppContext *xdg_app_deploy_get_overrides (XdgAppDeploy *deploy);
-GKeyFile * xdg_app_deploy_get_metadata (XdgAppDeploy *deploy);
+GKeyFile * xdg_app_deploy_get_metadata (XdgAppDeploy *deploy);
-XdgAppDir* xdg_app_dir_new (GFile *basedir,
- gboolean user);
-XdgAppDir* xdg_app_dir_clone (XdgAppDir *self);
-XdgAppDir *xdg_app_dir_get (gboolean user);
-XdgAppDir *xdg_app_dir_get_system (void);
-XdgAppDir *xdg_app_dir_get_user (void);
-gboolean xdg_app_dir_is_user (XdgAppDir *self);
-GFile * xdg_app_dir_get_path (XdgAppDir *self);
-GFile * xdg_app_dir_get_changed_path (XdgAppDir *self);
-GFile * xdg_app_dir_get_deploy_dir (XdgAppDir *self,
- const char *ref);
-GVariant * xdg_app_dir_get_deploy_data (XdgAppDir *dir,
- const char *ref,
- GCancellable *cancellable,
- GError **error);
-char * xdg_app_dir_get_origin (XdgAppDir *self,
- const char *ref,
- GCancellable *cancellable,
- GError **error);
-char ** xdg_app_dir_get_subpaths (XdgAppDir *self,
- const char *ref,
- GCancellable *cancellable,
- GError **error);
-GFile * xdg_app_dir_get_exports_dir (XdgAppDir *self);
-GFile * xdg_app_dir_get_removed_dir (XdgAppDir *self);
-GFile * xdg_app_dir_get_if_deployed (XdgAppDir *self,
- const char *ref,
- const char *checksum,
- GCancellable *cancellable);
-char * xdg_app_dir_find_remote_ref (XdgAppDir *self,
- const char *remote,
- const char *name,
- const char *opt_branch,
- const char *opt_arch,
- gboolean app,
- gboolean runtime,
- gboolean *is_app,
- GCancellable *cancellable,
- GError **error);
-char * xdg_app_dir_find_installed_ref (XdgAppDir *self,
- const char *name,
- const char *opt_branch,
- const char *opt_arch,
- gboolean app,
- gboolean runtime,
- gboolean *is_app,
- GError **error);
-XdgAppDeploy *xdg_app_dir_load_deployed (XdgAppDir *self,
- const char *ref,
- const char *checksum,
- GCancellable *cancellable,
- GError **error);
-char * xdg_app_dir_load_override (XdgAppDir *dir,
- const char *app_id,
- gsize *length,
- GError **error);
-OstreeRepo *xdg_app_dir_get_repo (XdgAppDir *self);
-gboolean xdg_app_dir_ensure_path (XdgAppDir *self,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_use_child_repo (XdgAppDir *self);
+XdgAppDir * xdg_app_dir_new (GFile *basedir,
+ gboolean user);
+XdgAppDir * xdg_app_dir_clone (XdgAppDir *self);
+XdgAppDir *xdg_app_dir_get (gboolean user);
+XdgAppDir *xdg_app_dir_get_system (void);
+XdgAppDir *xdg_app_dir_get_user (void);
+gboolean xdg_app_dir_is_user (XdgAppDir *self);
+GFile * xdg_app_dir_get_path (XdgAppDir *self);
+GFile * xdg_app_dir_get_changed_path (XdgAppDir *self);
+GFile * xdg_app_dir_get_deploy_dir (XdgAppDir *self,
+ const char *ref);
+GVariant * xdg_app_dir_get_deploy_data (XdgAppDir *dir,
+ const char *ref,
+ GCancellable *cancellable,
+ GError **error);
+char * xdg_app_dir_get_origin (XdgAppDir *self,
+ const char *ref,
+ GCancellable *cancellable,
+ GError **error);
+char ** xdg_app_dir_get_subpaths (XdgAppDir *self,
+ const char *ref,
+ GCancellable *cancellable,
+ GError **error);
+GFile * xdg_app_dir_get_exports_dir (XdgAppDir *self);
+GFile * xdg_app_dir_get_removed_dir (XdgAppDir *self);
+GFile * xdg_app_dir_get_if_deployed (XdgAppDir *self,
+ const char *ref,
+ const char *checksum,
+ GCancellable *cancellable);
+char * xdg_app_dir_find_remote_ref (XdgAppDir *self,
+ const char *remote,
+ const char *name,
+ const char *opt_branch,
+ const char *opt_arch,
+ gboolean app,
+ gboolean runtime,
+ gboolean *is_app,
+ GCancellable *cancellable,
+ GError **error);
+char * xdg_app_dir_find_installed_ref (XdgAppDir *self,
+ const char *name,
+ const char *opt_branch,
+ const char *opt_arch,
+ gboolean app,
+ gboolean runtime,
+ gboolean *is_app,
+ GError **error);
+XdgAppDeploy *xdg_app_dir_load_deployed (XdgAppDir *self,
+ const char *ref,
+ const char *checksum,
+ GCancellable *cancellable,
+ GError **error);
+char * xdg_app_dir_load_override (XdgAppDir *dir,
+ const char *app_id,
+ gsize *length,
+ GError **error);
+OstreeRepo *xdg_app_dir_get_repo (XdgAppDir *self);
+gboolean xdg_app_dir_ensure_path (XdgAppDir *self,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_use_child_repo (XdgAppDir *self);
gboolean xdg_app_dir_ensure_system_child_repo (XdgAppDir *self,
- GError **error);
-gboolean xdg_app_dir_ensure_repo (XdgAppDir *self,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_mark_changed (XdgAppDir *self,
- GError **error);
-gboolean xdg_app_dir_remove_appstream(XdgAppDir *self,
- const char *remote,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_update_appstream(XdgAppDir *self,
- const char *remote,
- const char *arch,
- gboolean *out_changed,
- OstreeAsyncProgress *progress,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_pull (XdgAppDir *self,
- const char *repository,
- const char *ref,
- char **subpaths,
- OstreeRepo *repo,
- OstreeRepoPullFlags flags,
- OstreeAsyncProgress *progress,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_pull_untrusted_local (XdgAppDir *self,
- const char *src_path,
- const char *remote_name,
- const char *ref,
- char **subpaths,
+ GError **error);
+gboolean xdg_app_dir_ensure_repo (XdgAppDir *self,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_mark_changed (XdgAppDir *self,
+ GError **error);
+gboolean xdg_app_dir_remove_appstream (XdgAppDir *self,
+ const char *remote,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_update_appstream (XdgAppDir *self,
+ const char *remote,
+ const char *arch,
+ gboolean *out_changed,
+ OstreeAsyncProgress *progress,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_pull (XdgAppDir *self,
+ const char *repository,
+ const char *ref,
+ char **subpaths,
+ OstreeRepo *repo,
+ OstreeRepoPullFlags flags,
+ OstreeAsyncProgress *progress,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_pull_untrusted_local (XdgAppDir *self,
+ const char *src_path,
+ const char *remote_name,
+ const char *ref,
+ char **subpaths,
OstreeAsyncProgress *progress,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_list_refs_for_name (XdgAppDir *self,
- const char *kind,
- const char *name,
- char ***refs,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_list_refs (XdgAppDir *self,
- const char *kind,
- char ***refs,
- GCancellable *cancellable,
- GError **error);
-char * xdg_app_dir_read_latest (XdgAppDir *self,
- const char *remote,
- const char *ref,
- GCancellable *cancellable,
- GError **error);
-char * xdg_app_dir_read_active (XdgAppDir *self,
- const char *ref,
- GCancellable *cancellable);
-gboolean xdg_app_dir_set_active (XdgAppDir *self,
- const char *ref,
- const char *checksum,
- GCancellable *cancellable,
- GError **error);
-char * xdg_app_dir_current_ref (XdgAppDir *self,
- const char *name,
- GCancellable *cancellable);
-gboolean xdg_app_dir_drop_current_ref (XdgAppDir *self,
- const char *name,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_make_current_ref (XdgAppDir *self,
- const char *ref,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_list_deployed (XdgAppDir *self,
- const char *ref,
- char ***deployed_checksums,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_lock (XdgAppDir *self,
- GLnxLockFile *lockfile,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_deploy (XdgAppDir *self,
- const char *origin,
- const char *ref,
- const char *checksum_or_latest,
- const char * const * subpaths,
- GVariant *old_deploy_data,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_deploy_update (XdgAppDir *self,
- const char *ref,
- const char *checksum,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_deploy_install (XdgAppDir *self,
- const char *ref,
- const char *origin,
- char **subpaths,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_install (XdgAppDir *self,
- gboolean no_pull,
- gboolean no_deploy,
- const char *ref,
- const char *remote_name,
- char **subpaths,
- OstreeAsyncProgress *progress,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_update (XdgAppDir *self,
- gboolean no_pull,
- gboolean no_deploy,
- const char *ref,
- const char *remote_name,
- const char *checksum_or_latest,
- char **subpaths,
- OstreeAsyncProgress *progress,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_undeploy (XdgAppDir *self,
- const char *ref,
- const char *checksum,
- gboolean force_remove,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_undeploy_all (XdgAppDir *self,
- const char *ref,
- gboolean force_remove,
- gboolean *was_deployed_out,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_remove_all_refs (XdgAppDir *self,
- const char *remote,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_remove_ref (XdgAppDir *self,
- const char *remote_name,
- const char *ref,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_update_exports (XdgAppDir *self,
- const char *app,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_prune (XdgAppDir *self,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_cleanup_removed (XdgAppDir *self,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_dir_collect_deployed_refs (XdgAppDir *self,
- const char *type,
- const char *name_prefix,
- const char *branch,
- const char *arch,
- GHashTable *hash,
- GCancellable *cancellable,
- GError **error);
-char *xdg_app_dir_create_origin_remote (XdgAppDir *self,
- const char *url,
- const char *id,
- const char *title,
- GBytes *gpg_data,
- GCancellable *cancellable,
- GError **error);
-char **xdg_app_dir_list_remotes (XdgAppDir *self,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_list_refs_for_name (XdgAppDir *self,
+ const char *kind,
+ const char *name,
+ char ***refs,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_list_refs (XdgAppDir *self,
+ const char *kind,
+ char ***refs,
+ GCancellable *cancellable,
+ GError **error);
+char * xdg_app_dir_read_latest (XdgAppDir *self,
+ const char *remote,
+ const char *ref,
+ GCancellable *cancellable,
+ GError **error);
+char * xdg_app_dir_read_active (XdgAppDir *self,
+ const char *ref,
+ GCancellable *cancellable);
+gboolean xdg_app_dir_set_active (XdgAppDir *self,
+ const char *ref,
+ const char *checksum,
+ GCancellable *cancellable,
+ GError **error);
+char * xdg_app_dir_current_ref (XdgAppDir *self,
+ const char *name,
+ GCancellable *cancellable);
+gboolean xdg_app_dir_drop_current_ref (XdgAppDir *self,
+ const char *name,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_make_current_ref (XdgAppDir *self,
+ const char *ref,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_list_deployed (XdgAppDir *self,
+ const char *ref,
+ char ***deployed_checksums,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_lock (XdgAppDir *self,
+ GLnxLockFile *lockfile,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_deploy (XdgAppDir *self,
+ const char *origin,
+ const char *ref,
+ const char *checksum_or_latest,
+ const char * const * subpaths,
+ GVariant *old_deploy_data,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_deploy_update (XdgAppDir *self,
+ const char *ref,
+ const char *checksum,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_deploy_install (XdgAppDir *self,
+ const char *ref,
+ const char *origin,
+ char **subpaths,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_install (XdgAppDir *self,
+ gboolean no_pull,
+ gboolean no_deploy,
+ const char *ref,
+ const char *remote_name,
+ char **subpaths,
+ OstreeAsyncProgress *progress,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_update (XdgAppDir *self,
+ gboolean no_pull,
+ gboolean no_deploy,
+ const char *ref,
+ const char *remote_name,
+ const char *checksum_or_latest,
+ char **subpaths,
+ OstreeAsyncProgress *progress,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_undeploy (XdgAppDir *self,
+ const char *ref,
+ const char *checksum,
+ gboolean force_remove,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_undeploy_all (XdgAppDir *self,
+ const char *ref,
+ gboolean force_remove,
+ gboolean *was_deployed_out,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_remove_all_refs (XdgAppDir *self,
+ const char *remote,
GCancellable *cancellable,
- GError **error);
-char *xdg_app_dir_get_remote_title (XdgAppDir *self,
- const char *remote_name);
-int xdg_app_dir_get_remote_prio (XdgAppDir *self,
+ GError **error);
+gboolean xdg_app_dir_remove_ref (XdgAppDir *self,
+ const char *remote_name,
+ const char *ref,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_update_exports (XdgAppDir *self,
+ const char *app,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_prune (XdgAppDir *self,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_cleanup_removed (XdgAppDir *self,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_dir_collect_deployed_refs (XdgAppDir *self,
+ const char *type,
+ const char *name_prefix,
+ const char *branch,
+ const char *arch,
+ GHashTable *hash,
+ GCancellable *cancellable,
+ GError **error);
+char *xdg_app_dir_create_origin_remote (XdgAppDir *self,
+ const char *url,
+ const char *id,
+ const char *title,
+ GBytes *gpg_data,
+ GCancellable *cancellable,
+ GError **error);
+char **xdg_app_dir_list_remotes (XdgAppDir *self,
+ GCancellable *cancellable,
+ GError **error);
+char *xdg_app_dir_get_remote_title (XdgAppDir *self,
const char *remote_name);
-gboolean xdg_app_dir_get_remote_noenumerate (XdgAppDir *self,
+int xdg_app_dir_get_remote_prio (XdgAppDir *self,
+ const char *remote_name);
+gboolean xdg_app_dir_get_remote_noenumerate (XdgAppDir *self,
const char *remote_name);
-gboolean xdg_app_dir_get_remote_disabled (XdgAppDir *self,
+gboolean xdg_app_dir_get_remote_disabled (XdgAppDir *self,
const char *remote_name);
-gboolean xdg_app_dir_list_remote_refs (XdgAppDir *self,
- const char *remote,
- GHashTable **refs,
+gboolean xdg_app_dir_list_remote_refs (XdgAppDir *self,
+ const char *remote,
+ GHashTable **refs,
GCancellable *cancellable,
- GError **error);
-char * xdg_app_dir_fetch_remote_title (XdgAppDir *self,
- const char *remote,
+ GError **error);
+char * xdg_app_dir_fetch_remote_title (XdgAppDir *self,
+ const char *remote,
GCancellable *cancellable,
- GError **error);
-GBytes * xdg_app_dir_fetch_remote_object (XdgAppDir *self,
- const char *remote,
- const char *checksum,
- const char *type,
- GCancellable *cancellable,
- GError **error);
-GBytes * xdg_app_dir_fetch_metadata (XdgAppDir *self,
- const char *remote_name,
- const char *commit,
+ GError **error);
+GBytes * xdg_app_dir_fetch_remote_object (XdgAppDir *self,
+ const char *remote,
+ const char *checksum,
+ const char *type,
GCancellable *cancellable,
- GError **error);
+ GError **error);
+GBytes * xdg_app_dir_fetch_metadata (XdgAppDir *self,
+ const char *remote_name,
+ const char *commit,
+ GCancellable *cancellable,
+ GError **error);
gboolean xdg_app_dir_fetch_ref_cache (XdgAppDir *self,
const char *remote_name,
const char *ref,
diff --git a/common/xdg-app-portal-error.h b/common/xdg-app-portal-error.h
index 1dd1c2f..00e6b89 100644
--- a/common/xdg-app-portal-error.h
+++ b/common/xdg-app-portal-error.h
@@ -40,9 +40,9 @@ typedef enum {
} XdgAppErrorEnum;
-#define XDG_APP_PORTAL_ERROR xdg_app_portal_error_quark()
+#define XDG_APP_PORTAL_ERROR xdg_app_portal_error_quark ()
-XDG_APP_EXTERN GQuark xdg_app_portal_error_quark (void);
+XDG_APP_EXTERN GQuark xdg_app_portal_error_quark (void);
G_END_DECLS
diff --git a/common/xdg-app-run.c b/common/xdg-app-run.c
index 38c4126..44d5a14 100644
--- a/common/xdg-app-run.c
+++ b/common/xdg-app-run.c
@@ -98,18 +98,19 @@ static const char *xdg_app_context_devices[] = {
NULL
};
-struct XdgAppContext {
- XdgAppContextShares shares;
- XdgAppContextShares shares_valid;
+struct XdgAppContext
+{
+ XdgAppContextShares shares;
+ XdgAppContextShares shares_valid;
XdgAppContextSockets sockets;
XdgAppContextSockets sockets_valid;
XdgAppContextDevices devices;
XdgAppContextDevices devices_valid;
- GHashTable *env_vars;
- GHashTable *persistent;
- GHashTable *filesystems;
- GHashTable *session_bus_policy;
- GHashTable *system_bus_policy;
+ GHashTable *env_vars;
+ GHashTable *persistent;
+ GHashTable *filesystems;
+ GHashTable *session_bus_policy;
+ GHashTable *system_bus_policy;
};
XdgAppContext *
@@ -174,7 +175,7 @@ xdg_app_context_bitmask_to_string (guint32 enabled, guint32 valid, const char **
}
g_ptr_array_add (array, NULL);
- return (char **)g_ptr_array_free (array, FALSE);
+ return (char **) g_ptr_array_free (array, FALSE);
}
static XdgAppContextShares
@@ -236,7 +237,9 @@ xdg_app_verify_dbus_name (const char *name, GError **error)
name_part = tmp;
}
else
- name_part = name;
+ {
+ name_part = name;
+ }
if (g_dbus_is_name (name_part) && !g_dbus_is_unique_name (name_part))
return TRUE;
@@ -280,86 +283,86 @@ xdg_app_context_devices_to_string (XdgAppContextDevices devices, XdgAppContextDe
}
static void
-xdg_app_context_add_shares (XdgAppContext *context,
- XdgAppContextShares shares)
+xdg_app_context_add_shares (XdgAppContext *context,
+ XdgAppContextShares shares)
{
context->shares_valid |= shares;
context->shares |= shares;
}
static void
-xdg_app_context_remove_shares (XdgAppContext *context,
- XdgAppContextShares shares)
+xdg_app_context_remove_shares (XdgAppContext *context,
+ XdgAppContextShares shares)
{
context->shares_valid |= shares;
context->shares &= ~shares;
}
static void
-xdg_app_context_add_sockets (XdgAppContext *context,
- XdgAppContextSockets sockets)
+xdg_app_context_add_sockets (XdgAppContext *context,
+ XdgAppContextSockets sockets)
{
context->sockets_valid |= sockets;
context->sockets |= sockets;
}
static void
-xdg_app_context_remove_sockets (XdgAppContext *context,
- XdgAppContextSockets sockets)
+xdg_app_context_remove_sockets (XdgAppContext *context,
+ XdgAppContextSockets sockets)
{
context->sockets_valid |= sockets;
context->sockets &= ~sockets;
}
static void
-xdg_app_context_add_devices (XdgAppContext *context,
- XdgAppContextDevices devices)
+xdg_app_context_add_devices (XdgAppContext *context,
+ XdgAppContextDevices devices)
{
context->devices_valid |= devices;
context->devices |= devices;
}
static void
-xdg_app_context_remove_devices (XdgAppContext *context,
- XdgAppContextDevices devices)
+xdg_app_context_remove_devices (XdgAppContext *context,
+ XdgAppContextDevices devices)
{
context->devices_valid |= devices;
context->devices &= ~devices;
}
static void
-xdg_app_context_set_env_var (XdgAppContext *context,
- const char *name,
- const char *value)
+xdg_app_context_set_env_var (XdgAppContext *context,
+ const char *name,
+ const char *value)
{
g_hash_table_insert (context->env_vars, g_strdup (name), g_strdup (value));
}
void
-xdg_app_context_set_session_bus_policy (XdgAppContext *context,
- const char *name,
- XdgAppPolicy policy)
+xdg_app_context_set_session_bus_policy (XdgAppContext *context,
+ const char *name,
+ XdgAppPolicy policy)
{
g_hash_table_insert (context->session_bus_policy, g_strdup (name), GINT_TO_POINTER (policy));
}
void
-xdg_app_context_set_system_bus_policy (XdgAppContext *context,
- const char *name,
- XdgAppPolicy policy)
+xdg_app_context_set_system_bus_policy (XdgAppContext *context,
+ const char *name,
+ XdgAppPolicy policy)
{
g_hash_table_insert (context->system_bus_policy, g_strdup (name), GINT_TO_POINTER (policy));
}
static void
-xdg_app_context_set_persistent (XdgAppContext *context,
- const char *path)
+xdg_app_context_set_persistent (XdgAppContext *context,
+ const char *path)
{
g_hash_table_insert (context->persistent, g_strdup (path), GINT_TO_POINTER (1));
}
static gboolean
-get_user_dir_from_string (const char *filesystem,
+get_user_dir_from_string (const char *filesystem,
const char **config_key,
const char **suffix,
const char **dir)
@@ -378,7 +381,7 @@ get_user_dir_from_string (const char *filesystem,
rest = filesystem + len;
while (*rest == '/')
- rest ++;
+ rest++;
if (suffix)
*suffix = rest;
@@ -489,7 +492,7 @@ parse_filesystem_flags (const char *filesystem, XdgAppFilesystemMode *mode)
static gboolean
xdg_app_context_verify_filesystem (const char *filesystem_and_mode,
- GError **error)
+ GError **error)
{
g_autofree char *filesystem = parse_filesystem_flags (filesystem_and_mode, NULL);
@@ -510,8 +513,8 @@ xdg_app_context_verify_filesystem (const char *filesystem_and_mode,
}
static void
-xdg_app_context_add_filesystem (XdgAppContext *context,
- const char *what)
+xdg_app_context_add_filesystem (XdgAppContext *context,
+ const char *what)
{
XdgAppFilesystemMode mode;
char *fs = parse_filesystem_flags (what, &mode);
@@ -520,8 +523,8 @@ xdg_app_context_add_filesystem (XdgAppContext *context,
}
static void
-xdg_app_context_remove_filesystem (XdgAppContext *context,
- const char *what)
+xdg_app_context_remove_filesystem (XdgAppContext *context,
+ const char *what)
{
g_hash_table_insert (context->filesystems,
parse_filesystem_flags (what, NULL),
@@ -529,8 +532,8 @@ xdg_app_context_remove_filesystem (XdgAppContext *context,
}
void
-xdg_app_context_merge (XdgAppContext *context,
- XdgAppContext *other)
+xdg_app_context_merge (XdgAppContext *context,
+ XdgAppContext *other)
{
GHashTableIter iter;
gpointer key, value;
@@ -567,10 +570,10 @@ xdg_app_context_merge (XdgAppContext *context,
}
static gboolean
-option_share_cb (const gchar *option_name,
- const gchar *value,
- gpointer data,
- GError **error)
+option_share_cb (const gchar *option_name,
+ const gchar *value,
+ gpointer data,
+ GError **error)
{
XdgAppContext *context = data;
XdgAppContextShares share;
@@ -585,10 +588,10 @@ option_share_cb (const gchar *option_name,
}
static gboolean
-option_unshare_cb (const gchar *option_name,
- const gchar *value,
- gpointer data,
- GError **error)
+option_unshare_cb (const gchar *option_name,
+ const gchar *value,
+ gpointer data,
+ GError **error)
{
XdgAppContext *context = data;
XdgAppContextShares share;
@@ -603,10 +606,10 @@ option_unshare_cb (const gchar *option_name,
}
static gboolean
-option_socket_cb (const gchar *option_name,
- const gchar *value,
- gpointer data,
- GError **error)
+option_socket_cb (const gchar *option_name,
+ const gchar *value,
+ gpointer data,
+ GError **error)
{
XdgAppContext *context = data;
XdgAppContextSockets socket;
@@ -621,10 +624,10 @@ option_socket_cb (const gchar *option_name,
}
static gboolean
-option_nosocket_cb (const gchar *option_name,
- const gchar *value,
- gpointer data,
- GError **error)
+option_nosocket_cb (const gchar *option_name,
+ const gchar *value,
+ gpointer data,
+ GError **error)
{
XdgAppContext *context = data;
XdgAppContextSockets socket;
@@ -639,10 +642,10 @@ option_nosocket_cb (const gchar *option_name,
}
static gboolean
-option_device_cb (const gchar *option_name,
- const gchar *value,
- gpointer data,
- GError **error)
+option_device_cb (const gchar *option_name,
+ const gchar *value,
+ gpointer data,
+ GError **error)
{
XdgAppContext *context = data;
XdgAppContextDevices device;
@@ -657,10 +660,10 @@ option_device_cb (const gchar *option_name,
}
static gboolean
-option_nodevice_cb (const gchar *option_name,
- const gchar *value,
- gpointer data,
- GError **error)
+option_nodevice_cb (const gchar *option_name,
+ const gchar *value,
+ gpointer data,
+ GError **error)
{
XdgAppContext *context = data;
XdgAppContextDevices device;
@@ -675,10 +678,10 @@ option_nodevice_cb (const gchar *option_name,
}
static gboolean
-option_filesystem_cb (const gchar *option_name,
- const gchar *value,
- gpointer data,
- GError **error)
+option_filesystem_cb (const gchar *option_name,
+ const gchar *value,
+ gpointer data,
+ GError **error)
{
XdgAppContext *context = data;
@@ -690,10 +693,10 @@ option_filesystem_cb (const gchar *option_name,
}
static gboolean
-option_nofilesystem_cb (const gchar *option_name,
- const gchar *value,
- gpointer data,
- GError **error)
+option_nofilesystem_cb (const gchar *option_name,
+ const gchar *value,
+ gpointer data,
+ GError **error)
{
XdgAppContext *context = data;
@@ -705,12 +708,13 @@ option_nofilesystem_cb (const gchar *option_name,
}
static gboolean
-option_env_cb (const gchar *option_name,
- const gchar *value,
- gpointer data,
- GError **error)
+option_env_cb (const gchar *option_name,
+ const gchar *value,
+ gpointer data,
+ GError **error)
{
XdgAppContext *context = data;
+
g_auto(GStrv) split = g_strsplit (value, "=", 2);
if (split == NULL || split[0] == NULL || split[0][0] == 0 || split[1] == NULL)
@@ -724,10 +728,10 @@ option_env_cb (const gchar *option_name,
}
static gboolean
-option_own_name_cb (const gchar *option_name,
- const gchar *value,
- gpointer data,
- GError **error)
+option_own_name_cb (const gchar *option_name,
+ const gchar *value,
+ gpointer data,
+ GError **error)
{
XdgAppContext *context = data;
@@ -739,10 +743,10 @@ option_own_name_cb (const gchar *option_name,
}
static gboolean
-option_talk_name_cb (const gchar *option_name,
- const gchar *value,
- gpointer data,
- GError **error)
+option_talk_name_cb (const gchar *option_name,
+ const gchar *value,
+ gpointer data,
+ GError **error)
{
XdgAppContext *context = data;
@@ -754,10 +758,10 @@ option_talk_name_cb (const gchar *option_name,
}
static gboolean
-option_system_own_name_cb (const gchar *option_name,
- const gchar *value,
- gpointer data,
- GError **error)
+option_system_own_name_cb (const gchar *option_name,
+ const gchar *value,
+ gpointer data,
+ GError **error)
{
XdgAppContext *context = data;
@@ -769,10 +773,10 @@ option_system_own_name_cb (const gchar *option_name,
}
static gboolean
-option_system_talk_name_cb (const gchar *option_name,
- const gchar *value,
- gpointer data,
- GError **error)
+option_system_talk_name_cb (const gchar *option_name,
+ const gchar *value,
+ gpointer data,
+ GError **error)
{
XdgAppContext *context = data;
@@ -784,10 +788,10 @@ option_system_talk_name_cb (const gchar *option_name,
}
static gboolean
-option_persist_cb (const gchar *option_name,
- const gchar *value,
- gpointer data,
- GError **error)
+option_persist_cb (const gchar *option_name,
+ const gchar *value,
+ gpointer data,
+ GError **error)
{
XdgAppContext *context = data;
@@ -814,9 +818,9 @@ static GOptionEntry context_options[] = {
};
GOptionGroup *
-xdg_app_context_get_options (XdgAppContext *context)
+xdg_app_context_get_options (XdgAppContext *context)
{
- GOptionGroup *group;
+ GOptionGroup *group;
group = g_option_group_new ("environment",
"Runtime Environment",
@@ -838,15 +842,17 @@ parse_negated (const char *option, gboolean *negated)
*negated = TRUE;
}
else
- *negated = FALSE;
+ {
+ *negated = FALSE;
+ }
return option;
}
/* This is a merge, not a replace */
gboolean
-xdg_app_context_load_metadata (XdgAppContext *context,
- GKeyFile *metakey,
- GError **error)
+xdg_app_context_load_metadata (XdgAppContext *context,
+ GKeyFile *metakey,
+ GError **error)
{
gboolean remove;
int i;
@@ -933,7 +939,7 @@ xdg_app_context_load_metadata (XdgAppContext *context,
if (g_key_file_has_key (metakey, XDG_APP_METADATA_GROUP_CONTEXT, XDG_APP_METADATA_KEY_PERSISTENT, NULL))
{
g_auto(GStrv) persistent = g_key_file_get_string_list (metakey, XDG_APP_METADATA_GROUP_CONTEXT,
- XDG_APP_METADATA_KEY_PERSISTENT, NULL, error);
+ XDG_APP_METADATA_KEY_PERSISTENT, NULL, error);
if (persistent == NULL)
return FALSE;
@@ -957,7 +963,7 @@ xdg_app_context_load_metadata (XdgAppContext *context,
return FALSE;
policy = xdg_app_policy_from_string (value, error);
- if ((int)policy == -1)
+ if ((int) policy == -1)
return FALSE;
xdg_app_context_set_session_bus_policy (context, key, policy);
@@ -980,7 +986,7 @@ xdg_app_context_load_metadata (XdgAppContext *context,
return FALSE;
policy = xdg_app_policy_from_string (value, error);
- if ((int)policy == -1)
+ if ((int) policy == -1)
return FALSE;
xdg_app_context_set_system_bus_policy (context, key, policy);
@@ -1006,8 +1012,8 @@ xdg_app_context_load_metadata (XdgAppContext *context,
}
void
-xdg_app_context_save_metadata (XdgAppContext *context,
- GKeyFile *metakey)
+xdg_app_context_save_metadata (XdgAppContext *context,
+ GKeyFile *metakey)
{
g_auto(GStrv) shared = xdg_app_context_shared_to_string (context->shares, context->shares_valid);
g_auto(GStrv) sockets = xdg_app_context_sockets_to_string (context->sockets, context->sockets_valid);
@@ -1016,37 +1022,49 @@ xdg_app_context_save_metadata (XdgAppContext *context,
gpointer key, value;
if (shared[0] != NULL)
- g_key_file_set_string_list (metakey,
- XDG_APP_METADATA_GROUP_CONTEXT,
- XDG_APP_METADATA_KEY_SHARED,
- (const char * const*)shared, g_strv_length (shared));
+ {
+ g_key_file_set_string_list (metakey,
+ XDG_APP_METADATA_GROUP_CONTEXT,
+ XDG_APP_METADATA_KEY_SHARED,
+ (const char * const *) shared, g_strv_length (shared));
+ }
else
- g_key_file_remove_key (metakey,
- XDG_APP_METADATA_GROUP_CONTEXT,
- XDG_APP_METADATA_KEY_SHARED,
- NULL);
+ {
+ g_key_file_remove_key (metakey,
+ XDG_APP_METADATA_GROUP_CONTEXT,
+ XDG_APP_METADATA_KEY_SHARED,
+ NULL);
+ }
if (sockets[0] != NULL)
- g_key_file_set_string_list (metakey,
- XDG_APP_METADATA_GROUP_CONTEXT,
- XDG_APP_METADATA_KEY_SOCKETS,
- (const char * const*)sockets, g_strv_length (sockets));
+ {
+ g_key_file_set_string_list (metakey,
+ XDG_APP_METADATA_GROUP_CONTEXT,
+ XDG_APP_METADATA_KEY_SOCKETS,
+ (const char * const *) sockets, g_strv_length (sockets));
+ }
else
- g_key_file_remove_key (metakey,
- XDG_APP_METADATA_GROUP_CONTEXT,
- XDG_APP_METADATA_KEY_SOCKETS,
- NULL);
+ {
+ g_key_file_remove_key (metakey,
+ XDG_APP_METADATA_GROUP_CONTEXT,
+ XDG_APP_METADATA_KEY_SOCKETS,
+ NULL);
+ }
if (devices[0] != NULL)
- g_key_file_set_string_list (metakey,
- XDG_APP_METADATA_GROUP_CONTEXT,
- XDG_APP_METADATA_KEY_DEVICES,
- (const char * const*)devices, g_strv_length (devices));
+ {
+ g_key_file_set_string_list (metakey,
+ XDG_APP_METADATA_GROUP_CONTEXT,
+ XDG_APP_METADATA_KEY_DEVICES,
+ (const char * const *) devices, g_strv_length (devices));
+ }
else
- g_key_file_remove_key (metakey,
- XDG_APP_METADATA_GROUP_CONTEXT,
- XDG_APP_METADATA_KEY_DEVICES,
- NULL);
+ {
+ g_key_file_remove_key (metakey,
+ XDG_APP_METADATA_GROUP_CONTEXT,
+ XDG_APP_METADATA_KEY_DEVICES,
+ NULL);
+ }
if (g_hash_table_size (context->filesystems) > 0)
{
@@ -1066,28 +1084,32 @@ xdg_app_context_save_metadata (XdgAppContext *context,
g_key_file_set_string_list (metakey,
XDG_APP_METADATA_GROUP_CONTEXT,
XDG_APP_METADATA_KEY_FILESYSTEMS,
- (const char * const*)array->pdata, array->len);
+ (const char * const *) array->pdata, array->len);
}
else
- g_key_file_remove_key (metakey,
- XDG_APP_METADATA_GROUP_CONTEXT,
- XDG_APP_METADATA_KEY_FILESYSTEMS,
- NULL);
+ {
+ g_key_file_remove_key (metakey,
+ XDG_APP_METADATA_GROUP_CONTEXT,
+ XDG_APP_METADATA_KEY_FILESYSTEMS,
+ NULL);
+ }
if (g_hash_table_size (context->persistent) > 0)
{
- g_autofree char **keys = (char **)g_hash_table_get_keys_as_array (context->persistent, NULL);
+ g_autofree char **keys = (char **) g_hash_table_get_keys_as_array (context->persistent, NULL);
g_key_file_set_string_list (metakey,
XDG_APP_METADATA_GROUP_CONTEXT,
XDG_APP_METADATA_KEY_PERSISTENT,
- (const char * const*)keys, g_strv_length (keys));
+ (const char * const *) keys, g_strv_length (keys));
}
else
- g_key_file_remove_key (metakey,
- XDG_APP_METADATA_GROUP_CONTEXT,
- XDG_APP_METADATA_KEY_PERSISTENT,
- NULL);
+ {
+ g_key_file_remove_key (metakey,
+ XDG_APP_METADATA_GROUP_CONTEXT,
+ XDG_APP_METADATA_KEY_PERSISTENT,
+ NULL);
+ }
g_key_file_remove_group (metakey, XDG_APP_METADATA_GROUP_SESSION_BUS_POLICY, NULL);
g_hash_table_iter_init (&iter, context->session_bus_policy);
@@ -1097,7 +1119,7 @@ xdg_app_context_save_metadata (XdgAppContext *context,
if (policy > 0)
g_key_file_set_string (metakey,
XDG_APP_METADATA_GROUP_SESSION_BUS_POLICY,
- (char *)key, xdg_app_policy_to_string (policy));
+ (char *) key, xdg_app_policy_to_string (policy));
}
g_key_file_remove_group (metakey, XDG_APP_METADATA_GROUP_SYSTEM_BUS_POLICY, NULL);
@@ -1108,7 +1130,7 @@ xdg_app_context_save_metadata (XdgAppContext *context,
if (policy > 0)
g_key_file_set_string (metakey,
XDG_APP_METADATA_GROUP_SYSTEM_BUS_POLICY,
- (char *)key, xdg_app_policy_to_string (policy));
+ (char *) key, xdg_app_policy_to_string (policy));
}
g_key_file_remove_group (metakey, XDG_APP_METADATA_GROUP_ENVIRONMENT, NULL);
@@ -1117,12 +1139,12 @@ xdg_app_context_save_metadata (XdgAppContext *context,
{
g_key_file_set_string (metakey,
XDG_APP_METADATA_GROUP_ENVIRONMENT,
- (char *)key, (char *)value);
+ (char *) key, (char *) value);
}
}
void
-xdg_app_context_allow_host_fs (XdgAppContext *context)
+xdg_app_context_allow_host_fs (XdgAppContext *context)
{
xdg_app_context_add_filesystem (context, "host");
}
@@ -1150,9 +1172,10 @@ extract_unix_path_from_dbus_address (const char *address)
}
#ifdef ENABLE_XAUTH
-static gboolean auth_streq (char *str,
- char *au_str,
- int au_len)
+static gboolean
+auth_streq (char *str,
+ char *au_str,
+ int au_len)
{
return au_len == strlen (str) && memcmp (str, au_str, au_len) == 0;
}
@@ -1192,11 +1215,11 @@ write_xauth (char *number, FILE *output)
local_xa.number_length = 2;
}
- if (!XauWriteAuth(output, &local_xa))
+ if (!XauWriteAuth (output, &local_xa))
g_warning ("xauth write error");
}
- XauDisposeAuth(xa);
+ XauDisposeAuth (xa);
}
fclose (f);
@@ -1217,8 +1240,8 @@ add_args (GPtrArray *argv_array, ...)
static int
create_tmp_fd (const char *contents,
- gssize length,
- GError **error)
+ gssize length,
+ GError **error)
{
char template[] = "/tmp/tmp_fd_XXXXXX";
int fd;
@@ -1270,7 +1293,7 @@ create_tmp_fd (const char *contents,
static void
xdg_app_run_add_x11_args (GPtrArray *argv_array,
- char ***envp_p)
+ char ***envp_p)
{
char *x11_socket = NULL;
const char *display = g_getenv ("DISPLAY");
@@ -1305,7 +1328,7 @@ xdg_app_run_add_x11_args (GPtrArray *argv_array,
if (tmp_fd != -1)
{
g_autofree char *tmp_fd_str = g_strdup_printf ("%d", tmp_fd);
- g_autofree char *dest = g_strdup_printf ("/run/user/%d/Xauthority", getuid());
+ g_autofree char *dest = g_strdup_printf ("/run/user/%d/Xauthority", getuid ());
write_xauth (d, output);
add_args (argv_array,
@@ -1320,18 +1343,22 @@ xdg_app_run_add_x11_args (GPtrArray *argv_array,
lseek (tmp_fd, 0, SEEK_SET);
}
else
- close (fd);
+ {
+ close (fd);
+ }
}
#endif
}
else
- *envp_p = g_environ_unsetenv (*envp_p, "DISPLAY");
+ {
+ *envp_p = g_environ_unsetenv (*envp_p, "DISPLAY");
+ }
}
static void
xdg_app_run_add_wayland_args (GPtrArray *argv_array,
- char ***envp_p)
+ char ***envp_p)
{
g_autofree char *wayland_socket = g_build_filename (g_get_user_runtime_dir (), "wayland-0", NULL);
g_autofree char *sandbox_wayland_socket = g_strdup_printf ("/run/user/%d/wayland-0", getuid ());
@@ -1346,7 +1373,7 @@ xdg_app_run_add_wayland_args (GPtrArray *argv_array,
static void
xdg_app_run_add_pulseaudio_args (GPtrArray *argv_array,
- char ***envp_p)
+ char ***envp_p)
{
char *pulseaudio_socket = g_build_filename (g_get_user_runtime_dir (), "pulse/native", NULL);
@@ -1398,10 +1425,10 @@ create_proxy_socket (char *template)
gboolean
xdg_app_run_add_system_dbus_args (XdgAppContext *context,
- char ***envp_p,
- GPtrArray *argv_array,
- GPtrArray *dbus_proxy_argv,
- gboolean unrestricted)
+ char ***envp_p,
+ GPtrArray *argv_array,
+ GPtrArray *dbus_proxy_argv,
+ gboolean unrestricted)
{
const char *dbus_address = g_getenv ("DBUS_SYSTEM_BUS_ADDRESS");
g_autofree char *real_dbus_address = NULL;
@@ -1450,9 +1477,9 @@ xdg_app_run_add_system_dbus_args (XdgAppContext *context,
gboolean
xdg_app_run_add_session_dbus_args (GPtrArray *argv_array,
- char ***envp_p,
+ char ***envp_p,
GPtrArray *dbus_proxy_argv,
- gboolean unrestricted)
+ gboolean unrestricted)
{
const char *dbus_address = g_getenv ("DBUS_SESSION_BUS_ADDRESS");
char *dbus_session_socket = NULL;
@@ -1495,9 +1522,9 @@ xdg_app_run_add_session_dbus_args (GPtrArray *argv_array,
}
static void
-xdg_app_add_bus_filters (GPtrArray *dbus_proxy_argv,
- GHashTable *ht,
- const char *app_id,
+xdg_app_add_bus_filters (GPtrArray *dbus_proxy_argv,
+ GHashTable *ht,
+ const char *app_id,
XdgAppContext *context)
{
GHashTableIter iter;
@@ -1516,16 +1543,16 @@ xdg_app_add_bus_filters (GPtrArray *dbus_proxy_argv,
XdgAppPolicy policy = GPOINTER_TO_INT (value);
if (policy > 0)
- g_ptr_array_add (dbus_proxy_argv, g_strdup_printf ("--%s=%s", xdg_app_policy_to_string (policy), (char *)key));
+ g_ptr_array_add (dbus_proxy_argv, g_strdup_printf ("--%s=%s", xdg_app_policy_to_string (policy), (char *) key));
}
}
gboolean
-xdg_app_run_add_extension_args (GPtrArray *argv_array,
- GKeyFile *metakey,
- const char *full_ref,
+xdg_app_run_add_extension_args (GPtrArray *argv_array,
+ GKeyFile *metakey,
+ const char *full_ref,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
g_auto(GStrv) parts = NULL;
gboolean is_app;
@@ -1559,15 +1586,15 @@ xdg_app_run_add_extension_args (GPtrArray *argv_array,
}
}
- g_list_free_full (extensions, (GDestroyNotify)xdg_app_extension_free);
+ g_list_free_full (extensions, (GDestroyNotify) xdg_app_extension_free);
return TRUE;
}
static void
-add_file_arg (GPtrArray *argv_array,
+add_file_arg (GPtrArray *argv_array,
XdgAppFilesystemMode mode,
- const char *path)
+ const char *path)
{
struct stat st;
@@ -1584,13 +1611,13 @@ add_file_arg (GPtrArray *argv_array,
}
void
-xdg_app_run_add_environment_args (GPtrArray *argv_array,
- char ***envp_p,
- GPtrArray *session_bus_proxy_argv,
- GPtrArray *system_bus_proxy_argv,
- const char *app_id,
+xdg_app_run_add_environment_args (GPtrArray *argv_array,
+ char ***envp_p,
+ GPtrArray *session_bus_proxy_argv,
+ GPtrArray *system_bus_proxy_argv,
+ const char *app_id,
XdgAppContext *context,
- GFile *app_id_dir)
+ GFile *app_id_dir)
{
GHashTableIter iter;
gpointer key, value;
@@ -1618,13 +1645,15 @@ xdg_app_run_add_environment_args (GPtrArray *argv_array,
if (g_file_test ("/dev/dri", G_FILE_TEST_IS_DIR))
add_args (argv_array, "--dev-bind", "/dev/dri", "/dev/dri", NULL);
if (g_file_test ("/dev/nvidiactl", G_FILE_TEST_EXISTS))
- add_args (argv_array,
- "--dev-bind", "/dev/nvidiactl", "/dev/nvidiactl",
- "--dev-bind", "/dev/nvidia0", "/dev/nvidia0",
- NULL);
+ {
+ add_args (argv_array,
+ "--dev-bind", "/dev/nvidiactl", "/dev/nvidiactl",
+ "--dev-bind", "/dev/nvidia0", "/dev/nvidia0",
+ NULL);
+ }
}
- fs_mode = (XdgAppFilesystemMode)g_hash_table_lookup (context->filesystems, "host");
+ fs_mode = (XdgAppFilesystemMode) g_hash_table_lookup (context->filesystems, "host");
if (fs_mode != 0)
{
DIR *dir;
@@ -1651,7 +1680,7 @@ xdg_app_run_add_environment_args (GPtrArray *argv_array,
add_file_arg (argv_array, fs_mode, "/run/media");
}
- home_mode = (XdgAppFilesystemMode)g_hash_table_lookup (context->filesystems, "home");
+ home_mode = (XdgAppFilesystemMode) g_hash_table_lookup (context->filesystems, "home");
if (home_mode != 0)
{
g_debug ("Allowing homedir access");
@@ -1683,7 +1712,7 @@ xdg_app_run_add_environment_args (GPtrArray *argv_array,
while (g_hash_table_iter_next (&iter, &key, &value))
{
const char *filesystem = key;
- XdgAppFilesystemMode mode = GPOINTER_TO_INT(value);
+ XdgAppFilesystemMode mode = GPOINTER_TO_INT (value);
if (value == NULL ||
strcmp (filesystem, "host") == 0 ||
@@ -1728,7 +1757,7 @@ xdg_app_run_add_environment_args (GPtrArray *argv_array,
{
g_autofree char *path = NULL;
- path = g_build_filename (g_get_home_dir(), filesystem+2, NULL);
+ path = g_build_filename (g_get_home_dir (), filesystem + 2, NULL);
if (g_file_test (path, G_FILE_TEST_EXISTS))
add_file_arg (argv_array, mode, path);
}
@@ -1738,7 +1767,9 @@ xdg_app_run_add_environment_args (GPtrArray *argv_array,
add_file_arg (argv_array, mode, filesystem);
}
else
- g_warning ("Unexpected filesystem arg %s\n", filesystem);
+ {
+ g_warning ("Unexpected filesystem arg %s\n", filesystem);
+ }
}
/* Do this after setting up everything in the home dir, so its not overwritten */
@@ -1808,9 +1839,7 @@ xdg_app_run_add_environment_args (GPtrArray *argv_array,
g_debug ("Allowing session-dbus access");
if (xdg_app_run_add_session_dbus_args (argv_array, envp_p, session_bus_proxy_argv, unrestricted_session_bus) &&
!unrestricted_session_bus && session_bus_proxy_argv)
- {
- xdg_app_add_bus_filters (session_bus_proxy_argv, context->session_bus_policy, app_id, context);
- }
+ xdg_app_add_bus_filters (session_bus_proxy_argv, context->session_bus_policy, app_id, context);
unrestricted_system_bus = (context->sockets & XDG_APP_CONTEXT_SOCKET_SYSTEM_BUS) != 0;
if (unrestricted_system_bus)
@@ -1818,27 +1847,29 @@ xdg_app_run_add_environment_args (GPtrArray *argv_array,
if (xdg_app_run_add_system_dbus_args (context, envp_p, argv_array, system_bus_proxy_argv,
unrestricted_system_bus) &&
!unrestricted_system_bus && system_bus_proxy_argv)
- {
- xdg_app_add_bus_filters (system_bus_proxy_argv, context->system_bus_policy, NULL, context);
- }
+ xdg_app_add_bus_filters (system_bus_proxy_argv, context->system_bus_policy, NULL, context);
}
-static const struct {const char *env; const char *val;} default_exports[] = {
- {"PATH","/app/bin:/usr/bin"},
+static const struct {const char *env;
+ const char *val;
+} default_exports[] = {
+ {"PATH", "/app/bin:/usr/bin"},
{"LD_LIBRARY_PATH", "/app/lib"},
- {"XDG_CONFIG_DIRS","/app/etc/xdg:/etc/xdg"},
- {"XDG_DATA_DIRS","/app/share:/usr/share"},
- {"SHELL","/bin/sh"},
+ {"XDG_CONFIG_DIRS", "/app/etc/xdg:/etc/xdg"},
+ {"XDG_DATA_DIRS", "/app/share:/usr/share"},
+ {"SHELL", "/bin/sh"},
};
-static const struct {const char *env; const char *val;} devel_exports[] = {
- {"ACLOCAL_PATH","/app/share/aclocal"},
- {"C_INCLUDE_PATH","/app/include"},
- {"CPLUS_INCLUDE_PATH","/app/include"},
- {"LDFLAGS","-L/app/lib "},
- {"PKG_CONFIG_PATH","/app/lib/pkgconfig:/app/share/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig"},
- {"LC_ALL","en_US.utf8"},
+static const struct {const char *env;
+ const char *val;
+} devel_exports[] = {
+ {"ACLOCAL_PATH", "/app/share/aclocal"},
+ {"C_INCLUDE_PATH", "/app/include"},
+ {"CPLUS_INCLUDE_PATH", "/app/include"},
+ {"LDFLAGS", "-L/app/lib "},
+ {"PKG_CONFIG_PATH", "/app/lib/pkgconfig:/app/share/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig"},
+ {"LC_ALL", "en_US.utf8"},
};
char **
@@ -1881,7 +1912,7 @@ xdg_app_run_get_minimal_env (gboolean devel)
env_array = g_ptr_array_new_with_free_func (g_free);
- for (i = 0; i < G_N_ELEMENTS(default_exports); i++)
+ for (i = 0; i < G_N_ELEMENTS (default_exports); i++)
g_ptr_array_add (env_array, g_strdup_printf ("%s=%s", default_exports[i].env, default_exports[i].val));
if (devel)
@@ -1890,25 +1921,25 @@ xdg_app_run_get_minimal_env (gboolean devel)
g_ptr_array_add (env_array, g_strdup_printf ("%s=%s", devel_exports[i].env, devel_exports[i].val));
}
- for (i = 0; i < G_N_ELEMENTS(copy); i++)
+ for (i = 0; i < G_N_ELEMENTS (copy); i++)
{
- const char *current = g_getenv(copy[i]);
+ const char *current = g_getenv (copy[i]);
if (current)
g_ptr_array_add (env_array, g_strdup_printf ("%s=%s", copy[i], current));
}
if (!devel)
{
- for (i = 0; i < G_N_ELEMENTS(copy_nodevel); i++)
+ for (i = 0; i < G_N_ELEMENTS (copy_nodevel); i++)
{
- const char *current = g_getenv(copy_nodevel[i]);
+ const char *current = g_getenv (copy_nodevel[i]);
if (current)
g_ptr_array_add (env_array, g_strdup_printf ("%s=%s", copy_nodevel[i], current));
}
}
g_ptr_array_add (env_array, NULL);
- return (char **)g_ptr_array_free (env_array, FALSE);
+ return (char **) g_ptr_array_free (env_array, FALSE);
}
char **
@@ -1916,15 +1947,15 @@ xdg_app_run_apply_env_default (char **envp)
{
int i;
- for (i = 0; i < G_N_ELEMENTS(default_exports); i++)
+ for (i = 0; i < G_N_ELEMENTS (default_exports); i++)
envp = g_environ_setenv (envp, default_exports[i].env, default_exports[i].val, TRUE);
return envp;
}
char **
-xdg_app_run_apply_env_appid (char **envp,
- GFile *app_dir)
+xdg_app_run_apply_env_appid (char **envp,
+ GFile *app_dir)
{
g_autoptr(GFile) app_dir_data = NULL;
g_autoptr(GFile) app_dir_config = NULL;
@@ -1971,9 +2002,9 @@ xdg_app_get_data_dir (const char *app_id)
}
GFile *
-xdg_app_ensure_data_dir (const char *app_id,
- GCancellable *cancellable,
- GError **error)
+xdg_app_ensure_data_dir (const char *app_id,
+ GCancellable *cancellable,
+ GError **error)
{
g_autoptr(GFile) dir = xdg_app_get_data_dir (app_id);
g_autoptr(GFile) data_dir = g_file_get_child (dir, "data");
@@ -1992,17 +2023,18 @@ xdg_app_ensure_data_dir (const char *app_id,
return g_object_ref (dir);
}
-struct JobData {
- char *job;
+struct JobData
+{
+ char *job;
GMainLoop *main_loop;
};
static void
job_removed_cb (SystemdManager *manager,
- guint32 id,
- char *job,
- char *unit,
- char *result,
+ guint32 id,
+ char *job,
+ char *unit,
+ char *result,
struct JobData *data)
{
if (strcmp (job, data->job) == 0)
@@ -2027,7 +2059,7 @@ xdg_app_run_in_transient_unit (const char *appid, GError **error)
struct JobData data;
gboolean res = FALSE;
- path = g_strdup_printf ("/run/user/%d/systemd/private", getuid());
+ path = g_strdup_printf ("/run/user/%d/systemd/private", getuid ());
if (!g_file_test (path, G_FILE_TEST_EXISTS))
return xdg_app_fail (error,
@@ -2055,7 +2087,7 @@ xdg_app_run_in_transient_unit (const char *appid, GError **error)
if (!manager)
goto out;
- name = g_strdup_printf ("xdg-app-%s-%d.scope", appid, getpid());
+ name = g_strdup_printf ("xdg-app-%s-%d.scope", appid, getpid ());
g_variant_builder_init (&builder, G_VARIANT_TYPE ("a(sv)"));
@@ -2064,7 +2096,7 @@ xdg_app_run_in_transient_unit (const char *appid, GError **error)
"PIDs",
g_variant_new_fixed_array (G_VARIANT_TYPE ("u"),
&pid, 1, sizeof (guint32))
- );
+ );
properties = g_variant_builder_end (&builder);
@@ -2082,13 +2114,13 @@ xdg_app_run_in_transient_unit (const char *appid, GError **error)
data.job = job;
data.main_loop = main_loop;
- g_signal_connect (manager,"job-removed", G_CALLBACK (job_removed_cb), &data);
+ g_signal_connect (manager, "job-removed", G_CALLBACK (job_removed_cb), &data);
g_main_loop_run (main_loop);
res = TRUE;
- out:
+out:
if (main_context)
{
g_main_context_pop_thread_default (main_context);
@@ -2142,7 +2174,7 @@ add_default_permissions (XdgAppContext *app_context)
static XdgAppContext *
compute_permissions (GKeyFile *app_metadata,
GKeyFile *runtime_metadata,
- GError **error)
+ GError **error)
{
g_autoptr(XdgAppContext) app_context = NULL;
@@ -2160,12 +2192,12 @@ compute_permissions (GKeyFile *app_metadata,
}
static gboolean
-add_app_info_args (GPtrArray *argv_array,
- XdgAppDeploy *deploy,
- const char *app_id,
- const char *runtime_ref,
+add_app_info_args (GPtrArray *argv_array,
+ XdgAppDeploy *deploy,
+ const char *app_id,
+ const char *runtime_ref,
XdgAppContext *final_app_context,
- GError **error)
+ GError **error)
{
g_autofree char *tmp_path = NULL;
int fd;
@@ -2213,7 +2245,7 @@ add_app_info_args (GPtrArray *argv_array,
static void
add_monitor_path_args (GPtrArray *argv_array,
- char ***envp_p)
+ char ***envp_p)
{
g_autoptr(AutoXdgAppSessionHelper) session_helper = NULL;
g_autofree char *monitor_path = NULL;
@@ -2238,7 +2270,7 @@ add_monitor_path_args (GPtrArray *argv_array,
}
else
{
- char localtime[PATH_MAX+1];
+ char localtime[PATH_MAX + 1];
ssize_t symlink_size;
add_args (argv_array,
@@ -2254,14 +2286,16 @@ add_monitor_path_args (GPtrArray *argv_array,
NULL);
}
else
- add_args (argv_array,
- "--bind", "/etc/localtime", "/etc/localtime",
- NULL);
+ {
+ add_args (argv_array,
+ "--bind", "/etc/localtime", "/etc/localtime",
+ NULL);
+ }
}
}
static void
-add_document_portal_args (GPtrArray *argv_array,
+add_document_portal_args (GPtrArray *argv_array,
const char *app_id)
{
g_autoptr(GDBusConnection) session_bus = NULL;
@@ -2270,9 +2304,9 @@ add_document_portal_args (GPtrArray *argv_array,
session_bus = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, NULL);
if (session_bus)
{
- g_autoptr (GError) local_error = NULL;
- g_autoptr (GDBusMessage) reply = NULL;
- g_autoptr (GDBusMessage) msg =
+ g_autoptr(GError) local_error = NULL;
+ g_autoptr(GDBusMessage) reply = NULL;
+ g_autoptr(GDBusMessage) msg =
g_dbus_message_new_method_call ("org.freedesktop.portal.Documents",
"/org/freedesktop/portal/documents",
"org.freedesktop.portal.Documents",
@@ -2288,7 +2322,9 @@ add_document_portal_args (GPtrArray *argv_array,
if (reply)
{
if (g_dbus_message_to_gerror (reply, &local_error))
- g_warning ("Can't get document portal: %s\n", local_error->message);
+ {
+ g_warning ("Can't get document portal: %s\n", local_error->message);
+ }
else
{
g_autofree char *src_path = NULL;
@@ -2298,7 +2334,7 @@ add_document_portal_args (GPtrArray *argv_array,
src_path = g_strdup_printf ("%s/by-app/%s",
doc_mount_path, app_id);
- dst_path = g_strdup_printf ("/run/user/%d/doc", getuid());
+ dst_path = g_strdup_printf ("/run/user/%d/doc", getuid ());
add_args (argv_array, "--bind", src_path, dst_path, NULL);
}
}
@@ -2309,6 +2345,7 @@ static void
dbus_spawn_child_setup (gpointer user_data)
{
int fd = GPOINTER_TO_INT (user_data);
+
fcntl (fd, F_SETFD, 0);
}
@@ -2316,8 +2353,8 @@ static gboolean
add_dbus_proxy_args (GPtrArray *argv_array,
GPtrArray *dbus_proxy_argv,
gboolean enable_logging,
- int sync_fds[2],
- GError **error)
+ int sync_fds[2],
+ GError **error)
{
char x = 'x';
const char *proxy;
@@ -2351,7 +2388,7 @@ add_dbus_proxy_args (GPtrArray *argv_array,
g_ptr_array_add (dbus_proxy_argv, NULL); /* NULL terminate */
if (!g_spawn_async (NULL,
- (char **)dbus_proxy_argv->pdata,
+ (char **) dbus_proxy_argv->pdata,
NULL,
G_SPAWN_SEARCH_PATH,
dbus_spawn_child_setup,
@@ -2380,19 +2417,19 @@ add_dbus_proxy_args (GPtrArray *argv_array,
static inline void
cleanup_seccomp (void *p)
{
- scmp_filter_ctx *pp = (scmp_filter_ctx *)p;
+ scmp_filter_ctx *pp = (scmp_filter_ctx *) p;
if (*pp)
seccomp_release (*pp);
}
static gboolean
-setup_seccomp (GPtrArray *argv_array,
+setup_seccomp (GPtrArray *argv_array,
const char *arch,
- gboolean devel,
- GError **error)
+ gboolean devel,
+ GError **error)
{
- __attribute__ ((cleanup(cleanup_seccomp))) scmp_filter_ctx seccomp = NULL;
+ __attribute__((cleanup (cleanup_seccomp))) scmp_filter_ctx seccomp = NULL;
/**** BEGIN NOTE ON CODE SHARING
*
@@ -2423,47 +2460,49 @@ setup_seccomp (GPtrArray *argv_array,
*
**** END NOTE ON CODE SHARING
*/
- struct {
- int scall;
+ struct
+ {
+ int scall;
struct scmp_arg_cmp *arg;
} syscall_blacklist[] = {
/* Block dmesg */
- {SCMP_SYS(syslog)},
+ {SCMP_SYS (syslog)},
/* Useless old syscall */
- {SCMP_SYS(uselib)},
+ {SCMP_SYS (uselib)},
/* Don't allow you to switch to bsd emulation or whatnot */
- {SCMP_SYS(personality)},
+ {SCMP_SYS (personality)},
/* Don't allow disabling accounting */
- {SCMP_SYS(acct)},
+ {SCMP_SYS (acct)},
/* 16-bit code is unnecessary in the sandbox, and modify_ldt is a
historic source of interesting information leaks. */
- {SCMP_SYS(modify_ldt)},
+ {SCMP_SYS (modify_ldt)},
/* Don't allow reading current quota use */
- {SCMP_SYS(quotactl)},
+ {SCMP_SYS (quotactl)},
/* Scary VM/NUMA ops */
- {SCMP_SYS(move_pages)},
- {SCMP_SYS(mbind)},
- {SCMP_SYS(get_mempolicy)},
- {SCMP_SYS(set_mempolicy)},
- {SCMP_SYS(migrate_pages)},
+ {SCMP_SYS (move_pages)},
+ {SCMP_SYS (mbind)},
+ {SCMP_SYS (get_mempolicy)},
+ {SCMP_SYS (set_mempolicy)},
+ {SCMP_SYS (migrate_pages)},
/* Don't allow subnamespace setups: */
- {SCMP_SYS(unshare)},
- {SCMP_SYS(mount)},
- {SCMP_SYS(pivot_root)},
- {SCMP_SYS(clone), &SCMP_A0(SCMP_CMP_MASKED_EQ, CLONE_NEWUSER, CLONE_NEWUSER)},
+ {SCMP_SYS (unshare)},
+ {SCMP_SYS (mount)},
+ {SCMP_SYS (pivot_root)},
+ {SCMP_SYS (clone), &SCMP_A0 (SCMP_CMP_MASKED_EQ, CLONE_NEWUSER, CLONE_NEWUSER)},
};
- struct {
- int scall;
+ struct
+ {
+ int scall;
struct scmp_arg_cmp *arg;
} syscall_nondevel_blacklist[] = {
/* Profiling operations; we expect these to be done by tools from outside
* the sandbox. In particular perf has been the source of many CVEs.
*/
- {SCMP_SYS(perf_event_open)},
- {SCMP_SYS(ptrace)}
+ {SCMP_SYS (perf_event_open)},
+ {SCMP_SYS (ptrace)}
};
/* Blacklist all but unix, inet, inet6 and netlink */
int socket_family_blacklist[] = {
@@ -2539,9 +2578,9 @@ setup_seccomp (GPtrArray *argv_array,
{
int scall = syscall_blacklist[i].scall;
if (syscall_blacklist[i].arg)
- r = seccomp_rule_add (seccomp, SCMP_ACT_ERRNO(EPERM), scall, 1, *syscall_blacklist[i].arg);
+ r = seccomp_rule_add (seccomp, SCMP_ACT_ERRNO (EPERM), scall, 1, *syscall_blacklist[i].arg);
else
- r = seccomp_rule_add (seccomp, SCMP_ACT_ERRNO(EPERM), scall, 0);
+ r = seccomp_rule_add (seccomp, SCMP_ACT_ERRNO (EPERM), scall, 0);
if (r < 0 && r == -EFAULT /* unknown syscall */)
return xdg_app_fail (error, "Failed to block syscall %d", scall);
}
@@ -2552,9 +2591,9 @@ setup_seccomp (GPtrArray *argv_array,
{
int scall = syscall_nondevel_blacklist[i].scall;
if (syscall_nondevel_blacklist[i].arg)
- r = seccomp_rule_add (seccomp, SCMP_ACT_ERRNO(EPERM), scall, 1, *syscall_nondevel_blacklist[i].arg);
+ r = seccomp_rule_add (seccomp, SCMP_ACT_ERRNO (EPERM), scall, 1, *syscall_nondevel_blacklist[i].arg);
else
- r = seccomp_rule_add (seccomp, SCMP_ACT_ERRNO(EPERM), scall, 0);
+ r = seccomp_rule_add (seccomp, SCMP_ACT_ERRNO (EPERM), scall, 0);
if (r < 0 && r == -EFAULT /* unknown syscall */)
return xdg_app_fail (error, "Failed to block syscall %d", scall);
@@ -2568,9 +2607,9 @@ setup_seccomp (GPtrArray *argv_array,
{
int family = socket_family_blacklist[i];
if (i == G_N_ELEMENTS (socket_family_blacklist) - 1)
- r = seccomp_rule_add_exact (seccomp, SCMP_ACT_ERRNO(EAFNOSUPPORT), SCMP_SYS(socket), 1, SCMP_A0(SCMP_CMP_GE, family));
+ r = seccomp_rule_add_exact (seccomp, SCMP_ACT_ERRNO (EAFNOSUPPORT), SCMP_SYS (socket), 1, SCMP_A0 (SCMP_CMP_GE, family));
else
- r = seccomp_rule_add_exact (seccomp, SCMP_ACT_ERRNO(EAFNOSUPPORT), SCMP_SYS(socket), 1, SCMP_A0(SCMP_CMP_EQ, family));
+ r = seccomp_rule_add_exact (seccomp, SCMP_ACT_ERRNO (EAFNOSUPPORT), SCMP_SYS (socket), 1, SCMP_A0 (SCMP_CMP_EQ, family));
}
fd = g_file_open_tmp ("xdg-app-seccomp-XXXXXX", &path, error);
@@ -2597,12 +2636,12 @@ setup_seccomp (GPtrArray *argv_array,
#endif
gboolean
-xdg_app_run_setup_base_argv (GPtrArray *argv_array,
- GFile *runtime_files,
- GFile *app_id_dir,
- const char *arch,
+xdg_app_run_setup_base_argv (GPtrArray *argv_array,
+ GFile *runtime_files,
+ GFile *app_id_dir,
+ const char *arch,
XdgAppRunFlags flags,
- GError **error)
+ GError **error)
{
const char *usr_links[] = {"lib", "lib32", "lib64", "bin", "sbin"};
g_autofree char *run_dir = g_strdup_printf ("/run/user/%d", getuid ());
@@ -2614,6 +2653,7 @@ xdg_app_run_setup_base_argv (GPtrArray *argv_array,
g_autofree char *group_fd_str = NULL;
g_autofree char *group_contents = NULL;
struct group *g = getgrgid (getgid ());
+
g_autoptr(GFile) etc = NULL;
passwd_contents = g_strdup_printf ("%s:x:%d:%d:%s:%s:%s\n"
@@ -2629,9 +2669,9 @@ xdg_app_run_setup_base_argv (GPtrArray *argv_array,
passwd_fd_str = g_strdup_printf ("%d", passwd_fd);
group_contents = g_strdup_printf ("%s:x:%d:%s\n"
- "nfsnobody:x:65534:\n",
- g->gr_name,
- getgid (), g_get_user_name ());
+ "nfsnobody:x:65534:\n",
+ g->gr_name,
+ getgid (), g_get_user_name ());
if ((group_fd = create_tmp_fd (group_contents, -1, error)) < 0)
return FALSE;
group_fd_str = g_strdup_printf ("%d", group_fd);
@@ -2669,7 +2709,7 @@ xdg_app_run_setup_base_argv (GPtrArray *argv_array,
{
g_auto(GLnxDirFdIterator) dfd_iter = { 0, };
struct dirent *dent;
- char path_buffer[PATH_MAX+1];
+ char path_buffer[PATH_MAX + 1];
ssize_t symlink_size;
glnx_dirfd_iterator_init_at (AT_FDCWD, gs_file_get_path_cached (etc), FALSE, &dfd_iter, NULL);
@@ -2703,7 +2743,9 @@ xdg_app_run_setup_base_argv (GPtrArray *argv_array,
add_args (argv_array, "--symlink", path_buffer, dest, NULL);
}
else
- add_args (argv_array, "--bind", src, dest, NULL);
+ {
+ add_args (argv_array, "--bind", src, dest, NULL);
+ }
}
}
@@ -2721,7 +2763,7 @@ xdg_app_run_setup_base_argv (GPtrArray *argv_array,
NULL);
}
- for (i = 0; i < G_N_ELEMENTS(usr_links); i++)
+ for (i = 0; i < G_N_ELEMENTS (usr_links); i++)
{
const char *subdir = usr_links[i];
g_autoptr(GFile) runtime_subdir = g_file_get_child (runtime_files, subdir);
@@ -2747,7 +2789,7 @@ xdg_app_run_setup_base_argv (GPtrArray *argv_array,
return TRUE;
}
-gchar*
+gchar *
join_args (GPtrArray *argv_array, gsize *len_out)
{
gchar *string;
@@ -2769,17 +2811,17 @@ join_args (GPtrArray *argv_array, gsize *len_out)
}
gboolean
-xdg_app_run_app (const char *app_ref,
- XdgAppDeploy *app_deploy,
+xdg_app_run_app (const char *app_ref,
+ XdgAppDeploy *app_deploy,
XdgAppContext *extra_context,
- const char *custom_runtime,
- const char *custom_runtime_version,
+ const char *custom_runtime,
+ const char *custom_runtime_version,
XdgAppRunFlags flags,
- const char *custom_command,
- char *args[],
- int n_args,
- GCancellable *cancellable,
- GError **error)
+ const char *custom_command,
+ char *args[],
+ int n_args,
+ GCancellable *cancellable,
+ GError **error)
{
g_autoptr(XdgAppDeploy) runtime_deploy = NULL;
g_autoptr(GFile) app_files = NULL;
@@ -2875,7 +2917,7 @@ xdg_app_run_app (const char *app_ref,
app_files = xdg_app_deploy_get_files (app_deploy);
if ((app_id_dir = xdg_app_ensure_data_dir (app_ref_parts[1], cancellable, error)) == NULL)
- return FALSE;
+ return FALSE;
envp = g_get_environ ();
envp = xdg_app_run_apply_env_default (envp);
@@ -2942,7 +2984,9 @@ xdg_app_run_app (const char *app_ref,
}
if (custom_command)
- command = custom_command;
+ {
+ command = custom_command;
+ }
else
{
default_command = g_key_file_get_string (metakey, "Application", "command", &my_error);
@@ -2984,7 +3028,7 @@ xdg_app_run_app (const char *app_ref,
if ((flags & XDG_APP_RUN_FLAG_BACKGROUND) != 0)
{
if (!g_spawn_async (NULL,
- (char **)real_argv_array->pdata,
+ (char **) real_argv_array->pdata,
envp,
G_SPAWN_DEFAULT,
NULL, NULL,
@@ -2994,7 +3038,7 @@ xdg_app_run_app (const char *app_ref,
}
else
{
- if (execvpe (xdg_app_get_bwrap (), (char **)real_argv_array->pdata, envp) == -1)
+ if (execvpe (xdg_app_get_bwrap (), (char **) real_argv_array->pdata, envp) == -1)
{
g_set_error (error, G_IO_ERROR, g_io_error_from_errno (errno), "Unable to start app");
return FALSE;
diff --git a/common/xdg-app-run.h b/common/xdg-app-run.h
index c94c33c..e4ebb05 100644
--- a/common/xdg-app-run.h
+++ b/common/xdg-app-run.h
@@ -26,7 +26,7 @@
#include "xdg-app-common-types.h"
gboolean xdg_app_run_in_transient_unit (const char *app_id,
- GError **error);
+ GError **error);
#define XDG_APP_METADATA_GROUP_CONTEXT "Context"
#define XDG_APP_METADATA_GROUP_SESSION_BUS_POLICY "Session Bus Policy"
@@ -38,74 +38,74 @@ gboolean xdg_app_run_in_transient_unit (const char *app_id,
#define XDG_APP_METADATA_KEY_PERSISTENT "persistent"
#define XDG_APP_METADATA_KEY_DEVICES "devices"
-XdgAppContext *xdg_app_context_new (void);
-void xdg_app_context_free (XdgAppContext *context);
-void xdg_app_context_merge (XdgAppContext *context,
- XdgAppContext *other);
-GOptionGroup *xdg_app_context_get_options (XdgAppContext *context);
-gboolean xdg_app_context_load_metadata (XdgAppContext *context,
- GKeyFile *metakey,
- GError **error);
-void xdg_app_context_save_metadata (XdgAppContext *context,
- GKeyFile *metakey);
-void xdg_app_context_allow_host_fs (XdgAppContext *context);
-void xdg_app_context_set_session_bus_policy (XdgAppContext *context,
- const char *name,
- XdgAppPolicy policy);
-void xdg_app_context_set_system_bus_policy (XdgAppContext *context,
- const char *name,
- XdgAppPolicy policy);
+XdgAppContext *xdg_app_context_new (void);
+void xdg_app_context_free (XdgAppContext *context);
+void xdg_app_context_merge (XdgAppContext *context,
+ XdgAppContext *other);
+GOptionGroup *xdg_app_context_get_options (XdgAppContext *context);
+gboolean xdg_app_context_load_metadata (XdgAppContext *context,
+ GKeyFile *metakey,
+ GError **error);
+void xdg_app_context_save_metadata (XdgAppContext *context,
+ GKeyFile *metakey);
+void xdg_app_context_allow_host_fs (XdgAppContext *context);
+void xdg_app_context_set_session_bus_policy (XdgAppContext *context,
+ const char *name,
+ XdgAppPolicy policy);
+void xdg_app_context_set_system_bus_policy (XdgAppContext *context,
+ const char *name,
+ XdgAppPolicy policy);
-G_DEFINE_AUTOPTR_CLEANUP_FUNC(XdgAppContext, xdg_app_context_free)
+G_DEFINE_AUTOPTR_CLEANUP_FUNC (XdgAppContext, xdg_app_context_free)
-gboolean xdg_app_run_add_extension_args (GPtrArray *argv_array,
- GKeyFile *metakey,
- const char *full_ref,
- GCancellable *cancellable,
- GError **error);
-void xdg_app_run_add_environment_args (GPtrArray *argv_array,
- char ***envp_p,
- GPtrArray *session_bus_proxy_argv,
- GPtrArray *system_bus_proxy_argv,
- const char *app_id,
- XdgAppContext *context,
- GFile *app_id_dir);
-char ** xdg_app_run_get_minimal_env (gboolean devel);
-char ** xdg_app_run_apply_env_default (char **envp);
-char ** xdg_app_run_apply_env_appid (char **envp,
- GFile *app_dir);
-char ** xdg_app_run_apply_env_vars (char **envp,
- XdgAppContext *context);
+gboolean xdg_app_run_add_extension_args (GPtrArray *argv_array,
+ GKeyFile *metakey,
+ const char *full_ref,
+ GCancellable *cancellable,
+ GError **error);
+void xdg_app_run_add_environment_args (GPtrArray *argv_array,
+ char ***envp_p,
+ GPtrArray *session_bus_proxy_argv,
+ GPtrArray *system_bus_proxy_argv,
+ const char *app_id,
+ XdgAppContext *context,
+ GFile *app_id_dir);
+char ** xdg_app_run_get_minimal_env (gboolean devel);
+char ** xdg_app_run_apply_env_default (char **envp);
+char ** xdg_app_run_apply_env_appid (char **envp,
+ GFile *app_dir);
+char ** xdg_app_run_apply_env_vars (char **envp,
+ XdgAppContext *context);
GFile *xdg_app_get_data_dir (const char *app_id);
-GFile *xdg_app_ensure_data_dir (const char *app_id,
- GCancellable *cancellable,
- GError **error);
+GFile *xdg_app_ensure_data_dir (const char *app_id,
+ GCancellable *cancellable,
+ GError **error);
typedef enum {
- XDG_APP_RUN_FLAG_DEVEL = (1<<0),
- XDG_APP_RUN_FLAG_BACKGROUND = (1<<1),
- XDG_APP_RUN_FLAG_LOG_SESSION_BUS = (1<<2),
- XDG_APP_RUN_FLAG_LOG_SYSTEM_BUS = (1<<3),
+ XDG_APP_RUN_FLAG_DEVEL = (1 << 0),
+ XDG_APP_RUN_FLAG_BACKGROUND = (1 << 1),
+ XDG_APP_RUN_FLAG_LOG_SESSION_BUS = (1 << 2),
+ XDG_APP_RUN_FLAG_LOG_SYSTEM_BUS = (1 << 3),
} XdgAppRunFlags;
-gboolean xdg_app_run_setup_base_argv (GPtrArray *argv_array,
- GFile *runtime_files,
- GFile *app_id_dir,
- const char *arch,
+gboolean xdg_app_run_setup_base_argv (GPtrArray *argv_array,
+ GFile *runtime_files,
+ GFile *app_id_dir,
+ const char *arch,
XdgAppRunFlags flags,
- GError **error);
-gboolean xdg_app_run_app (const char *app_ref,
- XdgAppDeploy *app_deploy,
+ GError **error);
+gboolean xdg_app_run_app (const char *app_ref,
+ XdgAppDeploy *app_deploy,
XdgAppContext *extra_context,
- const char *custom_runtime,
- const char *custom_runtime_version,
+ const char *custom_runtime,
+ const char *custom_runtime_version,
XdgAppRunFlags flags,
- const char *custom_command,
- char *args[],
- int n_args,
- GCancellable *cancellable,
- GError **error);
+ const char *custom_command,
+ char *args[],
+ int n_args,
+ GCancellable *cancellable,
+ GError **error);
#endif /* __XDG_APP_RUN_H__ */
diff --git a/common/xdg-app-utils.c b/common/xdg-app-utils.c
index cdd48d0..c2119af 100644
--- a/common/xdg-app-utils.c
+++ b/common/xdg-app-utils.c
@@ -40,8 +40,8 @@
GBytes *
xdg_app_read_stream (GInputStream *in,
- gboolean null_terminate,
- GError **error)
+ gboolean null_terminate,
+ GError **error)
{
g_autoptr(GOutputStream) mem_stream = NULL;
@@ -63,10 +63,10 @@ xdg_app_read_stream (GInputStream *in,
}
gint
-xdg_app_strcmp0_ptr (gconstpointer a,
- gconstpointer b)
+xdg_app_strcmp0_ptr (gconstpointer a,
+ gconstpointer b)
{
- return g_strcmp0 (* (char * const *) a, * (char * const *) b);
+ return g_strcmp0 (*(char * const *) a, *(char * const *) b);
}
/* Returns end of matching path prefix, or NULL if no match */
@@ -182,7 +182,9 @@ xdg_app_get_kernel_arch (void)
m = buf.machine;
/* i?86 */
if (strlen (m) == 4 && m[0] == 'i' && m[2] == '8' && m[3] == '6')
- arch = "i386";
+ {
+ arch = "i386";
+ }
else if (g_str_has_prefix (m, "arm"))
{
if (g_str_has_suffix (m, "b"))
@@ -244,6 +246,7 @@ const char *
xdg_app_get_bwrap (void)
{
const char *e = g_getenv ("XDG_APP_BWRAP");
+
if (e != NULL)
return e;
return HELPER;
@@ -311,10 +314,8 @@ xdg_app_is_valid_name (const char *string)
s = string;
if (G_UNLIKELY (*s == '.'))
- {
- /* can't start with a . */
- goto out;
- }
+ /* can't start with a . */
+ goto out;
else if (G_UNLIKELY (!is_valid_initial_name_character (*s)))
goto out;
@@ -330,7 +331,9 @@ xdg_app_is_valid_name (const char *string)
dot_count++;
}
else if (G_UNLIKELY (!is_valid_name_character (*s)))
- goto out;
+ {
+ goto out;
+ }
s += 1;
}
@@ -339,7 +342,7 @@ xdg_app_is_valid_name (const char *string)
ret = TRUE;
- out:
+out:
return ret;
}
@@ -425,13 +428,13 @@ xdg_app_is_valid_branch (const char *string)
ret = TRUE;
- out:
+out:
return ret;
}
char **
xdg_app_decompose_ref (const char *full_ref,
- GError **error)
+ GError **error)
{
g_auto(GStrv) parts = NULL;
@@ -470,11 +473,11 @@ xdg_app_decompose_ref (const char *full_ref,
}
char *
-xdg_app_compose_ref (gboolean app,
+xdg_app_compose_ref (gboolean app,
const char *name,
const char *branch,
const char *arch,
- GError **error)
+ GError **error)
{
if (!xdg_app_is_valid_name (name))
{
@@ -534,14 +537,15 @@ xdg_app_build_app_ref (const char *app,
}
char **
-xdg_app_list_deployed_refs (const char *type,
- const char *name_prefix,
- const char *branch,
- const char *arch,
+xdg_app_list_deployed_refs (const char *type,
+ const char *name_prefix,
+ const char *branch,
+ const char *arch,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
gchar **ret = NULL;
+
g_autoptr(GPtrArray) names = NULL;
g_autoptr(GHashTable) hash = NULL;
g_autoptr(XdgAppDir) user_dir = NULL;
@@ -566,23 +570,23 @@ xdg_app_list_deployed_refs (const char *type,
names = g_ptr_array_new ();
g_hash_table_iter_init (&iter, hash);
- while (g_hash_table_iter_next (&iter, (gpointer *)&key, NULL))
+ while (g_hash_table_iter_next (&iter, (gpointer *) &key, NULL))
g_ptr_array_add (names, g_strdup (key));
g_ptr_array_sort (names, xdg_app_strcmp0_ptr);
g_ptr_array_add (names, NULL);
- ret = (char **)g_ptr_array_free (names, FALSE);
+ ret = (char **) g_ptr_array_free (names, FALSE);
names = NULL;
- out:
+out:
return ret;
}
GFile *
-xdg_app_find_deploy_dir_for_ref (const char *ref,
+xdg_app_find_deploy_dir_for_ref (const char *ref,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
g_autoptr(XdgAppDir) user_dir = NULL;
g_autoptr(XdgAppDir) system_dir = NULL;
@@ -605,9 +609,9 @@ xdg_app_find_deploy_dir_for_ref (const char *ref,
}
XdgAppDeploy *
-xdg_app_find_deploy_for_ref (const char *ref,
+xdg_app_find_deploy_for_ref (const char *ref,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
g_autoptr(XdgAppDir) user_dir = NULL;
g_autoptr(XdgAppDir) system_dir = NULL;
@@ -631,16 +635,17 @@ xdg_app_find_deploy_for_ref (const char *ref,
static gboolean
-overlay_symlink_tree_dir (int source_parent_fd,
- const char *source_name,
- const char *source_symlink_prefix,
- int destination_parent_fd,
- const char *destination_name,
- GCancellable *cancellable,
- GError **error)
+overlay_symlink_tree_dir (int source_parent_fd,
+ const char *source_name,
+ const char *source_symlink_prefix,
+ int destination_parent_fd,
+ const char *destination_name,
+ GCancellable *cancellable,
+ GError **error)
{
gboolean ret = FALSE;
int res;
+
g_auto(GLnxDirFdIterator) source_iter = { 0 };
glnx_fd_close int destination_dfd = -1;
struct dirent *dent;
@@ -700,17 +705,17 @@ overlay_symlink_tree_dir (int source_parent_fd,
}
ret = TRUE;
- out:
+out:
return ret;
}
gboolean
-xdg_app_overlay_symlink_tree (GFile *source,
- GFile *destination,
- const char *symlink_prefix,
- GCancellable *cancellable,
- GError **error)
+xdg_app_overlay_symlink_tree (GFile *source,
+ GFile *destination,
+ const char *symlink_prefix,
+ GCancellable *cancellable,
+ GError **error)
{
gboolean ret = FALSE;
@@ -726,15 +731,15 @@ xdg_app_overlay_symlink_tree (GFile *source,
ret = TRUE;
- out:
+out:
return ret;
}
static gboolean
-remove_dangling_symlinks (int parent_fd,
- const char *name,
- GCancellable *cancellable,
- GError **error)
+remove_dangling_symlinks (int parent_fd,
+ const char *name,
+ GCancellable *cancellable,
+ GError **error)
{
gboolean ret = FALSE;
struct dirent *dent;
@@ -771,15 +776,15 @@ remove_dangling_symlinks (int parent_fd,
}
ret = TRUE;
- out:
+out:
return ret;
}
gboolean
-xdg_app_remove_dangling_symlinks (GFile *dir,
- GCancellable *cancellable,
- GError **error)
+xdg_app_remove_dangling_symlinks (GFile *dir,
+ GCancellable *cancellable,
+ GError **error)
{
gboolean ret = FALSE;
@@ -790,17 +795,17 @@ xdg_app_remove_dangling_symlinks (GFile *dir,
ret = TRUE;
- out:
+out:
return ret;
}
/* Based on g_mkstemp from glib */
gint
-xdg_app_mkstempat (int dir_fd,
+xdg_app_mkstempat (int dir_fd,
gchar *tmpl,
- int flags,
- int mode)
+ int flags,
+ int mode)
{
char *XXXXXX;
int count, fd;
@@ -859,17 +864,19 @@ xdg_app_mkstempat (int dir_fd,
return -1;
}
-struct XdgAppTablePrinter {
+struct XdgAppTablePrinter
+{
GPtrArray *rows;
GPtrArray *current;
- int n_columns;
+ int n_columns;
};
XdgAppTablePrinter *
xdg_app_table_printer_new (void)
{
XdgAppTablePrinter *printer = g_new0 (XdgAppTablePrinter, 1);
- printer->rows = g_ptr_array_new_with_free_func ((GDestroyNotify)g_strfreev);
+
+ printer->rows = g_ptr_array_new_with_free_func ((GDestroyNotify) g_strfreev);
printer->current = g_ptr_array_new_with_free_func (g_free);
return printer;
@@ -885,14 +892,14 @@ xdg_app_table_printer_free (XdgAppTablePrinter *printer)
void
xdg_app_table_printer_add_column (XdgAppTablePrinter *printer,
- const char *text)
+ const char *text)
{
g_ptr_array_add (printer->current, text ? g_strdup (text) : g_strdup (""));
}
void
xdg_app_table_printer_append_with_comma (XdgAppTablePrinter *printer,
- const char *text)
+ const char *text)
{
char *old, *new;
@@ -936,7 +943,7 @@ xdg_app_table_printer_print (XdgAppTablePrinter *printer)
for (i = 0; i < printer->rows->len; i++)
{
- char **row = g_ptr_array_index (printer->rows,i);
+ char **row = g_ptr_array_index (printer->rows, i);
for (j = 0; row[j] != NULL; j++)
widths[j] = MAX (widths[j], strlen (row[j]));
@@ -944,7 +951,7 @@ xdg_app_table_printer_print (XdgAppTablePrinter *printer)
for (i = 0; i < printer->rows->len; i++)
{
- char **row = g_ptr_array_index (printer->rows,i);
+ char **row = g_ptr_array_index (printer->rows, i);
for (j = 0; row[j] != NULL; j++)
g_print ("%s%-*s", (j == 0) ? "" : " ", widths[j], row[j]);
@@ -955,11 +962,12 @@ xdg_app_table_printer_print (XdgAppTablePrinter *printer)
static GHashTable *app_ids;
-typedef struct {
- char *name;
- char *app_id;
+typedef struct
+{
+ char *name;
+ char *app_id;
gboolean exited;
- GList *pending;
+ GList *pending;
} AppIdInfo;
static void
@@ -975,17 +983,18 @@ ensure_app_ids (void)
{
if (app_ids == NULL)
app_ids = g_hash_table_new_full (g_str_hash, g_str_equal,
- NULL, (GDestroyNotify)app_id_info_free);
+ NULL, (GDestroyNotify) app_id_info_free);
}
static void
-got_credentials_cb (GObject *source_object,
+got_credentials_cb (GObject *source_object,
GAsyncResult *res,
- gpointer user_data)
+ gpointer user_data)
{
AppIdInfo *info = user_data;
- g_autoptr (GDBusMessage) reply = NULL;
- g_autoptr (GError) error = NULL;
+
+ g_autoptr(GDBusMessage) reply = NULL;
+ g_autoptr(GError) error = NULL;
GList *l;
reply = g_dbus_connection_send_message_with_reply_finish (G_DBUS_CONNECTION (source_object),
@@ -1017,7 +1026,7 @@ got_credentials_cb (GObject *source_object,
if (g_str_has_prefix (scope, "xdg-app-") &&
g_str_has_suffix (scope, ".scope"))
{
- const char *name = scope + strlen("xdg-app-");
+ const char *name = scope + strlen ("xdg-app-");
char *dash = strchr (name, '-');
if (dash != NULL)
{
@@ -1026,7 +1035,9 @@ got_credentials_cb (GObject *source_object,
}
}
else
- info->app_id = g_strdup ("");
+ {
+ info->app_id = g_strdup ("");
+ }
}
}
g_strfreev (lines);
@@ -1059,6 +1070,7 @@ xdg_app_invocation_lookup_app_id (GDBusMethodInvocation *invocation,
{
GDBusConnection *connection = g_dbus_method_invocation_get_connection (invocation);
const gchar *sender = g_dbus_method_invocation_get_sender (invocation);
+
g_autoptr(GTask) task = NULL;
AppIdInfo *info;
@@ -1076,15 +1088,17 @@ xdg_app_invocation_lookup_app_id (GDBusMethodInvocation *invocation,
}
if (info->app_id)
- g_task_return_pointer (task, g_strdup (info->app_id), g_free);
+ {
+ g_task_return_pointer (task, g_strdup (info->app_id), g_free);
+ }
else
{
if (info->pending == NULL)
{
- g_autoptr (GDBusMessage) msg = g_dbus_message_new_method_call ("org.freedesktop.DBus",
- "/org/freedesktop/DBus",
- "org.freedesktop.DBus",
- "GetConnectionUnixProcessID");
+ g_autoptr(GDBusMessage) msg = g_dbus_message_new_method_call ("org.freedesktop.DBus",
+ "/org/freedesktop/DBus",
+ "org.freedesktop.DBus",
+ "GetConnectionUnixProcessID");
g_dbus_message_set_body (msg, g_variant_new ("(s)", sender));
g_dbus_connection_send_message_with_reply (connection, msg,
@@ -1102,8 +1116,8 @@ xdg_app_invocation_lookup_app_id (GDBusMethodInvocation *invocation,
char *
xdg_app_invocation_lookup_app_id_finish (GDBusMethodInvocation *invocation,
- GAsyncResult *result,
- GError **error)
+ GAsyncResult *result,
+ GError **error)
{
return g_task_propagate_pointer (G_TASK (result), error);
}
@@ -1118,6 +1132,7 @@ name_owner_changed (GDBusConnection *connection,
gpointer user_data)
{
const char *name, *from, *to;
+
g_variant_get (parameters, "(sss)", &name, &from, &to);
ensure_app_ids ();
@@ -1153,10 +1168,10 @@ xdg_app_connection_track_name_owners (GDBusConnection *connection)
typedef struct
{
- GError *error;
- GError *splice_error;
+ GError *error;
+ GError *splice_error;
GMainLoop *loop;
- int refs;
+ int refs;
} SpawnData;
static void
@@ -1168,9 +1183,9 @@ spawn_data_exit (SpawnData *data)
}
static void
-spawn_output_spliced_cb (GObject *obj,
- GAsyncResult *result,
- gpointer user_data)
+spawn_output_spliced_cb (GObject *obj,
+ GAsyncResult *result,
+ gpointer user_data)
{
SpawnData *data = user_data;
@@ -1179,9 +1194,9 @@ spawn_output_spliced_cb (GObject *obj,
}
static void
-spawn_exit_cb (GObject *obj,
- GAsyncResult *result,
- gpointer user_data)
+spawn_exit_cb (GObject *obj,
+ GAsyncResult *result,
+ gpointer user_data)
{
SpawnData *data = user_data;
@@ -1190,11 +1205,11 @@ spawn_exit_cb (GObject *obj,
}
gboolean
-xdg_app_spawn (GFile *dir,
- char **output,
- GError **error,
- const gchar *argv0,
- va_list ap)
+xdg_app_spawn (GFile *dir,
+ char **output,
+ GError **error,
+ const gchar *argv0,
+ va_list ap)
{
g_autoptr(GSubprocessLauncher) launcher = NULL;
g_autoptr(GSubprocess) subp = NULL;
@@ -1238,13 +1253,13 @@ xdg_app_spawn (GFile *dir,
data.refs++;
in = g_subprocess_get_stdout_pipe (subp);
out = g_memory_output_stream_new_resizable ();
- g_output_stream_splice_async (out,
- in,
- G_OUTPUT_STREAM_SPLICE_NONE,
- 0,
- NULL,
- spawn_output_spliced_cb,
- &data);
+ g_output_stream_splice_async (out,
+ in,
+ G_OUTPUT_STREAM_SPLICE_NONE,
+ 0,
+ NULL,
+ spawn_output_spliced_cb,
+ &data);
}
g_subprocess_wait_async (subp, NULL, spawn_exit_cb, &data);
@@ -1277,11 +1292,11 @@ xdg_app_spawn (GFile *dir,
gboolean
-xdg_app_cp_a (GFile *src,
- GFile *dest,
- XdgAppCpFlags flags,
- GCancellable *cancellable,
- GError **error)
+xdg_app_cp_a (GFile *src,
+ GFile *dest,
+ XdgAppCpFlags flags,
+ GCancellable *cancellable,
+ GError **error)
{
gboolean ret = FALSE;
GFileEnumerator *enumerator = NULL;
@@ -1300,7 +1315,7 @@ xdg_app_cp_a (GFile *src,
goto out;
src_info = g_file_query_info (src, "standard::name,unix::mode,unix::uid,unix::gid," \
- "time::modified,time::modified-usec,time::access,time::access-usec",
+ "time::modified,time::modified-usec,time::access,time::access-usec",
G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS,
cancellable, error);
if (!src_info)
@@ -1356,7 +1371,8 @@ xdg_app_cp_a (GFile *src,
if (!file_info)
break;
- if (dest_child) g_object_unref (dest_child);
+ if (dest_child)
+ g_object_unref (dest_child);
dest_child = g_file_get_child (dest, g_file_info_get_name (file_info));
if (g_file_info_get_file_type (file_info) == G_FILE_TYPE_DIRECTORY)
@@ -1391,7 +1407,7 @@ xdg_app_cp_a (GFile *src,
goto out;
ret = TRUE;
- out:
+out:
if (dest_dfd != -1)
(void) close (dest_dfd);
g_clear_object (&src_info);
@@ -1401,17 +1417,17 @@ xdg_app_cp_a (GFile *src,
}
gboolean
-xdg_app_variant_save (GFile *dest,
- GVariant *variant,
+xdg_app_variant_save (GFile *dest,
+ GVariant *variant,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
g_autoptr(GOutputStream) out = NULL;
gsize bytes_written;
- out = (GOutputStream*)g_file_replace (dest, NULL, FALSE,
- G_FILE_CREATE_REPLACE_DESTINATION,
- cancellable, error);
+ out = (GOutputStream *) g_file_replace (dest, NULL, FALSE,
+ G_FILE_CREATE_REPLACE_DESTINATION,
+ cancellable, error);
if (out == NULL)
return FALSE;
@@ -1458,7 +1474,9 @@ xdg_app_variant_bsearch_str (GVariant *array,
cmp = strcmp (cur, str);
if (cmp < 0)
- imin = imid + 1;
+ {
+ imin = imid + 1;
+ }
else if (cmp > 0)
{
if (imid == 0)
@@ -1507,7 +1525,7 @@ xdg_app_summary_lookup_ref (GVariant *summary, const char *ref, char **out_check
gboolean
xdg_app_repo_set_title (OstreeRepo *repo,
const char *title,
- GError **error)
+ GError **error)
{
g_autoptr(GKeyFile) config = NULL;
@@ -1528,13 +1546,13 @@ xdg_app_repo_set_title (OstreeRepo *repo,
"unix::device,unix::inode,unix::mode,unix::uid,unix::gid,unix::rdev")
static gboolean
-_xdg_app_repo_collect_sizes (OstreeRepo *repo,
- GFile *file,
- GFileInfo *file_info,
- guint64 *installed_size,
- guint64 *download_size,
+_xdg_app_repo_collect_sizes (OstreeRepo *repo,
+ GFile *file,
+ GFileInfo *file_info,
+ guint64 *installed_size,
+ guint64 *download_size,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
g_autoptr(GFileEnumerator) dir_enum = NULL;
GFileInfo *child_info_tmp;
@@ -1584,12 +1602,12 @@ _xdg_app_repo_collect_sizes (OstreeRepo *repo,
}
gboolean
-xdg_app_repo_collect_sizes (OstreeRepo *repo,
- GFile *root,
- guint64 *installed_size,
- guint64 *download_size,
+xdg_app_repo_collect_sizes (OstreeRepo *repo,
+ GFile *root,
+ guint64 *installed_size,
+ guint64 *download_size,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
return _xdg_app_repo_collect_sizes (repo, root, NULL, installed_size, download_size, cancellable, error);
}
@@ -1605,6 +1623,7 @@ xdg_app_repo_update (OstreeRepo *repo,
GVariantBuilder ref_data_builder;
GKeyFile *config;
g_autofree char *title = NULL;
+
g_autoptr(GHashTable) refs = NULL;
GList *ordered_keys = NULL;
GList *l = NULL;
@@ -1614,22 +1633,20 @@ xdg_app_repo_update (OstreeRepo *repo,
config = ostree_repo_get_config (repo);
if (config)
- {
- title = g_key_file_get_string (config, "xdg-app", "title", NULL);
- }
+ title = g_key_file_get_string (config, "xdg-app", "title", NULL);
if (title)
g_variant_builder_add (&builder, "{sv}", "xa.title",
g_variant_new_string (title));
- g_variant_builder_init (&ref_data_builder, G_VARIANT_TYPE("a{s(tts)}"));
+ g_variant_builder_init (&ref_data_builder, G_VARIANT_TYPE ("a{s(tts)}"));
if (!ostree_repo_list_refs (repo, NULL, &refs, cancellable, error))
return FALSE;
ordered_keys = g_hash_table_get_keys (refs);
- ordered_keys = g_list_sort (ordered_keys, (GCompareFunc)strcmp);
+ ordered_keys = g_list_sort (ordered_keys, (GCompareFunc) strcmp);
for (l = ordered_keys; l; l = l->next)
{
@@ -1708,8 +1725,8 @@ xdg_app_mtree_create_root (OstreeRepo *repo,
static OstreeRepoCommitFilterResult
commit_filter (OstreeRepo *repo,
const char *path,
- GFileInfo *file_info,
- gpointer user_data)
+ GFileInfo *file_info,
+ gpointer user_data)
{
guint current_mode;
@@ -1725,10 +1742,10 @@ commit_filter (OstreeRepo *repo,
}
static gboolean
-validate_component (XdgAppXml *component,
+validate_component (XdgAppXml *component,
const char *ref,
const char *id,
- char **tags,
+ char **tags,
const char *runtime,
const char *sdk)
{
@@ -1820,17 +1837,18 @@ validate_component (XdgAppXml *component,
}
gboolean
-xdg_app_appstream_xml_migrate (XdgAppXml *source,
- XdgAppXml *dest,
+xdg_app_appstream_xml_migrate (XdgAppXml *source,
+ XdgAppXml *dest,
const char *ref,
const char *id,
- GKeyFile *metadata)
+ GKeyFile *metadata)
{
XdgAppXml *source_components;
XdgAppXml *dest_components;
XdgAppXml *component;
XdgAppXml *prev_component;
gboolean migrated = FALSE;
+
g_auto(GStrv) tags = NULL;
g_autofree const char *runtime = NULL;
g_autofree const char *sdk = NULL;
@@ -1866,7 +1884,9 @@ xdg_app_appstream_xml_migrate (XdgAppXml *source,
migrated = TRUE;
}
else
- prev_component = component;
+ {
+ prev_component = component;
+ }
component = next;
}
@@ -1876,16 +1896,17 @@ xdg_app_appstream_xml_migrate (XdgAppXml *source,
static gboolean
copy_icon (const char *id,
- GFile *root,
- GFile *dest,
+ GFile *root,
+ GFile *dest,
const char *size,
- GError **error)
+ GError **error)
{
g_autofree char *icon_name = g_strconcat (id, ".png", NULL);
+
g_autoptr(GFile) icons_dir =
g_file_resolve_relative_path (root,
"files/share/app-info/icons/xdg-app");
- g_autoptr(GFile) size_dir =g_file_get_child (icons_dir, size);
+ g_autoptr(GFile) size_dir = g_file_get_child (icons_dir, size);
g_autoptr(GFile) icon_file = g_file_get_child (size_dir, icon_name);
g_autoptr(GFile) dest_dir = g_file_get_child (dest, "icons");
g_autoptr(GFile) dest_size_dir = g_file_get_child (dest_dir, size);
@@ -1894,16 +1915,16 @@ copy_icon (const char *id,
g_autoptr(GOutputStream) out = NULL;
gssize n_bytes_written;
- in = (GInputStream*)g_file_read (icon_file, NULL, error);
+ in = (GInputStream *) g_file_read (icon_file, NULL, error);
if (!in)
return FALSE;
if (!gs_file_ensure_directory (dest_size_dir, TRUE, NULL, error))
return FALSE;
- out = (GOutputStream*)g_file_replace (dest_file, NULL, FALSE,
- G_FILE_CREATE_REPLACE_DESTINATION,
- NULL, error);
+ out = (GOutputStream *) g_file_replace (dest_file, NULL, FALSE,
+ G_FILE_CREATE_REPLACE_DESTINATION,
+ NULL, error);
if (!out)
return FALSE;
@@ -1917,13 +1938,13 @@ copy_icon (const char *id,
}
static gboolean
-extract_appstream (OstreeRepo *repo,
- XdgAppXml *appstream_root,
- const char *ref,
- const char *id,
- GFile *dest,
- GCancellable *cancellable,
- GError **error)
+extract_appstream (OstreeRepo *repo,
+ XdgAppXml *appstream_root,
+ const char *ref,
+ const char *id,
+ GFile *dest,
+ GCancellable *cancellable,
+ GError **error)
{
g_autoptr(GFile) root = NULL;
g_autoptr(GFile) xmls_dir = NULL;
@@ -1955,7 +1976,7 @@ extract_appstream (OstreeRepo *repo,
appstream_basename = g_strconcat (id, ".xml.gz", NULL);
appstream_file = g_file_get_child (xmls_dir, appstream_basename);
- in = (GInputStream*)g_file_read (appstream_file, cancellable, error);
+ in = (GInputStream *) g_file_read (appstream_file, cancellable, error);
if (!in)
return FALSE;
@@ -1992,7 +2013,7 @@ extract_appstream (OstreeRepo *repo,
}
g_print ("Extracting icons for component %s\n", component_id_text);
- component_id_text[strlen(component_id_text)-strlen(".desktop")] = 0;
+ component_id_text[strlen (component_id_text) - strlen (".desktop")] = 0;
if (!copy_icon (component_id_text, root, dest, "64x64", &my_error))
{
@@ -2035,7 +2056,7 @@ xdg_app_appstream_xml_new (void)
GBytes *
xdg_app_appstream_xml_root_to_data (XdgAppXml *appstream_root,
- GError **error)
+ GError **error)
{
g_autoptr(GString) xml = NULL;
g_autoptr(GZlibCompressor) compressor = NULL;
@@ -2060,11 +2081,11 @@ xdg_app_appstream_xml_root_to_data (XdgAppXml *appstream_root,
}
gboolean
-xdg_app_repo_generate_appstream (OstreeRepo *repo,
- const char **gpg_key_ids,
- const char *gpg_homedir,
- GCancellable *cancellable,
- GError **error)
+xdg_app_repo_generate_appstream (OstreeRepo *repo,
+ const char **gpg_key_ids,
+ const char *gpg_homedir,
+ GCancellable *cancellable,
+ GError **error)
{
g_autoptr(GHashTable) all_refs = NULL;
g_autoptr(GHashTable) arches = NULL;
@@ -2095,7 +2116,7 @@ xdg_app_repo_generate_appstream (OstreeRepo *repo,
arch = split[2];
if (!g_hash_table_contains (arches, arch))
- g_hash_table_insert (arches, g_strdup (arch), GINT_TO_POINTER(1));
+ g_hash_table_insert (arches, g_strdup (arch), GINT_TO_POINTER (1));
}
g_hash_table_iter_init (&iter, arches);
@@ -2174,7 +2195,7 @@ xdg_app_repo_generate_appstream (OstreeRepo *repo,
mtree = ostree_mutable_tree_new ();
modifier = ostree_repo_commit_modifier_new (OSTREE_REPO_COMMIT_MODIFIER_FLAGS_SKIP_XATTRS,
- (OstreeRepoCommitFilter)commit_filter, NULL, NULL);
+ (OstreeRepoCommitFilter) commit_filter, NULL, NULL);
if (!ostree_repo_write_directory_to_mtree (repo, G_FILE (tmpdir_file), mtree, modifier, cancellable, error))
goto out;
@@ -2226,12 +2247,14 @@ xdg_app_repo_generate_appstream (OstreeRepo *repo,
goto out;
}
else
- ostree_repo_abort_transaction (repo, cancellable, NULL);
+ {
+ ostree_repo_abort_transaction (repo, cancellable, NULL);
+ }
}
return TRUE;
- out:
+out:
ostree_repo_abort_transaction (repo, cancellable, NULL);
return FALSE;
}
@@ -2263,7 +2286,7 @@ xdg_app_extension_new (const char *id,
}
GList *
-xdg_app_list_extensions (GKeyFile *metakey,
+xdg_app_list_extensions (GKeyFile *metakey,
const char *arch,
const char *default_branch)
{
@@ -2332,7 +2355,8 @@ xdg_app_list_extensions (GKeyFile *metakey,
}
-typedef struct {
+typedef struct
+{
XdgAppXml *current;
} XmlData;
@@ -2340,6 +2364,7 @@ XdgAppXml *
xdg_app_xml_new (const gchar *element_name)
{
XdgAppXml *node = g_new0 (XdgAppXml, 1);
+
node->element_name = g_strdup (element_name);
return node;
}
@@ -2348,6 +2373,7 @@ XdgAppXml *
xdg_app_xml_new_text (const gchar *text)
{
XdgAppXml *node = g_new0 (XdgAppXml, 1);
+
node->text = g_strdup (text);
return node;
}
@@ -2376,8 +2402,8 @@ xml_start_element (GMarkupParseContext *context,
XdgAppXml *node;
node = xdg_app_xml_new (element_name);
- node->attribute_names = g_strdupv ((char **)attribute_names);
- node->attribute_values = g_strdupv ((char **)attribute_values);
+ node->attribute_names = g_strdupv ((char **) attribute_names);
+ node->attribute_values = g_strdupv ((char **) attribute_values);
xdg_app_xml_add (data->current, node);
data->current = node;
@@ -2390,6 +2416,7 @@ xml_end_element (GMarkupParseContext *context,
GError **error)
{
XmlData *data = user_data;
+
data->current = data->current->parent;
}
@@ -2524,7 +2551,7 @@ xdg_app_xml_unlink (XdgAppXml *node,
}
XdgAppXml *
-xdg_app_xml_find (XdgAppXml *node,
+xdg_app_xml_find (XdgAppXml *node,
const char *type,
XdgAppXml **prev_child_out)
{
@@ -2554,15 +2581,14 @@ xdg_app_xml_find (XdgAppXml *node,
XdgAppXml *
xdg_app_xml_parse (GInputStream *in,
- gboolean compressed,
+ gboolean compressed,
GCancellable *cancellable,
- GError **error)
-
+ GError **error)
{
g_autoptr(GInputStream) real_in = NULL;
g_autoptr(XdgAppXml) xml_root = NULL;
XmlData data = { 0 };
- char buffer[32*1024];
+ char buffer[32 * 1024];
gssize len;
g_autoptr(GMarkupParseContext) ctx = NULL;
@@ -2573,7 +2599,9 @@ xdg_app_xml_parse (GInputStream *in,
real_in = g_converter_input_stream_new (in, G_CONVERTER (decompressor));
}
else
- real_in = g_object_ref (in);
+ {
+ real_in = g_object_ref (in);
+ }
xml_root = xdg_app_xml_new ("root");
data.current = xml_root;
@@ -2602,7 +2630,7 @@ xdg_app_xml_parse (GInputStream *in,
static inline guint64
maybe_swap_endian_u64 (gboolean swap,
- guint64 v)
+ guint64 v)
{
if (!swap)
return v;
@@ -2613,6 +2641,7 @@ static guint64
xdg_app_bundle_get_installed_size (GVariant *bundle, gboolean byte_swap)
{
guint64 total_size = 0, total_usize = 0;
+
g_autoptr(GVariant) meta_entries = NULL;
guint i, n_parts;
@@ -2637,10 +2666,10 @@ xdg_app_bundle_get_installed_size (GVariant *bundle, gboolean byte_swap)
}
GVariant *
-xdg_app_bundle_load (GFile *file,
- char **commit,
- char **ref,
- char **origin,
+xdg_app_bundle_load (GFile *file,
+ char **commit,
+ char **ref,
+ char **origin,
guint64 *installed_size,
GBytes **gpg_keys,
GError **error)
@@ -2683,9 +2712,11 @@ xdg_app_bundle_load (GFile *file,
case 'l':
file_byte_order = G_LITTLE_ENDIAN;
break;
+
case 'B':
file_byte_order = G_BIG_ENDIAN;
break;
+
default:
break;
}
@@ -2710,16 +2741,18 @@ xdg_app_bundle_load (GFile *file,
if (gpg_keys != NULL)
{
- g_autoptr(GVariant) gpg_value = g_variant_lookup_value (metadata, "gpg-keys",
- G_VARIANT_TYPE("ay"));
- if (gpg_value)
- {
- gsize n_elements;
- const char *data = g_variant_get_fixed_array (gpg_value, &n_elements, 1);
- *gpg_keys = g_bytes_new (data, n_elements);
- }
- else
+ g_autoptr(GVariant) gpg_value = g_variant_lookup_value (metadata, "gpg-keys",
+ G_VARIANT_TYPE ("ay"));
+ if (gpg_value)
+ {
+ gsize n_elements;
+ const char *data = g_variant_get_fixed_array (gpg_value, &n_elements, 1);
+ *gpg_keys = g_bytes_new (data, n_elements);
+ }
+ else
+ {
*gpg_keys = NULL;
+ }
}
/* Make a copy of the data so we can return it after freeing the file */
@@ -2730,16 +2763,17 @@ xdg_app_bundle_load (GFile *file,
}
gboolean
-xdg_app_pull_from_bundle (OstreeRepo *repo,
- GFile *file,
- const char *remote,
- const char *ref,
- gboolean require_gpg_signature,
+xdg_app_pull_from_bundle (OstreeRepo *repo,
+ GFile *file,
+ const char *remote,
+ const char *ref,
+ gboolean require_gpg_signature,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
g_autofree char *metadata_contents = NULL;
g_autofree char *to_checksum = NULL;
+
g_autoptr(GFile) root = NULL;
g_autoptr(GFile) metadata_file = NULL;
g_autoptr(GInputStream) in = NULL;
@@ -2774,7 +2808,9 @@ xdg_app_pull_from_bundle (OstreeRepo *repo,
* is no gpg key specified in the bundle or by the user */
if (g_error_matches (my_error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND) &&
!require_gpg_signature)
- g_clear_error (&my_error);
+ {
+ g_clear_error (&my_error);
+ }
else
{
g_propagate_error (error, g_steal_pointer (&my_error));
@@ -2801,10 +2837,10 @@ xdg_app_pull_from_bundle (OstreeRepo *repo,
header, because you may have made decisions on wheter to install it or not
based on that data. */
metadata_file = g_file_resolve_relative_path (root, "metadata");
- in = (GInputStream*)g_file_read (metadata_file, cancellable, NULL);
+ in = (GInputStream *) g_file_read (metadata_file, cancellable, NULL);
if (in != NULL)
{
- g_autoptr(GMemoryOutputStream) data_stream = (GMemoryOutputStream*)g_memory_output_stream_new_resizable ();
+ g_autoptr(GMemoryOutputStream) data_stream = (GMemoryOutputStream *) g_memory_output_stream_new_resizable ();
if (g_output_stream_splice (G_OUTPUT_STREAM (data_stream), in,
G_OUTPUT_STREAM_SPLICE_CLOSE_SOURCE,
@@ -2819,7 +2855,9 @@ xdg_app_pull_from_bundle (OstreeRepo *repo,
strcmp (metadata_contents, g_memory_output_stream_get_data (data_stream)) == 0;
}
else
- metadata_valid = (metadata_contents == NULL);
+ {
+ metadata_valid = (metadata_contents == NULL);
+ }
if (!metadata_valid)
{
@@ -2834,19 +2872,20 @@ xdg_app_pull_from_bundle (OstreeRepo *repo,
/* This allocates and locks a subdir of the tmp dir, using an existing
* one with the same prefix if it is not in use already. */
gboolean
-xdg_app_allocate_tmpdir (int tmpdir_dfd,
- const char *tmpdir_relpath,
- const char *tmpdir_prefix,
- char **tmpdir_name_out,
- int *tmpdir_fd_out,
+xdg_app_allocate_tmpdir (int tmpdir_dfd,
+ const char *tmpdir_relpath,
+ const char *tmpdir_prefix,
+ char **tmpdir_name_out,
+ int *tmpdir_fd_out,
GLnxLockFile *file_lock_out,
- gboolean *reusing_dir_out,
+ gboolean *reusing_dir_out,
GCancellable *cancellable,
- GError **error)
+ GError **error)
{
gboolean reusing_dir = FALSE;
g_autofree char *tmpdir_name = NULL;
glnx_fd_close int tmpdir_fd = -1;
+
g_auto(GLnxDirFdIterator) dfd_iter = { 0, };
/* Look for existing tmpdir (with same prefix) to reuse */
@@ -2879,7 +2918,9 @@ xdg_app_allocate_tmpdir (int tmpdir_dfd,
&existing_tmpdir_fd, &local_error))
{
if (g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_NOT_DIRECTORY))
- continue;
+ {
+ continue;
+ }
else
{
g_propagate_error (error, g_steal_pointer (&local_error));
@@ -2895,7 +2936,9 @@ xdg_app_allocate_tmpdir (int tmpdir_dfd,
file_lock_out, &local_error))
{
if (g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_WOULD_BLOCK))
- continue;
+ {
+ continue;
+ }
else
{
g_propagate_error (error, g_steal_pointer (&local_error));
@@ -2906,7 +2949,7 @@ xdg_app_allocate_tmpdir (int tmpdir_dfd,
/* Touch the reused directory so that we don't accidentally
* remove it due to being old when cleaning up the tmpdir
*/
- (void)futimens (existing_tmpdir_fd, NULL);
+ (void) futimens (existing_tmpdir_fd, NULL);
/* We found an existing tmpdir which we managed to lock */
tmpdir_name = g_strdup (dent->d_name);
@@ -2938,7 +2981,9 @@ xdg_app_allocate_tmpdir (int tmpdir_dfd,
file_lock_out, &local_error))
{
if (g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_WOULD_BLOCK))
- continue;
+ {
+ continue;
+ }
else
{
g_propagate_error (error, g_steal_pointer (&local_error));
diff --git a/common/xdg-app-utils.h b/common/xdg-app-utils.h
index 7dae810..e342145 100644
--- a/common/xdg-app-utils.h
+++ b/common/xdg-app-utils.h
@@ -31,10 +31,12 @@
#include "xdg-app-dir.h"
#include <ostree.h>
-gboolean xdg_app_fail (GError **error, const char *format, ...);
+gboolean xdg_app_fail (GError **error,
+ const char *format,
+ ...);
-gint xdg_app_strcmp0_ptr (gconstpointer a,
- gconstpointer b);
+gint xdg_app_strcmp0_ptr (gconstpointer a,
+ gconstpointer b);
const char * xdg_app_path_match_prefix (const char *pattern,
const char *path);
@@ -44,19 +46,19 @@ const char * xdg_app_get_arch (void);
const char * xdg_app_get_bwrap (void);
GBytes * xdg_app_read_stream (GInputStream *in,
- gboolean null_terminate,
- GError **error);
+ gboolean null_terminate,
+ GError **error);
-gboolean xdg_app_variant_save (GFile *dest,
- GVariant *variant,
+gboolean xdg_app_variant_save (GFile *dest,
+ GVariant *variant,
GCancellable *cancellable,
- GError **error);
+ GError **error);
gboolean xdg_app_variant_bsearch_str (GVariant *array,
const char *str,
int *out_pos);
-gboolean xdg_app_summary_lookup_ref (GVariant *summary,
+gboolean xdg_app_summary_lookup_ref (GVariant *summary,
const char *ref,
- char **out_checksum);
+ char **out_checksum);
gboolean xdg_app_has_name_prefix (const char *string,
const char *name);
@@ -64,13 +66,13 @@ gboolean xdg_app_is_valid_name (const char *string);
gboolean xdg_app_is_valid_branch (const char *string);
char **xdg_app_decompose_ref (const char *ref,
- GError **error);
+ GError **error);
-char * xdg_app_compose_ref (gboolean app,
+char * xdg_app_compose_ref (gboolean app,
const char *name,
const char *branch,
const char *arch,
- GError **error);
+ GError **error);
char * xdg_app_build_untyped_ref (const char *runtime,
const char *branch,
@@ -81,44 +83,44 @@ char * xdg_app_build_runtime_ref (const char *runtime,
char * xdg_app_build_app_ref (const char *app,
const char *branch,
const char *arch);
-GFile * xdg_app_find_deploy_dir_for_ref (const char *ref,
+GFile * xdg_app_find_deploy_dir_for_ref (const char *ref,
GCancellable *cancellable,
- GError **error);
-XdgAppDeploy * xdg_app_find_deploy_for_ref (const char *ref,
+ GError **error);
+XdgAppDeploy * xdg_app_find_deploy_for_ref (const char *ref,
GCancellable *cancellable,
- GError **error);
-char ** xdg_app_list_deployed_refs (const char *type,
- const char *name_prefix,
- const char *branch,
- const char *arch,
- GCancellable *cancellable,
- GError **error);
-
-gboolean xdg_app_overlay_symlink_tree (GFile *source,
- GFile *destination,
- const char *symlink_prefix,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_remove_dangling_symlinks (GFile *dir,
- GCancellable *cancellable,
- GError **error);
-
-void xdg_app_invocation_lookup_app_id (GDBusMethodInvocation *invocation,
- GCancellable *cancellable,
- GAsyncReadyCallback callback,
- gpointer user_data);
-
-char *xdg_app_invocation_lookup_app_id_finish (GDBusMethodInvocation *invocation,
- GAsyncResult *result,
- GError **error);
-
-void xdg_app_connection_track_name_owners (GDBusConnection *connection);
-
-#if !GLIB_CHECK_VERSION(2,40,0)
+ GError **error);
+char ** xdg_app_list_deployed_refs (const char *type,
+ const char *name_prefix,
+ const char *branch,
+ const char *arch,
+ GCancellable *cancellable,
+ GError **error);
+
+gboolean xdg_app_overlay_symlink_tree (GFile *source,
+ GFile *destination,
+ const char *symlink_prefix,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_remove_dangling_symlinks (GFile *dir,
+ GCancellable *cancellable,
+ GError **error);
+
+void xdg_app_invocation_lookup_app_id (GDBusMethodInvocation *invocation,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+char *xdg_app_invocation_lookup_app_id_finish (GDBusMethodInvocation *invocation,
+ GAsyncResult *result,
+ GError **error);
+
+void xdg_app_connection_track_name_owners (GDBusConnection *connection);
+
+#if !GLIB_CHECK_VERSION (2, 40, 0)
static inline gboolean
-g_key_file_save_to_file (GKeyFile *key_file,
- const gchar *filename,
- GError **error)
+g_key_file_save_to_file (GKeyFile *key_file,
+ const gchar *filename,
+ GError **error)
{
gchar *contents;
gboolean success;
@@ -151,74 +153,77 @@ g_strv_subset (const gchar * const *strv,
return NULL;
}
-static inline void xdg_app_auto_unlock_helper (GMutex **mutex)
+static inline void
+xdg_app_auto_unlock_helper (GMutex **mutex)
{
if (*mutex)
g_mutex_unlock (*mutex);
}
-static inline GMutex *xdg_app_auto_lock_helper (GMutex *mutex)
+static inline GMutex *
+xdg_app_auto_lock_helper (GMutex *mutex)
{
if (mutex)
g_mutex_lock (mutex);
return mutex;
}
-gint xdg_app_mkstempat (int dir_fd,
+gint xdg_app_mkstempat (int dir_fd,
gchar *tmpl,
- int flags,
- int mode);
+ int flags,
+ int mode);
typedef struct XdgAppTablePrinter XdgAppTablePrinter;
-XdgAppTablePrinter *xdg_app_table_printer_new (void);
-void xdg_app_table_printer_free (XdgAppTablePrinter *printer);
-void xdg_app_table_printer_add_column (XdgAppTablePrinter *printer,
- const char *text);
+XdgAppTablePrinter *xdg_app_table_printer_new (void);
+void xdg_app_table_printer_free (XdgAppTablePrinter *printer);
+void xdg_app_table_printer_add_column (XdgAppTablePrinter *printer,
+ const char *text);
void xdg_app_table_printer_append_with_comma (XdgAppTablePrinter *printer,
const char *text);
-void xdg_app_table_printer_finish_row (XdgAppTablePrinter *printer);
-void xdg_app_table_printer_print (XdgAppTablePrinter *printer);
-
-gboolean xdg_app_repo_set_title (OstreeRepo *repo,
- const char *title,
- GError **error);
-gboolean xdg_app_repo_update (OstreeRepo *repo,
- const char **gpg_key_ids,
- const char *gpg_homedir,
- GCancellable *cancellable,
- GError **error);
-gboolean xdg_app_repo_collect_sizes (OstreeRepo *repo,
- GFile *root,
- guint64 *installed_size,
- guint64 *download_size,
+void xdg_app_table_printer_finish_row (XdgAppTablePrinter *printer);
+void xdg_app_table_printer_print (XdgAppTablePrinter *printer);
+
+gboolean xdg_app_repo_set_title (OstreeRepo *repo,
+ const char *title,
+ GError **error);
+gboolean xdg_app_repo_update (OstreeRepo *repo,
+ const char **gpg_key_ids,
+ const char *gpg_homedir,
+ GCancellable *cancellable,
+ GError **error);
+gboolean xdg_app_repo_collect_sizes (OstreeRepo *repo,
+ GFile *root,
+ guint64 *installed_size,
+ guint64 *download_size,
GCancellable *cancellable,
- GError **error);
+ GError **error);
gboolean xdg_app_mtree_create_root (OstreeRepo *repo,
OstreeMutableTree *mtree,
GCancellable *cancellable,
GError **error);
-GVariant * xdg_app_bundle_load (GFile *file,
- char **commit,
- char **ref,
- char **origin,
+GVariant * xdg_app_bundle_load (GFile *file,
+ char **commit,
+ char **ref,
+ char **origin,
guint64 *installed_size,
GBytes **gpg_keys,
GError **error);
-gboolean xdg_app_pull_from_bundle (OstreeRepo *repo,
- GFile *file,
- const char *remote,
- const char *ref,
- gboolean require_gpg_signature,
+gboolean xdg_app_pull_from_bundle (OstreeRepo *repo,
+ GFile *file,
+ const char *remote,
+ const char *ref,
+ gboolean require_gpg_signature,
GCancellable *cancellable,
- GError **error);
+ GError **error);
-typedef struct {
+typedef struct
+{
char *id;
char *installed_id;
char *ref;
@@ -227,15 +232,15 @@ typedef struct {
void xdg_app_extension_free (XdgAppExtension *extension);
-GList *xdg_app_list_extensions (GKeyFile *metakey,
+GList *xdg_app_list_extensions (GKeyFile *metakey,
const char *arch,
const char *branch);
-gboolean xdg_app_spawn (GFile *dir,
- char **output,
- GError **error,
- const gchar *argv0,
- va_list args);
+gboolean xdg_app_spawn (GFile *dir,
+ char **output,
+ GError **error,
+ const gchar *argv0,
+ va_list args);
typedef enum {
XDG_APP_CP_FLAGS_NONE = 0,
@@ -244,14 +249,14 @@ typedef enum {
XDG_APP_CP_FLAGS_MOVE = 1<<2,
} XdgAppCpFlags;
-gboolean xdg_app_cp_a (GFile *src,
- GFile *dest,
- XdgAppCpFlags flags,
- GCancellable *cancellable,
- GError **error);
+gboolean xdg_app_cp_a (GFile *src,
+ GFile *dest,
+ XdgAppCpFlags flags,
+ GCancellable *cancellable,
+ GError **error);
-#define xdg_app_autorm_rf _GLIB_CLEANUP(g_autoptr_cleanup_generic_gfree)
+#define xdg_app_autorm_rf _GLIB_CLEANUP (g_autoptr_cleanup_generic_gfree)
static inline void
xdg_app_temp_dir_destroy (void *p)
@@ -267,85 +272,86 @@ xdg_app_temp_dir_destroy (void *p)
typedef GFile XdgAppTempDir;
-G_DEFINE_AUTOPTR_CLEANUP_FUNC(XdgAppTempDir, xdg_app_temp_dir_destroy)
+G_DEFINE_AUTOPTR_CLEANUP_FUNC (XdgAppTempDir, xdg_app_temp_dir_destroy)
-#define AUTOLOCK(name) G_GNUC_UNUSED __attribute__((cleanup(xdg_app_auto_unlock_helper))) GMutex * G_PASTE(auto_unlock, __LINE__) = xdg_app_auto_lock_helper (&G_LOCK_NAME (name))
+#define AUTOLOCK(name) G_GNUC_UNUSED __attribute__((cleanup (xdg_app_auto_unlock_helper))) GMutex * G_PASTE (auto_unlock, __LINE__) = xdg_app_auto_lock_helper (&G_LOCK_NAME (name))
-G_DEFINE_AUTOPTR_CLEANUP_FUNC(OstreeRepo, g_object_unref)
-G_DEFINE_AUTOPTR_CLEANUP_FUNC(OstreeMutableTree, g_object_unref)
-G_DEFINE_AUTOPTR_CLEANUP_FUNC(OstreeAsyncProgress, g_object_unref)
-G_DEFINE_AUTOPTR_CLEANUP_FUNC(OstreeGpgVerifyResult, g_object_unref)
-G_DEFINE_AUTOPTR_CLEANUP_FUNC(OstreeRepoCommitModifier, ostree_repo_commit_modifier_unref)
+G_DEFINE_AUTOPTR_CLEANUP_FUNC (OstreeRepo, g_object_unref)
+G_DEFINE_AUTOPTR_CLEANUP_FUNC (OstreeMutableTree, g_object_unref)
+G_DEFINE_AUTOPTR_CLEANUP_FUNC (OstreeAsyncProgress, g_object_unref)
+G_DEFINE_AUTOPTR_CLEANUP_FUNC (OstreeGpgVerifyResult, g_object_unref)
+G_DEFINE_AUTOPTR_CLEANUP_FUNC (OstreeRepoCommitModifier, ostree_repo_commit_modifier_unref)
#ifndef SOUP_AUTOCLEANUPS_H
-G_DEFINE_AUTOPTR_CLEANUP_FUNC(SoupSession, g_object_unref)
-G_DEFINE_AUTOPTR_CLEANUP_FUNC(SoupMessage, g_object_unref)
-G_DEFINE_AUTOPTR_CLEANUP_FUNC(SoupRequest, g_object_unref)
-G_DEFINE_AUTOPTR_CLEANUP_FUNC(SoupURI, soup_uri_free)
+G_DEFINE_AUTOPTR_CLEANUP_FUNC (SoupSession, g_object_unref)
+G_DEFINE_AUTOPTR_CLEANUP_FUNC (SoupMessage, g_object_unref)
+G_DEFINE_AUTOPTR_CLEANUP_FUNC (SoupRequest, g_object_unref)
+G_DEFINE_AUTOPTR_CLEANUP_FUNC (SoupURI, soup_uri_free)
#endif
/* This uses a weird Auto prefix to avoid conflicts with later added autogenerated autoptr support, per:
* https://git.gnome.org/browse/glib/commit/?id=1c6cd5f0a3104aa9b62c7f1d3086181f63e71b59
*/
typedef XdgAppSessionHelper AutoXdgAppSessionHelper;
-G_DEFINE_AUTOPTR_CLEANUP_FUNC(AutoXdgAppSessionHelper, g_object_unref)
+G_DEFINE_AUTOPTR_CLEANUP_FUNC (AutoXdgAppSessionHelper, g_object_unref)
typedef struct XdgAppXml XdgAppXml;
-struct XdgAppXml {
- gchar *element_name; /* NULL == text */
- char **attribute_names;
- char **attribute_values;
- char *text;
+struct XdgAppXml
+{
+ gchar *element_name; /* NULL == text */
+ char **attribute_names;
+ char **attribute_values;
+ char *text;
XdgAppXml *parent;
XdgAppXml *first_child;
XdgAppXml *last_child;
XdgAppXml *next_sibling;
};
-XdgAppXml *xdg_app_xml_new (const gchar *element_name);
-XdgAppXml *xdg_app_xml_new_text (const gchar *text);
-void xdg_app_xml_add (XdgAppXml *parent,
- XdgAppXml *node);
-void xdg_app_xml_free (XdgAppXml *node);
-XdgAppXml *xdg_app_xml_parse (GInputStream *in,
- gboolean compressed,
- GCancellable *cancellable,
- GError **error);
-void xdg_app_xml_to_string (XdgAppXml *node,
- GString *res);
-XdgAppXml *xdg_app_xml_unlink (XdgAppXml *node,
- XdgAppXml *prev_sibling);
-XdgAppXml *xdg_app_xml_find (XdgAppXml *node,
- const char *type,
- XdgAppXml **prev_child_out);
-
-G_DEFINE_AUTOPTR_CLEANUP_FUNC(XdgAppXml, xdg_app_xml_free);
-
-
-XdgAppXml *xdg_app_appstream_xml_new (void);
-gboolean xdg_app_appstream_xml_migrate (XdgAppXml *source,
- XdgAppXml *dest,
- const char *ref,
- const char *id,
- GKeyFile *metadata);
-GBytes *xdg_app_appstream_xml_root_to_data (XdgAppXml *appstream_root,
- GError **error);
-gboolean xdg_app_repo_generate_appstream (OstreeRepo *repo,
- const char **gpg_key_ids,
- const char *gpg_homedir,
- GCancellable *cancellable,
- GError **error);
-
-gboolean xdg_app_allocate_tmpdir (int tmpdir_dfd,
- const char *tmpdir_relpath,
- const char *tmpdir_prefix,
- char **tmpdir_name_out,
- int *tmpdir_fd_out,
+XdgAppXml *xdg_app_xml_new (const gchar *element_name);
+XdgAppXml *xdg_app_xml_new_text (const gchar *text);
+void xdg_app_xml_add (XdgAppXml *parent,
+ XdgAppXml *node);
+void xdg_app_xml_free (XdgAppXml *node);
+XdgAppXml *xdg_app_xml_parse (GInputStream *in,
+ gboolean compressed,
+ GCancellable *cancellable,
+ GError **error);
+void xdg_app_xml_to_string (XdgAppXml *node,
+ GString *res);
+XdgAppXml *xdg_app_xml_unlink (XdgAppXml *node,
+ XdgAppXml *prev_sibling);
+XdgAppXml *xdg_app_xml_find (XdgAppXml *node,
+ const char *type,
+ XdgAppXml **prev_child_out);
+
+G_DEFINE_AUTOPTR_CLEANUP_FUNC (XdgAppXml, xdg_app_xml_free);
+
+
+XdgAppXml *xdg_app_appstream_xml_new (void);
+gboolean xdg_app_appstream_xml_migrate (XdgAppXml *source,
+ XdgAppXml *dest,
+ const char *ref,
+ const char *id,
+ GKeyFile *metadata);
+GBytes *xdg_app_appstream_xml_root_to_data (XdgAppXml *appstream_root,
+ GError **error);
+gboolean xdg_app_repo_generate_appstream (OstreeRepo *repo,
+ const char **gpg_key_ids,
+ const char *gpg_homedir,
+ GCancellable *cancellable,
+ GError **error);
+
+gboolean xdg_app_allocate_tmpdir (int tmpdir_dfd,
+ const char *tmpdir_relpath,
+ const char *tmpdir_prefix,
+ char **tmpdir_name_out,
+ int *tmpdir_fd_out,
GLnxLockFile *file_lock_out,
- gboolean *reusing_dir_out,
+ gboolean *reusing_dir_out,
GCancellable *cancellable,
- GError **error);
+ GError **error);
#endif /* __XDG_APP_UTILS_H__ */