{"thread":{"id":"14294","subject":"[PATCH 0/5] git_config_string janitorial conversions.","startedAt":"2008-07-05T05:24:39Z","lastAt":"2008-07-06T03:47:18Z","messageCount":7,"participants":["Brian Hetro","Christian Couder"],"isPatch":true,"patchVersion":1,"patchTotal":5},"messages":[{"id":"82267","messageId":"cover.1215234749.git.whee@smaertness.net","threadId":"14294","inReplyTo":null,"subject":"[PATCH 0/5] git_config_string janitorial conversions.","fromName":"Brian Hetro","fromEmail":"whee@smaertness.net","sentAt":"2008-07-05T05:24:39Z","receivedAt":"2008-07-05T05:24:39Z","isPatch":true,"sender":{"key":"whee@smaertness.net","avatar":"https://gravatar.com/avatar/1d20c40734a674e76a0a58c6d122ef493291db306d613a40653a035084d557b9?d=mp&s=160"},"body":"These patches are related to the git_config_string \"janitorial\" work.\n\nThere may be more cleanup possible, but these are the straightforward\nchanges.\n\nBrian Hetro (5):\n  builtin-commit.c: Use 'git_config_string' to get 'commit.template'\n  builtin-log.c: Use 'git_config_string' to get 'format.subjectprefix'\n    and 'format.suffix'\n  convert.c: Use 'git_config_string' to get 'smudge' and 'clean'\n  diff.c: Use 'git_config_string' to get 'diff.external'\n  http.c: Use 'git_config_string' to clean up SSL config.\n\n builtin-commit.c |   11 ++++-------\n builtin-log.c    |   16 ++++------------\n convert.c        |   25 +++++++++----------------\n diff.c           |    8 ++------\n http.c           |   36 ++++++++++++------------------------\n 5 files changed, 31 insertions(+), 65 deletions(-)\n"},{"id":"82272","messageId":"fd5cae53021281c920ba48efef82dc8a8d3c7fe1.1215234749.git.whee@smaertness.net","threadId":"14294","inReplyTo":"cover.1215234749.git.whee@smaertness.net","subject":"[PATCH 1/5] builtin-commit.c: Use 'git_config_string' to get 'commit.template'","fromName":"Brian Hetro","fromEmail":"whee@smaertness.net","sentAt":"2008-07-05T05:24:40Z","receivedAt":"2008-07-05T05:24:40Z","isPatch":true,"sender":{"key":"whee@smaertness.net","avatar":"https://gravatar.com/avatar/1d20c40734a674e76a0a58c6d122ef493291db306d613a40653a035084d557b9?d=mp&s=160"},"body":"Signed-off-by: Brian Hetro <whee@smaertness.net>\n---\n builtin-commit.c |   11 ++++-------\n 1 files changed, 4 insertions(+), 7 deletions(-)\n\ndiff --git a/builtin-commit.c b/builtin-commit.c\nindex e3ad38b..745c11e 100644\n--- a/builtin-commit.c\n+++ b/builtin-commit.c\n@@ -45,7 +45,8 @@ static enum {\n \tCOMMIT_PARTIAL,\n } commit_style;\n \n-static char *logfile, *force_author, *template_file;\n+static char *logfile, *force_author;\n+static const char *template_file;\n static char *edit_message, *use_message;\n static char *author_name, *author_email, *author_date;\n static int all, edit_flag, also, interactive, only, amend, signoff;\n@@ -877,12 +878,8 @@ static void print_summary(const char *prefix, const unsigned char *sha1)\n \n int git_commit_config(const char *k, const char *v, void *cb)\n {\n-\tif (!strcmp(k, \"commit.template\")) {\n-\t\tif (!v)\n-\t\t\treturn config_error_nonbool(v);\n-\t\ttemplate_file = xstrdup(v);\n-\t\treturn 0;\n-\t}\n+\tif (!strcmp(k, \"commit.template\"))\n+\t\treturn git_config_string(&template_file, k, v);\n \n \treturn git_status_config(k, v, cb);\n }\n-- \n1.5.6.1.204.g699135\n"},{"id":"82268","messageId":"f1c8159441e6afc5021e5f087f6feaf5b53e61df.1215234749.git.whee@smaertness.net","threadId":"14294","inReplyTo":"fd5cae53021281c920ba48efef82dc8a8d3c7fe1.1215234749.git.whee@smaertness.net","subject":"[PATCH 2/5] builtin-log.c: Use 'git_config_string' to get 'format.subjectprefix' and 'format.suffix'","fromName":"Brian Hetro","fromEmail":"whee@smaertness.net","sentAt":"2008-07-05T05:24:41Z","receivedAt":"2008-07-05T05:24:41Z","isPatch":true,"sender":{"key":"whee@smaertness.net","avatar":"https://gravatar.com/avatar/1d20c40734a674e76a0a58c6d122ef493291db306d613a40653a035084d557b9?d=mp&s=160"},"body":"Signed-off-by: Brian Hetro <whee@smaertness.net>\n---\n builtin-log.c |   16 ++++------------\n 1 files changed, 4 insertions(+), 12 deletions(-)\n\ndiff --git a/builtin-log.c b/builtin-log.c\nindex 9979e37..430d876 100644\n--- a/builtin-log.c\n+++ b/builtin-log.c\n@@ -234,12 +234,8 @@ static int git_log_config(const char *var, const char *value, void *cb)\n {\n \tif (!strcmp(var, \"format.pretty\"))\n \t\treturn git_config_string(&fmt_pretty, var, value);\n-\tif (!strcmp(var, \"format.subjectprefix\")) {\n-\t\tif (!value)\n-\t\t\tconfig_error_nonbool(var);\n-\t\tfmt_patch_subject_prefix = xstrdup(value);\n-\t\treturn 0;\n-\t}\n+\tif (!strcmp(var, \"format.subjectprefix\"))\n+\t\treturn git_config_string(&fmt_patch_subject_prefix, var, value);\n \tif (!strcmp(var, \"log.date\"))\n \t\treturn git_config_string(&default_date_mode, var, value);\n \tif (!strcmp(var, \"log.showroot\")) {\n@@ -489,12 +485,8 @@ static int git_format_config(const char *var, const char *value, void *cb)\n \t\tadd_header(value);\n \t\treturn 0;\n \t}\n-\tif (!strcmp(var, \"format.suffix\")) {\n-\t\tif (!value)\n-\t\t\treturn config_error_nonbool(var);\n-\t\tfmt_patch_suffix = xstrdup(value);\n-\t\treturn 0;\n-\t}\n+\tif (!strcmp(var, \"format.suffix\"))\n+\t\treturn git_config_string(&fmt_patch_suffix, var, value);\n \tif (!strcmp(var, \"format.cc\")) {\n \t\tif (!value)\n \t\t\treturn config_error_nonbool(var);\n-- \n1.5.6.1.204.g699135\n"},{"id":"82269","messageId":"81a6961a970f77cc8166c1ae59cae6326bc5c143.1215234749.git.whee@smaertness.net","threadId":"14294","inReplyTo":"f1c8159441e6afc5021e5f087f6feaf5b53e61df.1215234749.git.whee@smaertness.net","subject":"[PATCH 3/5] convert.c: Use 'git_config_string' to get 'smudge' and 'clean'","fromName":"Brian Hetro","fromEmail":"whee@smaertness.net","sentAt":"2008-07-05T05:24:42Z","receivedAt":"2008-07-05T05:24:42Z","isPatch":true,"sender":{"key":"whee@smaertness.net","avatar":"https://gravatar.com/avatar/1d20c40734a674e76a0a58c6d122ef493291db306d613a40653a035084d557b9?d=mp&s=160"},"body":"Signed-off-by: Brian Hetro <whee@smaertness.net>\n---\n convert.c |   25 +++++++++----------------\n 1 files changed, 9 insertions(+), 16 deletions(-)\n\ndiff --git a/convert.c b/convert.c\nindex 1c66844..352b69d 100644\n--- a/convert.c\n+++ b/convert.c\n@@ -319,8 +319,8 @@ static int apply_filter(const char *path, const char *src, size_t len,\n static struct convert_driver {\n \tconst char *name;\n \tstruct convert_driver *next;\n-\tchar *smudge;\n-\tchar *clean;\n+\tconst char *smudge;\n+\tconst char *clean;\n } *user_convert, **user_convert_tail;\n \n static int read_convert_config(const char *var, const char *value, void *cb)\n@@ -358,19 +358,12 @@ static int read_convert_config(const char *var, const char *value, void *cb)\n \t * The command-line will not be interpolated in any way.\n \t */\n \n-\tif (!strcmp(\"smudge\", ep)) {\n-\t\tif (!value)\n-\t\t\treturn config_error_nonbool(var);\n-\t\tdrv->smudge = strdup(value);\n-\t\treturn 0;\n-\t}\n+\tif (!strcmp(\"smudge\", ep))\n+\t\treturn git_config_string(&drv->smudge, var, value);\n+\n+\tif (!strcmp(\"clean\", ep))\n+\t\treturn git_config_string(&drv->clean, var, value);\n \n-\tif (!strcmp(\"clean\", ep)) {\n-\t\tif (!value)\n-\t\t\treturn config_error_nonbool(var);\n-\t\tdrv->clean = strdup(value);\n-\t\treturn 0;\n-\t}\n \treturn 0;\n }\n \n@@ -576,7 +569,7 @@ int convert_to_git(const char *path, const char *src, size_t len,\n \tstruct git_attr_check check[3];\n \tint crlf = CRLF_GUESS;\n \tint ident = 0, ret = 0;\n-\tchar *filter = NULL;\n+\tconst char *filter = NULL;\n \n \tsetup_convert_check(check);\n \tif (!git_checkattr(path, ARRAY_SIZE(check), check)) {\n@@ -606,7 +599,7 @@ int convert_to_working_tree(const char *path, const char *src, size_t len, struc\n \tstruct git_attr_check check[3];\n \tint crlf = CRLF_GUESS;\n \tint ident = 0, ret = 0;\n-\tchar *filter = NULL;\n+\tconst char *filter = NULL;\n \n \tsetup_convert_check(check);\n \tif (!git_checkattr(path, ARRAY_SIZE(check), check)) {\n-- \n1.5.6.1.204.g699135\n"},{"id":"82270","messageId":"1addd570c31b5f1b09bde0d330c4094714cac624.1215234749.git.whee@smaertness.net","threadId":"14294","inReplyTo":"81a6961a970f77cc8166c1ae59cae6326bc5c143.1215234749.git.whee@smaertness.net","subject":"[PATCH 4/5] diff.c: Use 'git_config_string' to get 'diff.external'","fromName":"Brian Hetro","fromEmail":"whee@smaertness.net","sentAt":"2008-07-05T05:24:43Z","receivedAt":"2008-07-05T05:24:43Z","isPatch":true,"sender":{"key":"whee@smaertness.net","avatar":"https://gravatar.com/avatar/1d20c40734a674e76a0a58c6d122ef493291db306d613a40653a035084d557b9?d=mp&s=160"},"body":"Signed-off-by: Brian Hetro <whee@smaertness.net>\n---\n diff.c |    8 ++------\n 1 files changed, 2 insertions(+), 6 deletions(-)\n\ndiff --git a/diff.c b/diff.c\nindex 803fbba..6a39b39 100644\n--- a/diff.c\n+++ b/diff.c\n@@ -153,12 +153,8 @@ int git_diff_ui_config(const char *var, const char *value, void *cb)\n \t\tdiff_auto_refresh_index = git_config_bool(var, value);\n \t\treturn 0;\n \t}\n-\tif (!strcmp(var, \"diff.external\")) {\n-\t\tif (!value)\n-\t\t\treturn config_error_nonbool(var);\n-\t\texternal_diff_cmd_cfg = xstrdup(value);\n-\t\treturn 0;\n-\t}\n+\tif (!strcmp(var, \"diff.external\"))\n+\t\treturn git_config_string(&external_diff_cmd_cfg, var, value);\n \tif (!prefixcmp(var, \"diff.\")) {\n \t\tconst char *ep = strrchr(var, '.');\n \n-- \n1.5.6.1.204.g699135\n"},{"id":"82271","messageId":"73ae8907cbd1b103ae47d9a73e0489c0a117ea8b.1215234749.git.whee@smaertness.net","threadId":"14294","inReplyTo":"1addd570c31b5f1b09bde0d330c4094714cac624.1215234749.git.whee@smaertness.net","subject":"[PATCH 5/5] http.c: Use 'git_config_string' to clean up SSL config.","fromName":"Brian Hetro","fromEmail":"whee@smaertness.net","sentAt":"2008-07-05T05:24:44Z","receivedAt":"2008-07-05T05:24:44Z","isPatch":true,"sender":{"key":"whee@smaertness.net","avatar":"https://gravatar.com/avatar/1d20c40734a674e76a0a58c6d122ef493291db306d613a40653a035084d557b9?d=mp&s=160"},"body":"Signed-off-by: Brian Hetro <whee@smaertness.net>\n---\n http.c |   36 ++++++++++++------------------------\n 1 files changed, 12 insertions(+), 24 deletions(-)\n\ndiff --git a/http.c b/http.c\nindex 105dc93..c22adcc 100644\n--- a/http.c\n+++ b/http.c\n@@ -13,14 +13,14 @@ static CURL *curl_default;\n char curl_errorstr[CURL_ERROR_SIZE];\n \n static int curl_ssl_verify = -1;\n-static char *ssl_cert = NULL;\n+static const char *ssl_cert = NULL;\n #if LIBCURL_VERSION_NUM >= 0x070902\n-static char *ssl_key = NULL;\n+static const char *ssl_key = NULL;\n #endif\n #if LIBCURL_VERSION_NUM >= 0x070908\n-static char *ssl_capath = NULL;\n+static const char *ssl_capath = NULL;\n #endif\n-static char *ssl_cainfo = NULL;\n+static const char *ssl_cainfo = NULL;\n static long curl_low_speed_limit = -1;\n static long curl_low_speed_time = -1;\n static int curl_ftp_no_epsv = 0;\n@@ -100,39 +100,27 @@ static int http_options(const char *var, const char *value, void *cb)\n \t}\n \n \tif (!strcmp(\"http.sslcert\", var)) {\n-\t\tif (ssl_cert == NULL) {\n-\t\t\tif (!value)\n-\t\t\t\treturn config_error_nonbool(var);\n-\t\t\tssl_cert = xstrdup(value);\n-\t\t}\n+\t\tif (ssl_cert == NULL)\n+\t\t\treturn git_config_string(&ssl_cert, var, value);\n \t\treturn 0;\n \t}\n #if LIBCURL_VERSION_NUM >= 0x070902\n \tif (!strcmp(\"http.sslkey\", var)) {\n-\t\tif (ssl_key == NULL) {\n-\t\t\tif (!value)\n-\t\t\t\treturn config_error_nonbool(var);\n-\t\t\tssl_key = xstrdup(value);\n-\t\t}\n+\t\tif (ssl_key == NULL)\n+\t\t\treturn git_config_string(&ssl_key, var, value);\n \t\treturn 0;\n \t}\n #endif\n #if LIBCURL_VERSION_NUM >= 0x070908\n \tif (!strcmp(\"http.sslcapath\", var)) {\n-\t\tif (ssl_capath == NULL) {\n-\t\t\tif (!value)\n-\t\t\t\treturn config_error_nonbool(var);\n-\t\t\tssl_capath = xstrdup(value);\n-\t\t}\n+\t\tif (ssl_capath == NULL)\n+\t\t\treturn git_config_string(&ssl_capath, var, value);\n \t\treturn 0;\n \t}\n #endif\n \tif (!strcmp(\"http.sslcainfo\", var)) {\n-\t\tif (ssl_cainfo == NULL) {\n-\t\t\tif (!value)\n-\t\t\t\treturn config_error_nonbool(var);\n-\t\t\tssl_cainfo = xstrdup(value);\n-\t\t}\n+\t\tif (ssl_cainfo == NULL)\n+\t\t\treturn git_config_string(&ssl_cainfo, var, value);\n \t\treturn 0;\n \t}\n \n-- \n1.5.6.1.204.g699135\n"},{"id":"82331","messageId":"200807060547.19085.chriscool@tuxfamily.org","threadId":"14294","inReplyTo":"cover.1215234749.git.whee@smaertness.net","subject":"Re: [PATCH 0/5] git_config_string janitorial conversions.","fromName":"Christian Couder","fromEmail":"chriscool@tuxfamily.org","sentAt":"2008-07-06T03:47:18Z","receivedAt":"2008-07-06T03:47:18Z","isPatch":true,"sender":{"key":"christian.couder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/208954?v=4"},"body":"Le samedi 5 juillet 2008, Brian Hetro a écrit :\n> These patches are related to the git_config_string \"janitorial\" work.\n\nYour patches look good to me.\n\nBy the way, your first patch in the series seems to fix a bug:\n\n> int git_commit_config(const char *k, const char *v, void *cb)\n> {\n> -       if (!strcmp(k, \"commit.template\")) {\n> -               if (!v)\n> -                       return config_error_nonbool(v);\n\nIt should have been:\n-                       return config_error_nonbool(k);\n\n> -               template_file = xstrdup(v);\n> -               return 0;\n> -       }\n> +       if (!strcmp(k, \"commit.template\"))\n> +               return git_config_string(&template_file, k, v);\n\nThere is the same bug in \"wt-status.c\". I will send a fix for this one.\n\nSo (for the patch series):\n\nTested-by: Christian Couder <chriscool@tuxfamily.org>\n\nThanks,\nChristian.\n"}]}