Junio C Hamano <gitster@xxxxxxxxx> writes: > David Kastrup <dak@xxxxxxx> writes: > >> Eygene Ryabinkin <rea-git@xxxxxxxxxxx> writes: >> >>>> That is, what does the shell say if you do this? >>>> >>>> case Ultra in >>>> Super) >>>> false ;; >>>> Hyper) >>>> true ;; >>>> esac && >>>> echo case returned ok >>> >>> It says 'case returned ok', so I will try to understand why it >>> works here and does not work in the 'while' construct. >> >> What you actually need to do is >> >> false >> case Ultra in >> Super) >> false ;; >> Hyper) >> true ;; >> esac && echo case returned ok > > AHHHHHH. > > Is "case" supposed to be transparent? Not that I would know. It is basically a revival of the false if false then : ; fi || echo "this fails!?!" bug that probably has been fixed by now. For obvious reasons, conditionals without a taken branch are considered to have an exit code of 0. -- David Kastrup, Kriemhildstr. 15, 44793 Bochum - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html