(tgets): avoid be clobbered by longjmp' or vfork' warning

git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@12720 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
Love Hörnquist Åstrand
2003-09-02 02:49:58 +00:00
parent 036d477a1c
commit cf096d7787

View File

@@ -38,10 +38,12 @@ tgets(char *str, int size, FILE *fp, int timeout)
{ {
signal(SIGALRM, ring); signal(SIGALRM, ring);
alarm(timeout); alarm(timeout);
if (setjmp(env)) if (setjmp(env)) {
str = NULL; alarm(0);
else signal(SIGALRM,SIG_DFL);
str = fgets(str,size,fp); return NULL;
}
fgets(str,size,fp);
alarm(0); alarm(0);
signal(SIGALRM,SIG_DFL); signal(SIGALRM,SIG_DFL);
return(str); return(str);