mirror of
https://github.com/dguglielmi/sunny-overlay.git
synced 2025-12-06 09:32:37 +01:00
64 lines
2.3 KiB
Diff
64 lines
2.3 KiB
Diff
From: Christian Persch <chpe@src.gnome.org>
|
|
Date: Mon, 23 Mar 2020 09:57:56 +0100
|
|
Subject: screen: Use clean env when creating new tab
|
|
|
|
https://gitlab.gnome.org/GNOME/gnome-terminal/issues/236
|
|
|
|
Origin: backport, https://gitlab.gnome.org/GNOME/gnome-terminal/-/commit/fd5ac772154426e2da5afd633b336414bca33be9
|
|
Bug-Ubuntu: https://bugs.launchpad.net/bugs/1922839
|
|
Last-Update: 2021-04-13
|
|
---
|
|
src/terminal-screen.cc | 11 ++++-------
|
|
1 file changed, 4 insertions(+), 7 deletions(-)
|
|
|
|
diff --git a/src/terminal-screen.cc b/src/terminal-screen.cc
|
|
index 4e004c4..7b55165 100644
|
|
--- a/src/terminal-screen.cc
|
|
+++ b/src/terminal-screen.cc
|
|
@@ -275,8 +275,7 @@ exec_data_new (void)
|
|
}
|
|
|
|
static ExecData *
|
|
-exec_data_clone (ExecData *data,
|
|
- gboolean preserve_argv)
|
|
+exec_data_clone (ExecData *data)
|
|
{
|
|
if (data == nullptr)
|
|
return nullptr;
|
|
@@ -286,8 +285,7 @@ exec_data_clone (ExecData *data,
|
|
clone->cwd = g_strdup (data->cwd);
|
|
|
|
/* If FDs were passed, cannot repeat argv. Return data only for env and cwd */
|
|
- if (!preserve_argv ||
|
|
- data->fd_list != nullptr) {
|
|
+ if (data->fd_list != nullptr) {
|
|
clone->as_shell = TRUE;
|
|
return clone;
|
|
}
|
|
@@ -937,7 +935,6 @@ terminal_screen_reexec_from_screen (TerminalScreen *screen,
|
|
|
|
g_return_val_if_fail (TERMINAL_IS_SCREEN (parent_screen), FALSE);
|
|
|
|
- terminal_unref_exec_data ExecData* data = exec_data_clone (parent_screen->priv->exec_data, FALSE);
|
|
gs_free char* cwd = terminal_screen_get_current_dir (parent_screen);
|
|
|
|
_terminal_debug_print (TERMINAL_DEBUG_PROCESSES,
|
|
@@ -947,7 +944,7 @@ terminal_screen_reexec_from_screen (TerminalScreen *screen,
|
|
cwd);
|
|
|
|
return terminal_screen_reexec_from_exec_data (screen,
|
|
- data,
|
|
+ nullptr /* exec data */,
|
|
nullptr /* envv */,
|
|
cwd,
|
|
cancellable,
|
|
@@ -1753,7 +1750,7 @@ spawn_result_cb (VteTerminal *terminal,
|
|
}
|
|
|
|
/* Retain info for reexec, if possible */
|
|
- ExecData *new_exec_data = exec_data_clone (exec_data, TRUE);
|
|
+ ExecData *new_exec_data = exec_data_clone (exec_data);
|
|
terminal_screen_clear_exec_data (screen, FALSE);
|
|
priv->exec_data = new_exec_data;
|
|
}
|