Re: What's cooking in git.git (Apr 2014, #08; Fri, 25)
- From
Jeff King <peff@peff.net>
- Date
- Apr 25, 2014, 23:19 UTC
- Message-ID
- <20140425231953.GB3855@sigill.intra.peff.net>
- In-Reply-To
- <xmqqoazpt45p.fsf@gitster.dls.corp.google.com>
On Fri, Apr 25, 2014 at 03:50:26PM -0700, Junio C Hamano wrote:
Show 12 quoted lines
> * jk/external-diff-use-argv-array (2014-04-21) 6 commits > (merged to 'next' on 2014-04-22 at e6d92d7) > + run_external_diff: refactor cmdline setup logic > + run_external_diff: hoist common bits out of conditional > + run_external_diff: drop fflush(NULL) > + run_external_diff: clean up error handling > + run_external_diff: use an argv_array for the environment > + run_external_diff: use an argv_array for the command line > > Code clean-up. > > Will keep in 'next' for the remainder of the cycle.
The first one does fix a possible stack overflow (albeit of one NULL, not arbitrary content, so I don't think it's exploitable). We may want to do:
diff --git a/diff.c b/diff.c index 54d5308..a03744b 100644 --- a/diff.c +++ b/diff.c @@ -2894,7 +2894,7 @@ static void run_external_diff(const char *pgm, int complete_rewrite, struct diff_options *o) { - const char *spawn_arg[10]; + const char *spawn_arg[11]; int retval; const char **arg = &spawn_arg[0]; struct diff_queue_struct *q = &diff_queued_diff; as a fix for maint/2.0.0 in the interim. I can write a commit message for that if you're interested. > * fc/publish-vs-upstream (2014-04-21) 8 commits > - sha1_name: add support for @{publish} marks > - sha1_name: simplify track finding > - sha1_name: cleanup interpret_branch_name() > - branch: display publish branch > - push: add --set-publish option > - branch: add --set-publish-to option > - Add concept of 'publish' branch > - t5516 (fetch-push): fix test restoration > > Add branch@{publish}; it seems that this is somewhat different from > Ram and Peff started working on. There were many discussion > messages going back and forth but it does not appear that the > design issues have been worked out among participants yet. If you are waiting on me, I do not have much else to say on this topic. @{publish} as specified by Felipe is not useful to me, and I would continue to pursue @{push} separately as "the remote-tracking branch of where you would push to". I think there is room for both concepts. As for the patches themselves, I have not reviewed them carefully, and would prefer not to. As I mentioned before, though, I would prefer the short "@{p}" not be taken for @{publish} until it has proven itself. -Peff