On 06/01/13 11:10 AM, Алексей Шилин wrote:
> Hi!
> 
> Your fix [1] has a small mistake.

Thanks, but this should've gone back to the list, not to me privately.
It very nearly missed the next release of the package until I caught
that you had not sent it back to the list (where all developers can
review and those preparing the release can make sure it goes in, not to
mention other users can test & comment.)

> A shell processes a command line from left to right, so the order matters. 
> Therefore, when dash parses the command line:
> ---------- 8< ----------
> exec 2>&1 > /var/log/live/config.pipe
> ---------- >8 ----------
> - it assigns the current value of descriptor 1 (stdout) to descriptor 2 
> (stderr), which hasn't changed to /var/log/live/config.pipe yet. So, after 
> the command succeeds, instead of (as intended):
> ---------- 8< ----------
> stdout == /var/log/live/config.pipe
> stderr == /var/log/live/config.pipe
> ---------- >8 ----------
> - we have:
> ---------- 8< ----------
> stdout == /var/log/live/config.pipe
> stderr == /dev/tty
> ---------- >8 ----------
> 
> To work as expected, these redirections should be swapped:
> ---------- 8< ----------
> exec > /var/log/live/config.pipe 2>&1
> ---------- >8 ----------
> 
> [1] 
> http://live.debian.net/gitweb/?p=live-config.git;a=commitdiff;h=fc2ab0ce9c2f28e3e8255f5bc4afe4e2af9ebbff


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive: http://lists.debian.org/[email protected]

Reply via email to