From: Junio C Hamano Date: Wed, 11 Nov 2009 18:00:47 GMT Subject: Re: [PATCH v4 1/2] filter-branch: stop special-casing $filter_subdir argument Message-ID: <7v3a4lq6uo.fsf@alter.siamese.dyndns.org> In-Reply-To: <4AFA7624.5040400@viscovery.net> Johannes Sixt writes: > In the snippet above, dashdash will always be set to "--" because a mere > '+' in the variable expansion only tests whether the variable ('nonrevs') > is unset, but it is always set. Even ${nonrevs:+"--"} is wrong, and your > earlier 'test -z' invocation was the correct way to set dashdash. I do not mind "test -z", so this is just for information, but you could use variable substitution with a colon, i.e. ${nonrevs:+"--"}. IIRC, the colon-form ("do this if unset or empty") wasn't understood by ancient BSDs but these days it is safe to use.