Re: [PATCH 02/22] try_merge_strategy(): remove redundant lock_file allocation
- From
Jeff King <peff@peff.net>
- Date
- Apr 1, 2014, 19:56 UTC
- Message-ID
- <20140401195615.GB21715@sigill.intra.peff.net>
- In-Reply-To
- <1396367910-7299-3-git-send-email-mhagger@alum.mit.edu>
On Tue, Apr 01, 2014 at 05:58:10PM +0200, Michael Haggerty wrote:
Show 7 quoted lines
> By the time the "if" block is entered, the lock_file instance from the > main function block is no longer in use, so re-use that one instead of > allocating a second one. > > Note that the "lock" variable in the "if" block used to shadow the > "lock" variable at function scope, so the only change needed is to > remove the inner definition.
I wonder if this would also be simpler if "lock" were simply declared as a static variable, and we drop the allocation entirely. I suppose that does create more cognitive load, though, in that it is only correct if the function is not recursive. On the other hand, the current code makes a reader unfamiliar with "struct lock" wonder if there is a free(lock) missing.
-Peff