Index: uspace/app/redir/redir.c
===================================================================
--- uspace/app/redir/redir.c	(revision d9fae23532028671526d24c90116318f54d92d29)
+++ uspace/app/redir/redir.c	(revision 0485135c4340bfe39246c5097af24c53043005de)
@@ -43,4 +43,5 @@
 #include <task.h>
 #include <str_error.h>
+#include <errno.h>
 
 #define NAME  "redir"
@@ -76,5 +77,9 @@
 static task_id_t spawn(int argc, char *argv[])
 {
-	const char **args = (const char **) calloc(argc + 1, sizeof(char *));
+	const char **args;
+	task_id_t id;
+	int rc;
+
+	args = (const char **) calloc(argc + 1, sizeof(char *));
 	if (!args) {
 		printf("No memory available\n");
@@ -88,12 +93,12 @@
 	args[argc] = NULL;
 	
-	int err;
-	task_id_t id = task_spawn(argv[0], args, &err);
+	rc = task_spawnv(&id, argv[0], args);
 	
 	free(args);
 	
-	if (id == 0)
+	if (rc != EOK) {
 		printf("%s: Error spawning %s (%s)\n", NAME, argv[0],
-		    str_error(err));
+		    str_error(rc));
+	}
 	
 	return id;
