diff --git a/proxy.cpp b/proxy.cpp
index f6bc86a29b14288c24c5dee7d65bc0f906748a0a..4356201c696998bbff319e1d69849bdfb9fbc6fd 100755
--- a/proxy.cpp
+++ b/proxy.cpp
@@ -471,6 +471,7 @@ bool fork_execute(F & executor)
 	// Fork
 	pid_t process_id;
 	process_id = fork();
+	EXIT_IF_ERROR(process_id < 0, "Could not fork application");
 
 	if (process_id == 0)
 	{
@@ -480,7 +481,7 @@ bool fork_execute(F & executor)
 		// (which is important if we use valgrind ./proxy recursively)
 		return false; // previously exit(0);
 	}
-	else if (process_id > 0)
+	else // if (process_id > 0)
 	{
 		executor.parent();
 
@@ -497,11 +498,6 @@ bool fork_execute(F & executor)
 
 		return true;
 	}
-	else // if (process_id < 0)
-	{
-		perror("Abort: " __FILE__ ":" STR(__LINE__));
-		exit(-1);
-	}
 }