static void
test_service_data_free (TestServiceData *self)
{
+ _dbus_loop_unref (self->loop);
dbus_free (self->private_addr);
dbus_free (self);
}
{
DBusServer *server;
DBusError error;
- DBusLoop *loop;
DBusConnection *session;
TestServiceData *testdata;
dbus_error_init (&error);
- loop = _dbus_loop_new ();
-
testdata = dbus_new (TestServiceData, 1);
- testdata->loop = loop;
+ testdata->loop = _dbus_loop_new ();
session = dbus_bus_get (DBUS_BUS_SESSION, &error);
if (!session)
die ("couldn't access session bus");
- test_connection_setup (loop, session);
+ test_connection_setup (testdata->loop, session);
dbus_bus_request_name (session, "org.freedesktop.DBus.TestSuite.PrivServer", 0, &error);
if (dbus_error_is_set (&error))
dbus_server_set_new_connection_function (server, new_connection_callback,
testdata, NULL);
- test_server_setup (loop, server);
+ test_server_setup (testdata->loop, server);
fprintf (stderr, "server running mainloop\n");
- _dbus_loop_run (loop);
+ _dbus_loop_run (testdata->loop);
fprintf (stderr, "server mainloop quit\n");
- test_server_shutdown (loop, server);
+ test_server_shutdown (testdata->loop, server);
- test_connection_shutdown (loop, session);
+ test_connection_shutdown (testdata->loop, session);
dbus_connection_unref (session);
dbus_server_unref (server);
- _dbus_loop_unref (loop);
-
test_service_data_free (testdata);
return 0;