Index: uspace/lib/c/generic/async.c
===================================================================
--- uspace/lib/c/generic/async.c	(revision a825eeb05c1e010a5e73089de2df743ccc767e34)
+++ uspace/lib/c/generic/async.c	(revision 3a5506af079402a82bae5941d0b9a0bbe79f2de5)
@@ -1846,4 +1846,6 @@
 	
 	fibril_mutex_lock(&async_sess_mutex);
+
+	int rc = async_hangup_internal(sess->phone);
 	
 	while (!list_empty(&sess->exch_list)) {
@@ -1858,5 +1860,4 @@
 	}
 
-	int rc = async_hangup_internal(sess->phone);
 	free(sess);
 	
