Re: [PATCH 9/9] am: make a direct call to merge_recursive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Junio,

On Wed, 29 Jun 2016, Junio C Hamano wrote:

> Johannes Schindelin <johannes.schindelin@xxxxxx> writes:
> 
> > -	cp.git_cmd = 1;
> > +	init_merge_options(&o);
> > +
> > +	o.branch1 = "HEAD";
> > +	his_tree_name = xstrfmt("%.*s", linelen(state->msg), state->msg);
> > +	o.branch2 = his_tree_name;
> >  
> > -	argv_array_pushf(&cp.env_array, "GITHEAD_%s=%.*s",
> > -			 sha1_to_hex(his_tree), linelen(state->msg), state->msg);
> >  	if (state->quiet)
> > -		argv_array_push(&cp.env_array, "GIT_MERGE_VERBOSITY=0");
> > +		o.verbosity = 0;
> >  
> > -	argv_array_push(&cp.args, "merge-recursive");
> > -	argv_array_push(&cp.args, sha1_to_hex(orig_tree));
> > -	argv_array_push(&cp.args, "--");
> > -	argv_array_push(&cp.args, sha1_to_hex(our_tree));
> > -	argv_array_push(&cp.args, sha1_to_hex(his_tree));
> > +	status = merge_recursive_generic(&o, our_tree, his_tree, 1, bases, &result);
> > +	if (status < 0)
> > +		exit(128);
> > +	free(his_tree_name);
> >  
> > -	status = run_command(&cp) ? (-1) : 0;
> > -	discard_cache();
> > -	read_cache();
> >  	return status;
> >  }
> 
> Is this a correct conversion?
> 
> We used to prepare the command line and called run_command() and
> without dying returned status with the error status from the
> merge-recursive that was spawned by run_command().
> 
> The new code does not report failure to the caller and instead dies.

True, this is incorrect.

I took a step back and realized that the most appropriate course of
action would be to revert the commit that calls run_command() to begin
with. This also solves the authorship issue.

And while at it, I also noticed another sore to my eye that I had noticed
repeatedly and now fix as part of this patch series.

Thanks,
Dscho
--
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



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]