Move "show_all_errors = 1" to setup_unpack_trees_porcelain()
Not only this makes the code clearer since setting up the porcelain error message is meant to work with show_all_errors, but this fixes a call to setup_unpack_trees_porcelain() in git_merge_trees() which did not set show_all_errors. add_rejected_path() used to double-check whether it was running in plumbing mode. This check was ineffective since it was setting show_all_errors too late for traverse_trees() to see it, and is made useless by this patch. Remove it. Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>maint
							parent
							
								
									e294030fe8
								
							
						
					
					
						commit
						5e65ee35dd
					
				|  | @ -392,7 +392,6 @@ static int merge_working_tree(struct checkout_opts *opts, | ||||||
| 		topts.dir = xcalloc(1, sizeof(*topts.dir)); | 		topts.dir = xcalloc(1, sizeof(*topts.dir)); | ||||||
| 		topts.dir->flags |= DIR_SHOW_IGNORED; | 		topts.dir->flags |= DIR_SHOW_IGNORED; | ||||||
| 		topts.dir->exclude_per_dir = ".gitignore"; | 		topts.dir->exclude_per_dir = ".gitignore"; | ||||||
| 		topts.show_all_errors = 1; |  | ||||||
| 		tree = parse_tree_indirect(old->commit ? | 		tree = parse_tree_indirect(old->commit ? | ||||||
| 					   old->commit->object.sha1 : | 					   old->commit->object.sha1 : | ||||||
| 					   (unsigned char *)EMPTY_TREE_SHA1_BIN); | 					   (unsigned char *)EMPTY_TREE_SHA1_BIN); | ||||||
|  |  | ||||||
|  | @ -704,7 +704,6 @@ int checkout_fast_forward(const unsigned char *head, const unsigned char *remote | ||||||
| 	opts.verbose_update = 1; | 	opts.verbose_update = 1; | ||||||
| 	opts.merge = 1; | 	opts.merge = 1; | ||||||
| 	opts.fn = twoway_merge; | 	opts.fn = twoway_merge; | ||||||
| 	opts.show_all_errors = 1; |  | ||||||
| 	setup_unpack_trees_porcelain(&opts, "merge"); | 	setup_unpack_trees_porcelain(&opts, "merge"); | ||||||
|  |  | ||||||
| 	trees[nr_trees] = parse_tree_indirect(head); | 	trees[nr_trees] = parse_tree_indirect(head); | ||||||
|  |  | ||||||
|  | @ -94,6 +94,8 @@ void setup_unpack_trees_porcelain(struct unpack_trees_options *opts, | ||||||
| 		"The following Working tree files would be overwritten by sparse checkout update:\n%s"; | 		"The following Working tree files would be overwritten by sparse checkout update:\n%s"; | ||||||
| 	msgs[ERROR_WOULD_LOSE_ORPHANED_REMOVED] = | 	msgs[ERROR_WOULD_LOSE_ORPHANED_REMOVED] = | ||||||
| 		"The following Working tree files would be removed by sparse checkout update:\n%s"; | 		"The following Working tree files would be removed by sparse checkout update:\n%s"; | ||||||
|  |  | ||||||
|  | 	opts->show_all_errors = 1; | ||||||
| } | } | ||||||
|  |  | ||||||
| static void add_entry(struct unpack_trees_options *o, struct cache_entry *ce, | static void add_entry(struct unpack_trees_options *o, struct cache_entry *ce, | ||||||
|  | @ -120,12 +122,6 @@ static int add_rejected_path(struct unpack_trees_options *o, | ||||||
| 			     const char *path) | 			     const char *path) | ||||||
| { | { | ||||||
| 	struct rejected_paths_list *newentry; | 	struct rejected_paths_list *newentry; | ||||||
| 	int porcelain = o && (o)->msgs[e]; |  | ||||||
| 	/* |  | ||||||
| 	 * simply display the given error message if in plumbing mode |  | ||||||
| 	 */ |  | ||||||
| 	if (!porcelain) |  | ||||||
| 		o->show_all_errors = 0; |  | ||||||
| 	if (!o->show_all_errors) | 	if (!o->show_all_errors) | ||||||
| 		return error(ERRORMSG(o, e), path); | 		return error(ERRORMSG(o, e), path); | ||||||
|  |  | ||||||
|  |  | ||||||
|  | @ -24,7 +24,7 @@ enum unpack_trees_error_types { | ||||||
|  |  | ||||||
| /* | /* | ||||||
|  * Sets the list of user-friendly error messages to be used by the |  * Sets the list of user-friendly error messages to be used by the | ||||||
|  * command "cmd" (either merge or checkout) |  * command "cmd" (either merge or checkout), and show_all_errors to 1. | ||||||
|  */ |  */ | ||||||
| void setup_unpack_trees_porcelain(struct unpack_trees_options *opts, | void setup_unpack_trees_porcelain(struct unpack_trees_options *opts, | ||||||
| 				  const char *cmd); | 				  const char *cmd); | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	 Matthieu Moy
						Matthieu Moy