Another fix from FreeBSD. I'm not sure how to trigger the problem

fixed (there might be no way) - but it "feels right"!

When popping an (exhausted) input string off the input stack, allow
for the possibility that the previous string might also just happened
to have run out of steam as well, so keep poppin' along until we
run out of pop, or find something to consume.
This commit is contained in:
kre 2017-05-03 06:20:12 +00:00
parent b8d196a530
commit 70d8efb393
1 changed files with 3 additions and 3 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: input.c,v 1.55 2017/05/03 04:51:04 kre Exp $ */
/* $NetBSD: input.c,v 1.56 2017/05/03 06:20:12 kre Exp $ */
/*-
* Copyright (c) 1991, 1993
@ -37,7 +37,7 @@
#if 0
static char sccsid[] = "@(#)input.c 8.3 (Berkeley) 6/9/95";
#else
__RCSID("$NetBSD: input.c,v 1.55 2017/05/03 04:51:04 kre Exp $");
__RCSID("$NetBSD: input.c,v 1.56 2017/05/03 06:20:12 kre Exp $");
#endif
#endif /* not lint */
@ -244,7 +244,7 @@ preadbuffer(void)
#endif
char savec;
if (parsefile->strpush) {
while (parsefile->strpush) {
popstring();
if (--parsenleft >= 0)
return (*parsenextc++);