Fix Windows build of next
cover Fix Windows build of next
The topic ot/ref-filter-object-info broke the Windows build since it entered pu, and as a consequence we have no test coverage of the other topics in pu.
Sadly, this topic now advanced to next. Junio, I would like to ask you to merge this fix down to next and to advance to master together with ot/ref-filter-object-info.
Johannes Schindelin (1):
ref-filter: replace unportable %lld format
ref-filter.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
base-commit: d364d6b33e15dbc6e57d83f9f1457a8e8fe77046
Published-As: https://github.com/gitgitgadget/git/releases/tags/pr-87%2Fdscho%2Fno-percent-lld-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-87/dscho/no-percent-lld-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/87
Signature · 1 line
gitgitgadget
PATCH 1/1 ref-filter: replace unportable `%lld` format
From: Johannes Schindelin <[email protected]>
The %lld format is supported on Linux and macOS, but not on Windows. This issue has been reported ten days ago (Message-ID:
[email protected]), but the corresponding topic still advanced to next in the meantime, breaking the Windows build.
Let's use PRIdMAX and a cast to intmax_t instead, which unbreaks the build, and imitates how we do things e.g. in json-writer.c already.
--- ref-filter.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
ref-filter.c +1 -1
@@ -897,7 +897,7 @@ static void grab_common_values(struct atom_value *val, int deref, struct expand_ v->s =xstrdup (type_name (oi->type)); else if (!strcmp(name, "objectsize:disk")) { v->value = oi->disk_size; - v->s =xstrfmt ("%lld" , (long long )oi->disk_size); + v->s =xstrfmt ("%" PRIdMAX, (intmax_t )oi->disk_size); } else if (!strcmp(name, "objectsize")) { v->value = oi->size; v->s =xstrfmt ("%lu" , oi->size);
Signature · 1 line
gitgitgadget
Re: [PATCH 1/1] ref-filter: replace unportable `%lld` format
"Johannes Schindelin via GitGitGadget" <[email protected]>
Quoted 10 lines · writes:
From: Johannes Schindelin <[email protected]>
The
%lldformat is supported on Linux and macOS, but not on Windows. This issue has been reported ten days ago (Message-ID:
[email protected]), but the corresponding topic still advanced tonextin the meantime, breaking the Windows build.Let's use
PRIdMAXand a cast tointmax_tinstead, which unbreaks the build, and imitates how we do things e.g. injson-writer.calready.
We seem to be already using PRIdMAX in 'master', so this is safe thing to do and I will merge it directly to 'next', but the fact that PRIdMAX is used without any fallback definition in git-compat-util.h makes me suspect that we can now drop the fallback for PRIuMAX.
Thanks.
Quoted 18 lines
Signed-off-by Johannes Schindelin <[email protected]>--- ref-filter.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)ref-filter.c +1
-1@@ -897,7 +897,7 @@ static void grab_common_values(struct atom_value *val, int deref, struct expand_ v->s =xstrdup (type_name (oi->type)); else if (!strcmp(name, "objectsize:disk")) { v->value = oi->disk_size; - v->s =xstrfmt ("%lld" , (long long )oi->disk_size); + v->s =xstrfmt ("%" PRIdMAX, (intmax_t )oi->disk_size); } else if (!strcmp(name, "objectsize")) { v->value = oi->size; v->s =xstrfmt ("%lu" , oi->size);