- t = pa_sprintf_malloc("ConsoleKit Session %s", id);
- session->client = pa_client_new(u->core, __FILE__, t);
- pa_xfree(t);
-
- pa_proplist_sets(session->client->proplist, "console-kit.session", id);
+ pa_client_new_data_init(&data);
+ data.module = u->module;
+ data.driver = __FILE__;
+ pa_proplist_setf(data.proplist, PA_PROP_APPLICATION_NAME, "ConsoleKit Session %s", id);
+ pa_proplist_sets(data.proplist, "console-kit.session", id);
+ session->client = pa_client_new(u->core, &data);
+ pa_client_new_data_done(&data);
+
+ if (!session->client) {
+ pa_xfree(session->id);
+ pa_xfree(session);
+ goto fail;
+ }