Fix most “set -x” problems (LP#1179287)
• “set -x” manually (cmdline too) snapshots fd#2 now • “set -o inherit-xtrace” introduced; default still enabled • reverted iodup printing to pre-R45 behaviour • made Flag(FXTRACE) a proper state machine
This commit is contained in:
9
main.c
9
main.c
@ -34,7 +34,7 @@
|
||||
#include <locale.h>
|
||||
#endif
|
||||
|
||||
__RCSID("$MirOS: src/bin/mksh/main.c,v 1.267 2013/07/21 18:36:01 tg Exp $");
|
||||
__RCSID("$MirOS: src/bin/mksh/main.c,v 1.268 2013/07/21 18:47:19 tg Exp $");
|
||||
|
||||
extern char **environ;
|
||||
|
||||
@ -343,6 +343,11 @@ main_init(int argc, const char *argv[], Source **sp, struct block **lp)
|
||||
*/
|
||||
Flag(FBRACEEXPAND) = 1;
|
||||
|
||||
/*
|
||||
* Turn on "set -x" inheritance by default.
|
||||
*/
|
||||
Flag(FXTRACEREC) = 1;
|
||||
|
||||
#ifndef MKSH_NO_CMDLINE_EDITING
|
||||
/*
|
||||
* Set edit mode to emacs by default, may be overridden
|
||||
@ -1388,7 +1393,7 @@ initio(void)
|
||||
/* force buffer allocation */
|
||||
shf_fdopen(1, SHF_WR, shl_stdout);
|
||||
shf_fdopen(2, SHF_WR, shl_out);
|
||||
shf_fdopen(2, SHF_WR, shl_spare);
|
||||
shf_fdopen(2, SHF_WR, shl_xtrace);
|
||||
#ifdef DF
|
||||
if ((lfp = getenv("SDMKSH_PATH")) == NULL) {
|
||||
if ((lfp = getenv("HOME")) == NULL || *lfp != '/')
|
||||
|
Reference in New Issue
Block a user