tech-userlevel archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: RFC: Change to the way sh -x works ?
Date: Sun, 12 Nov 2017 13:44:25 +0000 (UTC)
From: christos%astron.com@localhost (Christos Zoulas)
Message-ID: <ou9j7p$57e$1%blaine.gmane.org@localhost>
| I like it, but I have the same questions as you (should that be a separate
| option -X and what should be the default). I'd say the safe choice is to
| make it a separate option for now.
If I am understanding what you are thinking there, it is not what I meant.
Two different "enable trace" options would be a mess, and wouldn't work
all that well (what do we do if both are enabled?)
The option I intended that could be done would be one to decide whether -x
works as it does now, and follows changes to stderr as they are made, or the
way I proposed, to lock it into stderr as it is when enabled, and keep it
there).
In a kind of pseudo-code
FILE *stderr. *trace;
/* we are enabling -x */
if (xflag == 1)
return;
if (Xflag) /* or if !Xflag - doesn't matter which way is which */
trace = fdopen(dup(fileno(stderr), "...");
else
trace = stderr;
That doesn't quite do the right thing, as here if stderr changes, trace
would lose track, but the way sh output works, when stderr changes, wjat
is altered is *stderr rather than the pointer
The new option raises all kinds of minor problems, as if implemented
naively, "sh -Xx" would be different than "sh -xX" which would be a bit
hard to explain...
kre
Home |
Main Index |
Thread Index |
Old Index