Index: uspace/lib/gui/terminal.c
===================================================================
--- uspace/lib/gui/terminal.c	(revision b688fd884822ca3ea5bb45f1b6b2ca18b04efbcc)
+++ uspace/lib/gui/terminal.c	(revision cb0ca35e2ad68472d87676ca4a287c1ff54daa41)
@@ -679,5 +679,5 @@
 	
 	list_foreach(terms, link, terminal_t, cur) {
-		if (cur->dsid == (service_id_t) IPC_GET_ARG1(*icall)) {
+		if (cur->dsid == (service_id_t) IPC_GET_ARG2(*icall)) {
 			term = cur;
 			break;
Index: uspace/lib/gui/window.c
===================================================================
--- uspace/lib/gui/window.c	(revision b688fd884822ca3ea5bb45f1b6b2ca18b04efbcc)
+++ uspace/lib/gui/window.c	(revision cb0ca35e2ad68472d87676ca4a287c1ff54daa41)
@@ -623,6 +623,6 @@
 	}
 	
-	async_sess_t *reg_sess = loc_service_connect(EXCHANGE_SERIALIZE,
-	    reg_dsid, 0);
+	async_sess_t *reg_sess =
+	    loc_service_connect(reg_dsid, INTERFACE_COMPOSITOR, 0);
 	if (reg_sess == NULL) {
 		free(win);
@@ -639,5 +639,5 @@
 	}
 	
-	win->osess = loc_service_connect(EXCHANGE_SERIALIZE, out_dsid, 0);
+	win->osess = loc_service_connect(out_dsid, INTERFACE_COMPOSITOR, 0);
 	if (win->osess == NULL) {
 		free(win);
@@ -645,5 +645,5 @@
 	}
 	
-	win->isess = loc_service_connect(EXCHANGE_SERIALIZE, in_dsid, 0);
+	win->isess = loc_service_connect(in_dsid, INTERFACE_COMPOSITOR, 0);
 	if (win->isess == NULL) {
 		async_hangup(win->osess);
