diff --git a/main/asterisk.c b/main/asterisk.c
index f8d619a798ec6d089429338a90104f0f441ae442..c484f3be7fdada1c45c9a8de5b20064445198070 100644
--- a/main/asterisk.c
+++ b/main/asterisk.c
@@ -3386,7 +3386,7 @@ int main(int argc, char *argv[])
 		}
 
 		fd2 = (l.rlim_cur > sizeof(readers) * 8 ? sizeof(readers) * 8 : l.rlim_cur) - 1;
-		if (dup2(fd, fd2)) {
+		if (dup2(fd, fd2) < 0) {
 			ast_log(LOG_WARNING, "Cannot open maximum file descriptor %d at boot? %s\n", fd2, strerror(errno));
 			break;
 		}