summaryrefslogtreecommitdiffstats
path: root/extra/dbus-glib/regression-test-for-fd.o.patch
diff options
context:
space:
mode:
Diffstat (limited to 'extra/dbus-glib/regression-test-for-fd.o.patch')
-rw-r--r--extra/dbus-glib/regression-test-for-fd.o.patch168
1 files changed, 0 insertions, 168 deletions
diff --git a/extra/dbus-glib/regression-test-for-fd.o.patch b/extra/dbus-glib/regression-test-for-fd.o.patch
deleted file mode 100644
index a65e8a444..000000000
--- a/extra/dbus-glib/regression-test-for-fd.o.patch
+++ /dev/null
@@ -1,168 +0,0 @@
-From 2a85bd434e6d8dba9615a53d288a0a72d6b5e0cf Mon Sep 17 00:00:00 2001
-From: Simon McVittie <simon.mcvittie@collabora.co.uk>
-Date: Thu, 02 Jun 2011 12:50:20 +0000
-Subject: Regression test for fd.o #37852
-
-Bug: https://bugs.freedesktop.org/show_bug.cgi?id=37852
-Reviewed-by: Colin Walters <walters@verbum.org>
----
-diff --git a/test/core/my-object.c b/test/core/my-object.c
-index ec0e301..0ff5562 100644
---- a/test/core/my-object.c
-+++ b/test/core/my-object.c
-@@ -23,6 +23,7 @@ enum
- enum
- {
- FROBNICATE,
-+ OBJECTIFIED,
- SIG0,
- SIG1,
- SIG2,
-@@ -171,6 +172,15 @@ my_object_class_init (MyObjectClass *mobject_class)
- g_cclosure_marshal_VOID__INT,
- G_TYPE_NONE, 1, G_TYPE_INT);
-
-+ signals[OBJECTIFIED] =
-+ g_signal_new ("objectified",
-+ G_OBJECT_CLASS_TYPE (mobject_class),
-+ G_SIGNAL_RUN_LAST | G_SIGNAL_DETAILED,
-+ 0,
-+ NULL, NULL,
-+ g_cclosure_marshal_VOID__OBJECT,
-+ G_TYPE_NONE, 1, G_TYPE_OBJECT);
-+
- signals[SIG0] =
- g_signal_new ("sig0",
- G_OBJECT_CLASS_TYPE (mobject_class),
-@@ -866,3 +876,10 @@ my_object_terminate (MyObject *obj, GError **error)
- g_main_loop_quit (loop);
- return TRUE;
- }
-+
-+void
-+my_object_emit_objectified (MyObject *obj,
-+ GObject *other)
-+{
-+ g_signal_emit (obj, signals[OBJECTIFIED], 0, other);
-+}
-diff --git a/test/core/my-object.h b/test/core/my-object.h
-index 657140d..3657aa0 100644
---- a/test/core/my-object.h
-+++ b/test/core/my-object.h
-@@ -116,4 +116,6 @@ void my_object_async_throw_error (MyObject *obj, DBusGMethodInvocation *context)
-
- void my_object_unsafe_disable_legacy_property_access (MyObject *obj);
-
-+void my_object_emit_objectified (MyObject *obj, GObject *other);
-+
- #endif
-diff --git a/test/core/registrations.c b/test/core/registrations.c
-index a316313..d46b15a 100644
---- a/test/core/registrations.c
-+++ b/test/core/registrations.c
-@@ -50,6 +50,7 @@ typedef struct {
- GObject *object;
- DBusMessage *frobnicate1_message;
- DBusMessage *frobnicate2_message;
-+ gboolean received_objectified;
- } Fixture;
-
- static void
-@@ -324,6 +325,71 @@ test_clean_slate (Fixture *f,
- f->frobnicate2_message = NULL;
- }
-
-+static DBusHandlerResult
-+objectified_cb (DBusConnection *conn,
-+ DBusMessage *message,
-+ void *user_data)
-+{
-+ Fixture *f = user_data;
-+
-+ if (dbus_message_is_signal (message,
-+ "org.freedesktop.DBus.GLib.Tests.MyObject", "Objectified"))
-+ {
-+ const char *sender = dbus_message_get_sender (message);
-+ const char *path = dbus_message_get_path (message);
-+ dbus_bool_t ok;
-+ DBusError e;
-+
-+ dbus_error_init (&e);
-+
-+ g_assert (sender != NULL);
-+ g_assert (path != NULL);
-+
-+ g_assert_cmpstr (path, ==, "/foo");
-+ g_assert_cmpstr (sender, ==, dbus_bus_get_unique_name (
-+ dbus_g_connection_get_connection (f->bus)));
-+
-+ path = NULL;
-+ ok = dbus_message_get_args (message, &e,
-+ DBUS_TYPE_OBJECT_PATH, &path,
-+ DBUS_TYPE_INVALID);
-+
-+ if (dbus_error_is_set (&e))
-+ g_error ("%s: %s", e.name, e.message);
-+
-+ g_assert (ok);
-+ g_assert_cmpstr (path, ==, "/foo");
-+
-+ f->received_objectified = TRUE;
-+ }
-+
-+ return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
-+}
-+
-+static void
-+test_marshal_object (Fixture *f,
-+ gconstpointer test_data G_GNUC_UNUSED)
-+{
-+ dbus_bool_t mem;
-+
-+ g_test_bug ("37852");
-+
-+ dbus_g_connection_register_g_object (f->bus, "/foo", f->object);
-+ g_assert (dbus_g_connection_lookup_g_object (f->bus, "/foo") ==
-+ f->object);
-+
-+ dbus_bus_add_match (dbus_g_connection_get_connection (f->bus),
-+ "type='signal'", NULL);
-+ mem = dbus_connection_add_filter (dbus_g_connection_get_connection (f->bus),
-+ objectified_cb, f, NULL);
-+ g_assert (mem);
-+
-+ my_object_emit_objectified ((MyObject *) f->object, f->object);
-+
-+ while (!f->received_objectified)
-+ g_main_context_iteration (NULL, TRUE);
-+}
-+
- int
- main (int argc, char **argv)
- {
-@@ -349,6 +415,8 @@ main (int argc, char **argv)
- setup, test_twice, teardown);
- g_test_add ("/registrations/clean-slate", Fixture, NULL,
- setup, test_clean_slate, teardown);
-+ g_test_add ("/registrations/marshal-object", Fixture, NULL,
-+ setup, test_marshal_object, teardown);
-
- return g_test_run ();
- }
-diff --git a/test/core/test-service-glib.xml b/test/core/test-service-glib.xml
-index 94a836a..1b595cc 100644
---- a/test/core/test-service-glib.xml
-+++ b/test/core/test-service-glib.xml
-@@ -184,6 +184,10 @@
- <!-- Export signals -->
- <signal name="Frobnicate"/>
-
-+ <signal name="Objectified">
-+ <arg type="o"/>
-+ </signal>
-+
- <method name="Terminate">
- </method>
- </interface>
---
-cgit v0.8.3-6-g21f6