Index: uspace/lib/c/generic/async.c
===================================================================
--- uspace/lib/c/generic/async.c	(revision 49bd793b2449248c736c623614dd68c794c66fc1)
+++ uspace/lib/c/generic/async.c	(revision 57e06ef438456990c2fdcdff3e56ebd1b0fa0c97)
@@ -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);
 	
