Merge revisions 1.38,1.41 of eval.c from FreeBSD:
commitae6cc6493f128383b6d4b4673a6e1edae90ae4ed
authorYONETANI Tomokazu <y0netan1@dragonflybsd.org>
Fri, 12 May 2006 01:56:11 +0000 (12 01:56 +0000)
committerYONETANI Tomokazu <y0netan1@dragonflybsd.org>
Fri, 12 May 2006 01:56:11 +0000 (12 01:56 +0000)
tree82a433187791c8c0ade4deac0ed285585a3a2936
parente95b513d3185e47b5d7370516fb349e6d77df046
Merge revisions 1.38,1.41 of eval.c from FreeBSD:
  PR 28852
  sh -e behaviour was incorrect when && and || statements where used in
  "if" clauses.
revision 1.41 is a fix to a bug in 1.38 that subshells could lose
a non-zero status.

dfly problem reported-by: Johannes Hofmann <Johannes.Hofmann at gmx.de>
OK'ed: dillon@, joerg@
bin/sh/eval.c