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

[PATCH 3/3] mailinfo: Use i18n.commitencoding

From
Junio C Hamano <junkio@cox.net>
Date
Nov 28, 2005, 00:39 UTC
Message-ID
<7v1x1161xh.fsf@assigned-by-dhcp.cox.net>

This uses i18n.commitencoding configuration item to pick up the default commit encoding for the repository when converting form e-mail encoding to commit encoding (the default is utf8).

Signed-off-by: Junio C Hamano <junkio@cox.net>
---
 * I am not very thrilled with doing this change to mailinfo;
   alternatively the wrapper could read the configuration and
   decide what encoding to pass with -u=encoding flag.
 mailinfo.c |   17 +++++++++--------
 1 files changed, 9 insertions(+), 8 deletions(-)

applies-to: dab00e61bbd43be526bce908d4142d7c80d7a325 f1f909e3185b5ee366e198042447afe749bfc813

diff --git a/mailinfo.c b/mailinfo.c
index 6d8c933..de105ac 100644
--- a/mailinfo.c
+++ b/mailinfo.c
@@ -8,6 +8,7 @@
 #include <string.h>
 #include <ctype.h>
 #include <iconv.h>
+#include "cache.h"
 
 #ifdef NO_STRCASESTR
 extern char *gitstrcasestr(const char *haystack, const char *needle);
@@ -718,27 +719,27 @@ static void handle_body(void)
 static const char mailinfo_usage[] =
 	"git-mailinfo [-k] [-u] msg patch <mail >info";
 
-static void usage(void) {
-	fprintf(stderr, "%s\n", mailinfo_usage);
-	exit(1);
-}
-
 int main(int argc, char **argv)
 {
+	/* NEEDSWORK: might want to do the optional .git/ directory
+	 * discovery
+	 */
+	git_config(git_default_config);
+
 	while (1 < argc && argv[1][0] == '-') {
 		if (!strcmp(argv[1], "-k"))
 			keep_subject = 1;
 		else if (!strcmp(argv[1], "-u"))
-			metainfo_charset = "utf-8";
+			metainfo_charset = git_commit_encoding;
 		else if (!strncmp(argv[1], "-u=", 3))
 			metainfo_charset = argv[1] + 3;
 		else
-			usage();
+			usage(mailinfo_usage);
 		argc--; argv++;
 	}
 
 	if (argc != 3)
-		usage();
+		usage(mailinfo_usage);
 	cmitmsg = fopen(argv[1], "w");
 	if (!cmitmsg) {
 		perror(argv[1]);
---
0.99.9.GIT
Message 1 of 1 in “mailinfo: Use i18n.commitencoding”
  1. 3/3 mailinfo: Use i18n.commitencodingJunio C Hamano, Nov 28, 2005

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.