Georges Basile Stavracas Neto 14909ffe1e
gio/subprocess: Initialize pid variable to 0
The documentation for g_spawn_async_with_pipes_and_fds() states:

> If an error occurs, child_pid, stdin_pipe_out, stdout_pipe_out, and
> stderr_pipe_out will not be filled with valid values.

Before 2dc3a6f0c80e5a8f786369eee0c45bfe19b55f4f, the `child_pid`
argument was `self->pid`, and GObject zero-initializes structs. So
the pid field was properly initialized to zero.

After 2dc3a6f0c80e5a8f786369eee0c45bfe19b55f4f, however, the out
variable is now declared inside initable_init(), and it's unitialized.
So if g_spawn_async_with_pipes_and_fds() errors out, `pid` will have
trash value in it, and the following assertion will fail:

```
g_assert (success == (pid != 0));
```

Fix that by initializing the `pid` variable to zero. Add a test to
exercise the fail code path, and prevent errors like this in the
future.
2025-02-14 21:20:24 -03:00
..
2022-10-13 20:53:56 -04:00
2024-07-11 15:33:41 +01:00
2023-10-17 11:19:44 +01:00
2022-10-13 20:53:56 -04:00
2024-05-09 15:03:55 +00:00
2024-05-09 15:03:55 +00:00
2023-10-23 11:26:53 +01:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2023-10-23 11:26:53 +01:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2023-11-14 14:32:19 +00:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2023-10-23 13:43:27 +01:00
2024-10-01 16:25:57 +01:00
2022-10-13 20:53:56 -04:00
2023-10-23 13:43:27 +01:00
2023-10-23 13:18:13 +01:00
2023-10-23 13:18:13 +01:00
2022-10-13 20:53:56 -04:00
2023-10-23 13:18:13 +01:00
2024-05-05 14:58:43 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2023-10-23 13:18:13 +01:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2024-04-01 11:01:06 +00:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2025-01-28 12:03:10 +00:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2023-10-25 15:10:16 +01:00
2022-10-13 20:53:56 -04:00
2023-08-17 14:25:53 +01:00
2023-08-01 15:33:21 -03:00
2023-10-24 10:58:56 +01:00
2023-10-24 10:58:56 +01:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2023-11-02 16:30:23 +00:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2022-10-13 20:53:56 -04:00
2025-02-03 09:19:17 -05:00
2023-11-14 15:12:53 +00:00
2023-11-02 16:30:23 +00:00
2022-10-13 20:53:56 -04:00