[gnome-builder] libide/foundry: generate subprocess flags from unix fd map
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-builder] libide/foundry: generate subprocess flags from unix fd map
- Date: Fri, 15 Jul 2022 03:47:10 +0000 (UTC)
commit 5c1ff45745267d656436ab4b10819fd14c8ded71
Author: Christian Hergert <chergert redhat com>
Date: Thu Jul 14 20:46:36 2022 -0700
libide/foundry: generate subprocess flags from unix fd map
src/libide/foundry/ide-run-context.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
---
diff --git a/src/libide/foundry/ide-run-context.c b/src/libide/foundry/ide-run-context.c
index 58406aa96..ea202ac64 100644
--- a/src/libide/foundry/ide-run-context.c
+++ b/src/libide/foundry/ide-run-context.c
@@ -844,7 +844,7 @@ ide_run_context_take_fd (IdeRunContext *self,
IdeRunContextLayer *layer;
g_return_if_fail (IDE_IS_RUN_CONTEXT (self));
- g_return_if_fail (source_fd > -1);
+ g_return_if_fail (source_fd >= -1);
g_return_if_fail (dest_fd > -1);
layer = ide_run_context_current_layer (self);
@@ -1063,6 +1063,7 @@ ide_run_context_end (IdeRunContext *self,
GError **error)
{
g_autoptr(IdeSubprocessLauncher) launcher = NULL;
+ GSubprocessFlags flags = 0;
guint length;
g_return_val_if_fail (IDE_IS_RUN_CONTEXT (self), NULL);
@@ -1120,6 +1121,12 @@ ide_run_context_end (IdeRunContext *self,
source_fd = ide_unix_fd_map_steal (self->root.unix_fd_map, i, &dest_fd);
+ if (dest_fd == STDOUT_FILENO && source_fd == -1)
+ flags |= G_SUBPROCESS_FLAGS_STDOUT_SILENCE;
+
+ if (dest_fd == STDERR_FILENO && source_fd == -1)
+ flags |= G_SUBPROCESS_FLAGS_STDERR_SILENCE;
+
if (source_fd != -1 && dest_fd != -1)
{
if (dest_fd == STDIN_FILENO)
@@ -1133,6 +1140,7 @@ ide_run_context_end (IdeRunContext *self,
}
}
+ ide_subprocess_launcher_set_flags (launcher, flags);
ide_subprocess_launcher_set_setup_tty (launcher, self->setup_tty);
return g_steal_pointer (&launcher);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]