Mercurial > emacs
changeset 6042:5bffd741340e
(main, get_time): Don't crash on invalid input.
author | Karl Heuer <kwzh@gnu.org> |
---|---|
date | Wed, 23 Feb 1994 17:43:05 +0000 |
parents | 649926e9c1a8 |
children | 1b850ad30158 |
files | lib-src/profile.c |
diffstat | 1 files changed, 8 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/lib-src/profile.c Wed Feb 23 16:18:10 1994 +0000 +++ b/lib-src/profile.c Wed Feb 23 17:43:05 1994 +0000 @@ -49,13 +49,13 @@ /* This call returns the time since the last reset_watch call. The time is returned as a string with the format <seconds>.<micro-seconds> - If reset_watch was not called yet, return NULL. */ + If reset_watch was not called yet, exit. */ char * get_time () { if (watch_not_started) - return ((char *) 0); /* call reset_watch first ! */ + exit (1); /* call reset_watch first ! */ gettimeofday (&TV2, tzp); if (TV1.tv_usec > TV2.tv_usec) { @@ -70,10 +70,10 @@ void main () { - char inp[10]; - while (gets (inp)) + int c; + while ((c = getchar ()) != EOF) { - switch (inp[0]) + switch (c) { case 'z': reset_watch (); @@ -84,6 +84,9 @@ case 'q': exit (0); } + /* Anything remaining on the line is ignored. */ + while (c != '\n' && c != EOF) + c = getchar (); } exit (1); }