Index: kernel/generic/src/console/kconsole.c
===================================================================
--- kernel/generic/src/console/kconsole.c	(revision b62d561446542cafbbe750ee9fdc7ab76b319b9a)
+++ kernel/generic/src/console/kconsole.c	(revision 91ef7cfd03b95d74c09164250fa9eecf96889b91)
@@ -210,5 +210,5 @@
 	link_t *pos = NULL;
 	const char *hint;
-	char output[MAX_CMDLINE];
+	char *output = malloc(MAX_CMDLINE, 0);
 	
 	output[0] = 0;
@@ -235,4 +235,5 @@
 		str_cpy(input, size, output);
 	
+	free(output);
 	return found;
 }
@@ -245,4 +246,5 @@
 	wchar_t *current = history[history_pos];
 	current[0] = 0;
+	char *tmp = malloc(STR_BOUNDS(MAX_CMDLINE), 0);
 	
 	while (true) {
@@ -289,5 +291,4 @@
 				beg++;
 			
-			char tmp[STR_BOUNDS(MAX_CMDLINE)];
 			wstr_to_str(tmp, position - beg + 1, current + beg);
 			
@@ -415,4 +416,5 @@
 	}
 	
+	free(tmp);
 	return current;
 }
@@ -688,4 +690,5 @@
 		printf("Type \"exit\" to leave the console.\n");
 	
+	char *cmdline = malloc(STR_BOUNDS(MAX_CMDLINE), 0);
 	while (true) {
 		wchar_t *tmp = clever_readline((char *) prompt, stdin);
@@ -694,5 +697,4 @@
 			continue;
 		
-		char cmdline[STR_BOUNDS(MAX_CMDLINE)];
 		wstr_to_str(cmdline, STR_BOUNDS(MAX_CMDLINE), tmp);
 		
@@ -706,4 +708,5 @@
 		(void) cmd_info->func(cmd_info->argv);
 	}
+	free(cmdline);
 }
 
