From: Alex Riesen Date: Thu, 29 May 2008 17:51:57 GMT Subject: Re: [PATCH] make commit --interactive lock index Message-ID: <20080529175157.GB5596@steel.home> In-Reply-To: <483EC079.1050008@gnu.org> Paolo Bonzini, Thu, May 29, 2008 16:40:57 +0200: >>>>> + assert (!(interactive && pathspec && *pathspec)); >>>> As pathspec is specified indirectly by the user, I think an >>>> assert() here is actively wrong. >>> But the program may still guarantee a condition by checking it >>> elsewhere. I don't need to teach you about that, do I? In >>> particular, the assert checks that this: >>> >>> if (interactive && argc > 0) >>> die("Paths with --interactive does not make sense."); >>> >>> ... is equivalent to !pathspec || !*pathspec. >> >> Okay, I have to spell it out: >> >> I think that the assert() here is not helpful at all, and that you >> should rather do the "if () die()" thingie. > > The "if() die ()" thingie is already in builtin-commit.c, so we won't > ever get a pathspec in the "add --interactive" case. If we do, > something else has already been done incorrectly before -- not by the > user but by the programmer. What could that be?