git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 3/3] Act on WS_WARN for ws_mode_trailing.

From
David Symonds <dsymonds@gmail.com>
Date
Nov 2, 2007, 13:34 UTC
Message-ID
<1194010463982-git-send-email-dsymonds@gmail.com>
In-Reply-To
<11940104621856-git-send-email-dsymonds@gmail.com>
Signed-off-by: David Symonds <dsymonds@gmail.com>
---
 diff.c |   21 +++++++++++++--------
 1 files changed, 13 insertions(+), 8 deletions(-)
diff --git a/diff.c b/diff.c
index 6f9b624..ebcc0f3 100644
--- a/diff.c
+++ b/diff.c
@@ -544,17 +544,22 @@ static void emit_line_with_ws(int nparents,
 	tail = len - 1;
 	if (line[tail] == '\n' && i < tail)
 		tail--;
-	while (i < tail) {
-		if (!isspace(line[tail]))
-			break;
-		tail--;
+	if (ws_mode_trailing != WS_OKAY) {
+		while (i < tail) {
+			if (!isspace(line[tail]))
+				break;
+			tail--;
+		}
 	}
 	if ((i < tail && line[tail + 1] != '\n')) {
 		/* This has whitespace between tail+1..len */
-		fputs(set, stdout);
-		fwrite(line + i, tail - i + 1, 1, stdout);
-		fputs(reset, stdout);
-		emit_line(ws, reset, line + tail + 1, len - tail - 1);
+		if (ws_mode_trailing == WS_WARN) {
+			fputs(set, stdout);
+			fwrite(line + i, tail - i + 1, 1, stdout);
+			fputs(reset, stdout);
+			emit_line(ws, reset, line + tail + 1, len - tail - 1);
+		}
+		/* TODO: handle WS_ERROR and WS_AUTOFIX */
 	}
 	else
 		emit_line(set, reset, line + i, len - i);
-- 
1.5.3.1
Previous: David SymondsNext: David Symonds
Message 3 of 5 in “Implement parsing for new core.whitespace.* options.”
  1. 1/3 Implement parsing for new core.whitespace.* options.David Symonds, Nov 2, 2007
  2. 2/3 Act on WS_WARN for ws_mode_space_before_tab.David Symonds, Nov 2, 2007
  3. 3/3 Act on WS_WARN for ws_mode_trailing.David Symonds, Nov 2, 2007
  4. David SymondsNov 2, 2007
  5. BazNov 2, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.