{"thread":{"id":"64685","subject":"[PATCH] config: use git_parse_int() in git_config_get_expiry_in_days()","startedAt":"2025-12-27T09:34:55Z","lastAt":"2025-12-27T09:34:55Z","messageCount":1,"participants":["René Scharfe"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"532774","messageId":"1bd3c7f3-fcf6-4d8e-aa38-c15e3d51ce4c@web.de","threadId":"64685","inReplyTo":null,"subject":"[PATCH] config: use git_parse_int() in git_config_get_expiry_in_days()","fromName":"René Scharfe","fromEmail":"l.s.r@web.de","sentAt":"2025-12-27T09:29:35Z","receivedAt":"2025-12-27T09:34:55Z","isPatch":true,"sender":{"key":"l.s.r@web.de","avatar":"https://avatars.githubusercontent.com/u/26122331?v=4"},"body":"git_config_get_expiry_in_days() calls git_parse_signed() with the\nmaximum value of int, which is equivalent to calling git_parse_int().\nDo that instead, as its shorter and clearer.\n\nThis requires demoting \"days\" to int to match.  Promote \"scale\" to\nintmax_t in turn to arrive at the same result when multiplying them.\n\nSigned-off-by: René Scharfe <l.s.r@web.de>\n---\nPatch formatted with --function-context for easier review.\n\n config.c | 6 +++---\n 1 file changed, 3 insertions(+), 3 deletions(-)\n\ndiff --git a/config.c b/config.c\nindex 1738c0cb0d..7f6d53b473 100644\n--- a/config.c\n+++ b/config.c\n@@ -2434,22 +2434,22 @@ int repo_config_get_expiry(struct repository *r, const char *key, char **output)\n int repo_config_get_expiry_in_days(struct repository *r, const char *key,\n \t\t\t\t   timestamp_t *expiry, timestamp_t now)\n {\n \tconst char *expiry_string;\n-\tintmax_t days;\n+\tint days;\n \ttimestamp_t when;\n \n \tif (repo_config_get_string_tmp(r, key, &expiry_string))\n \t\treturn 1; /* no such thing */\n \n-\tif (git_parse_signed(expiry_string, &days, maximum_signed_value_of_type(int))) {\n-\t\tconst int scale = 86400;\n+\tif (git_parse_int(expiry_string, &days)) {\n+\t\tconst intmax_t scale = 86400;\n \t\t*expiry = now - days * scale;\n \t\treturn 0;\n \t}\n \n \tif (!parse_expiry_date(expiry_string, &when)) {\n \t\t*expiry = when;\n \t\treturn 0;\n \t}\n \treturn -1; /* thing exists but cannot be parsed */\n }\n-- \n2.52.0\n"}]}