Example #1
0
static void
auth_data_unref (gpointer data)
{
  AuthData *d = data;
  g_return_if_fail (data != NULL);
  d->refs--;
  if (d->refs == 0)
    auth_data_free (data);
}
static void
authenticator_completed (PolkitMateAuthenticator *authenticator,
                         gboolean                  gained_authorization,
                         gpointer                  user_data)
{
  AuthData *data = user_data;

  data->listener->authenticators = g_list_remove (data->listener->authenticators, authenticator);
  if (authenticator == data->listener->active_authenticator)
    data->listener->active_authenticator = NULL;

  g_object_unref (authenticator);

  g_simple_async_result_complete (data->simple);
  g_object_unref (data->simple);

  maybe_initiate_next_authenticator (data->listener);

  auth_data_free (data);
}