Index: uspace/srv/taskman/main.c
===================================================================
--- uspace/srv/taskman/main.c	(revision 5830c7b4daa8bf8ba190c91e2a2cb0dadddb0f2c)
+++ uspace/srv/taskman/main.c	(revision b09e0d77146b2f80afa8fb6e06584665eb40b36e)
@@ -232,4 +232,5 @@
 	if (sess_ref == NULL) {
 		async_answer_0(icall, ENOMEM);
+		return;
 	}
 
@@ -270,17 +271,4 @@
 			return;
 		}
-	} else if (ipc_get_imethod(icall) == IPC_M_CONNECT_TO_ME) {
-		switch (ipc_get_arg2(icall)) {
-		case TASKMAN_LOADER_CALLBACK:
-			loader_callback(icall);
-			return;
-		default:
-			DPRINTF("%s:%d from %" PRIu64 "/%" SCNuPTR "/%" SCNuPTR "/%" SCNuPTR "\n",
-			    __func__, __LINE__,
-			    icall->task_id, ipc_get_imethod(icall),
-			    ipc_get_arg1(icall), ipc_get_arg2(icall));
-			async_answer_0(icall, ENOTSUP);
-			return;
-		}
 	}
 
@@ -308,4 +296,12 @@
 			taskman_ctl_ev_callback(&call);
 			break;
+		case IPC_M_CONNECT_TO_ME:
+			if (ipc_get_arg2(&call) == TASKMAN_LOADER_CALLBACK) {
+				loader_callback(&call);
+				break;
+			}
+			goto FALLTHROUGH_DEFAULT;
+			break;
+		FALLTHROUGH_DEFAULT:
 		default:
 			DPRINTF("%s:%d from %" PRIu64 "/%" SCNuPTR "/%" SCNuPTR "/%" SCNuPTR "\n",
