Hi Lars,
On Sat, 8 Oct 2016, [email protected] wrote:
> @@ -31,6 +32,15 @@ static void cleanup_children(int sig, int in_signal)
> while (children_to_clean) {
> struct child_to_clean *p = children_to_clean;
> children_to_clean = p->next;
> +
> + if (p->process && !in_signal) {
> + struct child_process *process = p->process;
> + if (process->clean_on_exit_handler) {
> + trace_printf("trace: run_command: running exit
> handler for pid %d", p->pid);
On Windows, pid_t translates to long long int, resulting in this build
error:
-- snip --
In file included from cache.h:10:0,
from run-command.c:1:
run-command.c: In function 'cleanup_children':
run-command.c:39:18: error: format '%d' expects argument of type 'int', but
argument 5 has type 'pid_t {aka long long int}' [-Werror=format=]
trace_printf("trace: run_command: running exit handler for pid %d",
p->pid);
^
trace.h:81:53: note: in definition of macro 'trace_printf'
trace_printf_key_fl(TRACE_CONTEXT, __LINE__, NULL, __VA_ARGS__)
^~~~~~~~~~~
cc1.exe: all warnings being treated as errors
make: *** [Makefile:1987: run-command.o] Error 1
-- snap --
Maybe use PRIuMAX as we do elsewhere (see output of `git grep
printf.*pid`):
trace_printf("trace: run_command: running exit handler for pid %"
PRIuMAX, (uintmax_t)p->pid);
Ciao,
Dscho