A couple of patches from Tito <farmatito@tiscali.it>
diff --git a/console-tools/deallocvt.c b/console-tools/deallocvt.c
index a4ba851..f641be8 100644
--- a/console-tools/deallocvt.c
+++ b/console-tools/deallocvt.c
@@ -15,29 +15,32 @@
 
 int deallocvt_main(int argc, char *argv[])
 {
-	int fd, num, i;
+	int fd, num=0;
 
-	//if ((argc > 2) || ((argv == 2) && (**(argv + 1) == '-')))
 	if (argc > 2)
 		bb_show_usage();
 
 	fd = get_console_fd();
+	
+	/*  num=0  deallocate all unused consoles */
+	if (argc == 1)
+		goto disallocate_all;
 
-	if (argc == 1) {
-		/* deallocate all unused consoles */
-		if (ioctl(fd, VT_DISALLOCATE, 0))
-			bb_perror_msg_and_die("VT_DISALLOCATE");
-	} else {
-		for (i = 1; i < argc; i++) {
-			num = atoi(argv[i]);
-			if (num == 0)
-				bb_error_msg("0: illegal VT number");
-			else if (num == 1)
-				bb_error_msg("VT 1 cannot be deallocated");
-			else if (ioctl(fd, VT_DISALLOCATE, num))
+	num=bb_xgetlarg(argv[1], 10, 0, INT_MAX);
+
+	switch(num)
+	{
+		case 0:
+			bb_error_msg("0: illegal VT number");
+			break;
+		case 1:
+			bb_error_msg("VT 1 cannot be deallocated");
+			break;
+		default:
+disallocate_all:
+			if (ioctl(fd, VT_DISALLOCATE, num))
 				bb_perror_msg_and_die("VT_DISALLOCATE");
-		}
+			return EXIT_SUCCESS;
 	}
-
-	return EXIT_SUCCESS;
+	return EXIT_FAILURE;
 }
diff --git a/miscutils/strings.c b/miscutils/strings.c
index 2413c3f..c0d4a3f 100644
--- a/miscutils/strings.c
+++ b/miscutils/strings.c
@@ -54,7 +54,7 @@
 				opt+=2;
 				break;
 			case 'n':
-				n = bb_xgetlarg(optarg, 10, 1, LONG_MAX);
+				n = bb_xgetlarg(optarg, 10, 1, INT_MAX);
 				break;
 			default:
 				bb_show_usage();