Index: uspace/srv/hid/compositor/compositor.c
===================================================================
--- uspace/srv/hid/compositor/compositor.c	(revision 53ee7a00bd79fce8184a35b196907232eed3d838)
+++ uspace/srv/hid/compositor/compositor.c	(revision 82cd2e0db29c41894c25a77c91a0b96ff60a0c67)
@@ -926,5 +926,5 @@
 			window_t *win = window_create();
 			if (!win) {
-				async_answer_2(&call, ENOMEM, 0, 0);
+				async_answer_0(&call, EHANGUP);
 				fibril_mutex_unlock(&window_list_mtx);
 				return;
@@ -945,5 +945,5 @@
 			if (loc_service_register(name_in, &win->in_dsid) != EOK) {
 				window_destroy(win);
-				async_answer_2(&call, EINVAL, 0, 0);
+				async_answer_0(&call, EHANGUP);
 				fibril_mutex_unlock(&window_list_mtx);
 				return;
@@ -953,5 +953,5 @@
 				loc_service_unregister(win->in_dsid);
 				window_destroy(win);
-				async_answer_2(&call, EINVAL, 0, 0);
+				async_answer_0(&call, EHANGUP);
 				fibril_mutex_unlock(&window_list_mtx);
 				return;
@@ -974,9 +974,8 @@
 			}
 
-			return;
-		} else {
-			async_answer_0(&call, EINVAL);
-			return;
-		}
+			async_get_call(&call);
+		}
+		async_answer_0(&call, EHANGUP);
+		return;
 	}
 
