oksh sync; unsure if it applies (with us using old_source and all) but
better be safe than sorry; it at least passes our testsuite NOTE: people who can figure out how afl can be used for mksh welcome! ;-)
This commit is contained in:
11
main.c
11
main.c
@ -1,4 +1,4 @@
|
||||
/* $OpenBSD: main.c,v 1.54 2013/11/28 10:33:37 sobrado Exp $ */
|
||||
/* $OpenBSD: main.c,v 1.55 2015/02/09 09:09:30 jsg Exp $ */
|
||||
/* $OpenBSD: tty.c,v 1.10 2014/08/10 02:44:26 guenther Exp $ */
|
||||
/* $OpenBSD: io.c,v 1.25 2014/08/11 20:28:47 guenther Exp $ */
|
||||
/* $OpenBSD: table.c,v 1.15 2012/02/19 07:52:30 otto Exp $ */
|
||||
@ -34,7 +34,7 @@
|
||||
#include <locale.h>
|
||||
#endif
|
||||
|
||||
__RCSID("$MirOS: src/bin/mksh/main.c,v 1.286 2014/11/25 21:13:28 tg Exp $");
|
||||
__RCSID("$MirOS: src/bin/mksh/main.c,v 1.287 2015/02/13 12:51:31 tg Exp $");
|
||||
|
||||
extern char **environ;
|
||||
|
||||
@ -892,6 +892,13 @@ unwind(int i)
|
||||
/* FALLTHROUGH */
|
||||
default:
|
||||
quitenv(NULL);
|
||||
/*
|
||||
* quitenv() may have reclaimed the memory
|
||||
* used by source which will end badly when
|
||||
* we jump to a function that expects it to
|
||||
* be valid
|
||||
*/
|
||||
source = NULL;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user