network/http-launch: Make GList clients consistent (items valid always).
authorluis <ldearquer@gmail.com>
Tue, 5 May 2015 11:45:49 +0000 (13:45 +0200)
committerluis <ldearquer@gmail.com>
Tue, 5 May 2015 11:45:49 +0000 (13:45 +0200)
network/http-launch/http-launch.c

index 38b4400..2521f3b 100644 (file)
@@ -54,6 +54,10 @@ remove_client (Client * client)
 {
   g_print ("Removing connection %s\n", client->name);
 
+  G_LOCK (clients);
+  clients = g_list_remove (clients, client);
+  G_UNLOCK (clients);
+
   g_free (client->name);
 
   if (client->isource) {
@@ -67,10 +71,6 @@ remove_client (Client * client)
   g_object_unref (client->connection);
   g_byte_array_unref (client->current_message);
 
-  G_LOCK (clients);
-  clients = g_list_remove (clients, client);
-  G_UNLOCK (clients);
-
   g_slice_free (Client, client);
 }