GNOME Bugzilla – Bug 783082
Port gdm to GTask
Last modified: 2017-12-13 20:10:35 UTC
GDM has 70+ deprecation warnings from using g_simple_async instead of GTask. gdm-client.c: In function ‘on_got_manager’: gdm-client.c:98:17: warning: ‘g_simple_async_result_take_error’ is deprecated [-Wdeprecated-declarations] g_simple_async_result_take_error (operation_result, error); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Created attachment 364881 [details] [review] Replace deprecated GSimpleAsyncResult with GTask In progress patch. I have yet to test this. Taken from wip/rancell/gtask branch.
Created attachment 364987 [details] [review] Replace deprecated GSimpleAsyncResult with GTask Patch fixed and tested. Please review.
Review of attachment 364987 [details] [review]: looks plausible to me. let's land this and shake out any bugs that crop up (if any do) in the run up to 3.28. just one thing i noticed in my brief read through. ::: libgdm/gdm-client.c @@ +574,3 @@ g_return_val_if_fail (GDM_IS_CLIENT (client), FALSE); + client->priv->connection = g_task_propagate_pointer (G_TASK (result), error); i think this part needs to be protected with if (client->priv->connection == NULL) { … } idea being if the connection is getting requested multiple times, the first one to come back wins. Practically speaking, probably doesn't matter, but this is an unintended semantic change in your conversation, so better to add the conditional...