git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
* [PATCH] diff: prefer indent heuristic over compaction heuristic
@ 2016-12-17  0:54 Jacob Keller
  2016-12-17  1:30 ` Junio C Hamano
  0 siblings, 1 reply; 17+ messages in thread
From: Jacob Keller @ 2016-12-17  0:54 UTC (permalink / raw)
  To: git; +Cc: Norbert Kiesel, Jacob Keller

From: Jacob Keller <jacob.keller@gmail.com>

The current configuration code for enabling experimental heuristics
prefers the last-set heuristic in the configuration. However, it is not
necessarily easy to see what order the configuration will be read. This
means that it is possible for a user to have accidentally enabled both
heuristics, and end up only enabling the older compaction heuristic.

Modify the code so that we do not clear the other heuristic when we set
each heuristic enabled. Then, during diff_setup() when we check the
configuration, we will first check the newer indent heuristic. This
ensures that we only enable the newer heuristic if both have been
enabled.

Signed-off-by: Jacob Keller <jacob.keller@gmail.com>
---
 diff.c | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/diff.c b/diff.c
index ec8728362dae..48a5b2797e3d 100644
--- a/diff.c
+++ b/diff.c
@@ -223,16 +223,10 @@ void init_diff_ui_defaults(void)
 
 int git_diff_heuristic_config(const char *var, const char *value, void *cb)
 {
-	if (!strcmp(var, "diff.indentheuristic")) {
+	if (!strcmp(var, "diff.indentheuristic"))
 		diff_indent_heuristic = git_config_bool(var, value);
-		if (diff_indent_heuristic)
-			diff_compaction_heuristic = 0;
-	}
-	if (!strcmp(var, "diff.compactionheuristic")) {
+	if (!strcmp(var, "diff.compactionheuristic"))
 		diff_compaction_heuristic = git_config_bool(var, value);
-		if (diff_compaction_heuristic)
-			diff_indent_heuristic = 0;
-	}
 	return 0;
 }
 
-- 
2.11.0.rc2.152.g4d04e67


^ permalink raw reply related	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2017-04-28  8:41 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-12-17  0:54 [PATCH] diff: prefer indent heuristic over compaction heuristic Jacob Keller
2016-12-17  1:30 ` Junio C Hamano
2016-12-17  8:02   ` Jacob Keller
2016-12-22 21:12     ` Junio C Hamano
2016-12-22 21:41       ` Jacob Keller
2016-12-22 22:43         ` Junio C Hamano
2016-12-23  7:22       ` Jeff King
2016-12-23  8:12         ` Jacob Keller
2016-12-23 16:19           ` Jeff King
2016-12-23 17:45             ` Junio C Hamano
2016-12-23 21:17               ` Junio C Hamano
2016-12-23 22:21                 ` Jeff King
2016-12-23 22:23                   ` Jacob Keller
2016-12-24 12:55                 ` Michael Haggerty
2017-04-27 21:17                   ` Stefan Beller
2017-04-28  8:11                     ` Jeff King
2017-04-28  8:40                     ` Martin Liška

Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).