From 9d33e0e07928d6673ad289417b8cf55b66b52928 Mon Sep 17 00:00:00 2001 From: Yuichi Nishiwaki Date: Wed, 9 Oct 2013 17:14:48 +0900 Subject: [PATCH] warn line input overflow --- src/main.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/main.c b/src/main.c index 1ccc1d1a..5d239ab2 100644 --- a/src/main.c +++ b/src/main.c @@ -1,9 +1,11 @@ #include +#define LINE_MAX_LENGTH 256 + int main() { - char line[256], last_char; + char line[LINE_MAX_LENGTH], last_char; int char_index; while (1) { @@ -13,6 +15,8 @@ main() while ((last_char = getchar()) != '\n') { if (last_char == EOF) goto eof; + if (char_index == LINE_MAX_LENGTH) + goto overflow; line[char_index++] = last_char; } line[char_index] = '\0'; @@ -25,6 +29,12 @@ main() eof: puts(""); + goto exit; + overflow: + puts("** [fatal] line input overflow"); + goto exit; + + exit: return 0; }