-#include <gio.h>
+#include <gio/gio.h>
#include <gstdio.h>
#include <string.h>
GVariant *args,
GVariant *platform_data)
{
+ GVariantIter iter;
+ const char *key;
+ GVariant *value;
+ char *cwd;
+
+ cwd = g_get_current_dir ();
+ g_variant_iter_init (&iter, platform_data);
+ while (g_variant_iter_next (&iter, "{&sv}", &key, &value))
+ {
+ const char *activate_cwd;
+
+ if (strcmp (key, "cwd") != 0)
+ continue;
+
+ activate_cwd = g_variant_get_bytestring (value);
+ g_assert_cmpstr (cwd, ==, activate_cwd);
+ g_variant_unref (value);
+ }
+
+ g_free (cwd);
}
static gboolean
}
#endif
- app = g_application_new ("org.gtk.test.app");
+ app = g_application_unregistered_try_new ("org.gtk.test.app",
+ argc, argv, NULL);
if (!(argc > 1 && strcmp (argv[1], "--non-unique") == 0))
- g_application_register_with_data (app, argc, argv, NULL);
+ {
+ if (!g_application_register (app))
+ exit (0);
+ }
if (g_application_is_remote (app))
{