Accommodate 'sudo toolbox' when tracking the active container
This commit is contained in:
parent
7855b397b0
commit
de28387421
@ -1,4 +1,4 @@
|
||||
From 0728f06f528c1ba77a8671c529e44fbabd9c8980 Mon Sep 17 00:00:00 2001
|
||||
From 8d4a539a20142a3944e12f029ded76a27749296c Mon Sep 17 00:00:00 2001
|
||||
From: Debarshi Ray <debarshir@gnome.org>
|
||||
Date: Wed, 7 Jan 2015 16:01:00 +0100
|
||||
Subject: [PATCH 01/10] Add sequences and signals for desktop notification
|
||||
@ -36,10 +36,10 @@ index 241128c3ccfe..4412cf3d5f5c 100644
|
||||
VOID:STRING,UINT
|
||||
VOID:UINT,UINT
|
||||
diff --git a/src/vte.cc b/src/vte.cc
|
||||
index c33b27c45023..01c7dd7eebc4 100644
|
||||
index 2614e5b4d20f..ac54d8791ba2 100644
|
||||
--- a/src/vte.cc
|
||||
+++ b/src/vte.cc
|
||||
@@ -10135,6 +10135,15 @@ Terminal::emit_pending_signals()
|
||||
@@ -10143,6 +10143,15 @@ Terminal::emit_pending_signals()
|
||||
|
||||
emit_adjustment_changed();
|
||||
|
||||
@ -72,7 +72,7 @@ index d5e96535a867..71c4c66cc4ee 100644
|
||||
VteTerminalClassPrivate *priv;
|
||||
};
|
||||
diff --git a/src/vtegtk.cc b/src/vtegtk.cc
|
||||
index f7a65f72b68e..30e0af0f8015 100644
|
||||
index 41de14ba1019..09a18439277f 100644
|
||||
--- a/src/vtegtk.cc
|
||||
+++ b/src/vtegtk.cc
|
||||
@@ -934,6 +934,7 @@ vte_terminal_class_init(VteTerminalClass *klass)
|
||||
@ -206,10 +206,10 @@ index ba9a2df6b9c4..c765b0bfb1f4 100644
|
||||
default:
|
||||
break;
|
||||
--
|
||||
2.25.4
|
||||
2.29.2
|
||||
|
||||
|
||||
From 4c3bce7d70e208bee0f36d64a540ade9975c3ce7 Mon Sep 17 00:00:00 2001
|
||||
From e75a6e2b9b4a1789ab7c2c1572e13c38dc73daf5 Mon Sep 17 00:00:00 2001
|
||||
From: Debarshi Ray <debarshir@gnome.org>
|
||||
Date: Thu, 29 Jan 2015 13:09:17 +0100
|
||||
Subject: [PATCH 02/10] vte.sh: Emit OSC 777 from PROMPT_COMMAND
|
||||
@ -242,10 +242,10 @@ index a12e254b6cba..f7c4fdeff30b 100644
|
||||
}
|
||||
|
||||
--
|
||||
2.25.4
|
||||
2.29.2
|
||||
|
||||
|
||||
From 5171a84e95ad20048dcb1683c149711430002149 Mon Sep 17 00:00:00 2001
|
||||
From d726c0779babba159dc01a1dd20c0a6678dbd4dc Mon Sep 17 00:00:00 2001
|
||||
From: Debarshi Ray <debarshir@gnome.org>
|
||||
Date: Thu, 22 Jan 2015 16:37:10 +0100
|
||||
Subject: [PATCH 03/10] Test the notification-received signal
|
||||
@ -281,10 +281,10 @@ index fc26c2b0dfc3..634b8ddeeb91 100644
|
||||
|
||||
class App : Gtk.Application
|
||||
diff --git a/src/app/app.cc b/src/app/app.cc
|
||||
index d8bfe9e13826..e95f58cd3bac 100644
|
||||
index 6453ef8516f9..65521e1f4177 100644
|
||||
--- a/src/app/app.cc
|
||||
+++ b/src/app/app.cc
|
||||
@@ -1851,6 +1851,14 @@ window_window_title_changed_cb(VteTerminal* terminal,
|
||||
@@ -1862,6 +1862,14 @@ window_window_title_changed_cb(VteTerminal* terminal,
|
||||
vte_terminal_get_window_title(window->terminal));
|
||||
}
|
||||
|
||||
@ -299,7 +299,7 @@ index d8bfe9e13826..e95f58cd3bac 100644
|
||||
static void
|
||||
window_lower_window_cb(VteTerminal* terminal,
|
||||
VteappWindow* window)
|
||||
@@ -2086,6 +2094,8 @@ vteapp_window_constructed(GObject *object)
|
||||
@@ -2097,6 +2105,8 @@ vteapp_window_constructed(GObject *object)
|
||||
if (options.object_notifications)
|
||||
g_signal_connect(window->terminal, "notify", G_CALLBACK(window_notify_cb), window);
|
||||
|
||||
@ -309,10 +309,10 @@ index d8bfe9e13826..e95f58cd3bac 100644
|
||||
if (options.no_double_buffer) {
|
||||
G_GNUC_BEGIN_IGNORE_DEPRECATIONS;
|
||||
--
|
||||
2.25.4
|
||||
2.29.2
|
||||
|
||||
|
||||
From ed262358646832779ee0eb5afa0a8a7a6c1c2adf Mon Sep 17 00:00:00 2001
|
||||
From f3ec33fc7a644aa9a8d640af16e8ef87a7db5db7 Mon Sep 17 00:00:00 2001
|
||||
From: Debarshi Ray <debarshir@gnome.org>
|
||||
Date: Fri, 13 May 2016 17:53:54 +0200
|
||||
Subject: [PATCH 04/10] Add a property to configure the scroll speed
|
||||
@ -343,10 +343,10 @@ index c222e7fdff0b..6da5eff30715 100644
|
||||
vte_terminal_get_scrollback_lines
|
||||
vte_terminal_set_font
|
||||
diff --git a/src/vte.cc b/src/vte.cc
|
||||
index 01c7dd7eebc4..af73288b9f20 100644
|
||||
index ac54d8791ba2..68fc4bf8f448 100644
|
||||
--- a/src/vte.cc
|
||||
+++ b/src/vte.cc
|
||||
@@ -9334,6 +9334,7 @@ vte_cairo_get_clip_region (cairo_t *cr)
|
||||
@@ -9342,6 +9342,7 @@ vte_cairo_get_clip_region (cairo_t *cr)
|
||||
bool
|
||||
Terminal::widget_mouse_scroll(MouseEvent const& event)
|
||||
{
|
||||
@ -354,7 +354,7 @@ index 01c7dd7eebc4..af73288b9f20 100644
|
||||
gdouble v;
|
||||
gint cnt, i;
|
||||
int button;
|
||||
@@ -9390,7 +9391,13 @@ Terminal::widget_mouse_scroll(MouseEvent const& event)
|
||||
@@ -9398,7 +9399,13 @@ Terminal::widget_mouse_scroll(MouseEvent const& event)
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -369,7 +369,7 @@ index 01c7dd7eebc4..af73288b9f20 100644
|
||||
_vte_debug_print(VTE_DEBUG_EVENTS,
|
||||
"Scroll speed is %d lines per non-smooth scroll unit\n",
|
||||
(int) v);
|
||||
@@ -9693,6 +9700,16 @@ Terminal::decscusr_cursor_shape() const noexcept
|
||||
@@ -9701,6 +9708,16 @@ Terminal::decscusr_cursor_shape() const noexcept
|
||||
}
|
||||
}
|
||||
|
||||
@ -402,7 +402,7 @@ index 71c4c66cc4ee..203c77e08c57 100644
|
||||
_VTE_PUBLIC
|
||||
void vte_terminal_set_scrollback_lines(VteTerminal *terminal,
|
||||
diff --git a/src/vtegtk.cc b/src/vtegtk.cc
|
||||
index 30e0af0f8015..bf88b9481981 100644
|
||||
index 09a18439277f..934e0ab2bd37 100644
|
||||
--- a/src/vtegtk.cc
|
||||
+++ b/src/vtegtk.cc
|
||||
@@ -712,6 +712,9 @@ try
|
||||
@ -447,7 +447,7 @@ index 30e0af0f8015..bf88b9481981 100644
|
||||
/**
|
||||
* VteTerminal:scrollback-lines:
|
||||
*
|
||||
@@ -5324,6 +5345,30 @@ catch (...)
|
||||
@@ -5323,6 +5344,30 @@ catch (...)
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -511,10 +511,10 @@ index 7608eecc38d9..79ea9e7f0da0 100644
|
||||
bool set_scroll_on_keystroke(bool scroll);
|
||||
bool set_scroll_on_output(bool scroll);
|
||||
--
|
||||
2.25.4
|
||||
2.29.2
|
||||
|
||||
|
||||
From 73e7009c342747fbb3bdbef322811e09467dab9b Mon Sep 17 00:00:00 2001
|
||||
From 9538e23477d7e99909961f7ea5868f9c19c043e1 Mon Sep 17 00:00:00 2001
|
||||
From: Debarshi Ray <debarshir@gnome.org>
|
||||
Date: Fri, 13 May 2016 17:54:57 +0200
|
||||
Subject: [PATCH 05/10] Test the scroll-speed property
|
||||
@ -555,7 +555,7 @@ index 634b8ddeeb91..c984b868246d 100644
|
||||
"Specify the number of scrollback-lines", null },
|
||||
{ "transparent", 'T', 0, OptionArg.INT, ref transparency_percent,
|
||||
diff --git a/src/app/app.cc b/src/app/app.cc
|
||||
index e95f58cd3bac..52893c87414a 100644
|
||||
index 65521e1f4177..28e934d9d9c0 100644
|
||||
--- a/src/app/app.cc
|
||||
+++ b/src/app/app.cc
|
||||
@@ -108,6 +108,7 @@ public:
|
||||
@ -566,7 +566,7 @@ index e95f58cd3bac..52893c87414a 100644
|
||||
VteCursorBlinkMode cursor_blink_mode{VTE_CURSOR_BLINK_SYSTEM};
|
||||
VteCursorShape cursor_shape{VTE_CURSOR_SHAPE_BLOCK};
|
||||
VteTextBlinkMode text_blink_mode{VTE_TEXT_BLINK_ALWAYS};
|
||||
@@ -569,6 +570,8 @@ public:
|
||||
@@ -580,6 +581,8 @@ public:
|
||||
"Reverse foreground/background colors", nullptr },
|
||||
{ "require-systemd-scope", 0, 0, G_OPTION_ARG_NONE, &require_systemd_scope,
|
||||
"Require use of a systemd user scope", nullptr },
|
||||
@ -575,7 +575,7 @@ index e95f58cd3bac..52893c87414a 100644
|
||||
{ "scrollback-lines", 'n', 0, G_OPTION_ARG_INT, &scrollback_lines,
|
||||
"Specify the number of scrollback-lines (-1 for infinite)", nullptr },
|
||||
{ "transparent", 'T', 0, G_OPTION_ARG_INT, &transparency_percent,
|
||||
@@ -2127,6 +2130,7 @@ vteapp_window_constructed(GObject *object)
|
||||
@@ -2138,6 +2141,7 @@ vteapp_window_constructed(GObject *object)
|
||||
vte_terminal_set_rewrap_on_resize(window->terminal, !options.no_rewrap);
|
||||
vte_terminal_set_scroll_on_output(window->terminal, false);
|
||||
vte_terminal_set_scroll_on_keystroke(window->terminal, true);
|
||||
@ -584,10 +584,10 @@ index e95f58cd3bac..52893c87414a 100644
|
||||
vte_terminal_set_text_blink_mode(window->terminal, options.text_blink_mode);
|
||||
|
||||
--
|
||||
2.25.4
|
||||
2.29.2
|
||||
|
||||
|
||||
From 2fe27cbe7cbb120e9055284c9e7e34423e5add49 Mon Sep 17 00:00:00 2001
|
||||
From 8e616fea1e377e03d5f3cbac0786df5e76da896d Mon Sep 17 00:00:00 2001
|
||||
From: Debarshi Ray <debarshir@gnome.org>
|
||||
Date: Wed, 7 Jan 2015 16:01:00 +0100
|
||||
Subject: [PATCH 06/10] Support preexec notifications from an interactive shell
|
||||
@ -616,10 +616,10 @@ https://bugzilla.gnome.org/show_bug.cgi?id=711060
|
||||
7 files changed, 35 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/vte.cc b/src/vte.cc
|
||||
index af73288b9f20..d77d27967b50 100644
|
||||
index 68fc4bf8f448..09068deebdf2 100644
|
||||
--- a/src/vte.cc
|
||||
+++ b/src/vte.cc
|
||||
@@ -10161,6 +10161,13 @@ Terminal::emit_pending_signals()
|
||||
@@ -10169,6 +10169,13 @@ Terminal::emit_pending_signals()
|
||||
m_notification_received = false;
|
||||
}
|
||||
|
||||
@ -663,7 +663,7 @@ index 203c77e08c57..5668ac7d71df 100644
|
||||
VteTerminalClassPrivate *priv;
|
||||
};
|
||||
diff --git a/src/vtegtk.cc b/src/vtegtk.cc
|
||||
index bf88b9481981..df247f27c038 100644
|
||||
index 934e0ab2bd37..0bba24ee534f 100644
|
||||
--- a/src/vtegtk.cc
|
||||
+++ b/src/vtegtk.cc
|
||||
@@ -941,6 +941,7 @@ vte_terminal_class_init(VteTerminalClass *klass)
|
||||
@ -739,10 +739,10 @@ index c765b0bfb1f4..ad5935063bd9 100644
|
||||
|
||||
bool
|
||||
--
|
||||
2.25.4
|
||||
2.29.2
|
||||
|
||||
|
||||
From 62b4dec7a7493f531de60ee814596176f3b9c082 Mon Sep 17 00:00:00 2001
|
||||
From c7c410786da41bf9bbcdf8ca1be21dcf0d89637d Mon Sep 17 00:00:00 2001
|
||||
From: Debarshi Ray <debarshir@gnome.org>
|
||||
Date: Fri, 20 Apr 2018 18:21:53 +0200
|
||||
Subject: [PATCH 07/10] Test the shell-preexec signal
|
||||
@ -779,10 +779,10 @@ index c984b868246d..83af686be106 100644
|
||||
|
||||
class App : Gtk.Application
|
||||
diff --git a/src/app/app.cc b/src/app/app.cc
|
||||
index 52893c87414a..3ef597e97365 100644
|
||||
index 28e934d9d9c0..c9f7b5637d16 100644
|
||||
--- a/src/app/app.cc
|
||||
+++ b/src/app/app.cc
|
||||
@@ -1862,6 +1862,12 @@ notification_received_cb(VteTerminal *terminal,
|
||||
@@ -1873,6 +1873,12 @@ notification_received_cb(VteTerminal *terminal,
|
||||
g_print("[%s]: %s\n", summary, body);
|
||||
}
|
||||
|
||||
@ -795,7 +795,7 @@ index 52893c87414a..3ef597e97365 100644
|
||||
static void
|
||||
window_lower_window_cb(VteTerminal* terminal,
|
||||
VteappWindow* window)
|
||||
@@ -2098,6 +2104,7 @@ vteapp_window_constructed(GObject *object)
|
||||
@@ -2109,6 +2115,7 @@ vteapp_window_constructed(GObject *object)
|
||||
g_signal_connect(window->terminal, "notify", G_CALLBACK(window_notify_cb), window);
|
||||
|
||||
g_signal_connect(window->terminal, "notification-received", G_CALLBACK(notification_received_cb), NULL);
|
||||
@ -804,10 +804,10 @@ index 52893c87414a..3ef597e97365 100644
|
||||
/* Settings */
|
||||
if (options.no_double_buffer) {
|
||||
--
|
||||
2.25.4
|
||||
2.29.2
|
||||
|
||||
|
||||
From ce908501de9d32ab9d3e0cc600058e104bec2130 Mon Sep 17 00:00:00 2001
|
||||
From 034f0a8ae047af6d6a2ee9c443b6686a4eff3018 Mon Sep 17 00:00:00 2001
|
||||
From: Debarshi Ray <debarshir@gnome.org>
|
||||
Date: Wed, 2 May 2018 17:20:30 +0200
|
||||
Subject: [PATCH 08/10] Support precmd notifications from an interactive shell
|
||||
@ -836,10 +836,10 @@ https://bugzilla.gnome.org/show_bug.cgi?id=711060
|
||||
7 files changed, 33 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/src/vte.cc b/src/vte.cc
|
||||
index d77d27967b50..54654c8589ab 100644
|
||||
index 09068deebdf2..6d3d3c5a2854 100644
|
||||
--- a/src/vte.cc
|
||||
+++ b/src/vte.cc
|
||||
@@ -10168,6 +10168,13 @@ Terminal::emit_pending_signals()
|
||||
@@ -10176,6 +10176,13 @@ Terminal::emit_pending_signals()
|
||||
m_shell_preexec = FALSE;
|
||||
}
|
||||
|
||||
@ -884,7 +884,7 @@ index 5668ac7d71df..cbd2a77f9f29 100644
|
||||
VteTerminalClassPrivate *priv;
|
||||
};
|
||||
diff --git a/src/vtegtk.cc b/src/vtegtk.cc
|
||||
index df247f27c038..afccd6d85c65 100644
|
||||
index 0bba24ee534f..4e0bc3a68464 100644
|
||||
--- a/src/vtegtk.cc
|
||||
+++ b/src/vtegtk.cc
|
||||
@@ -941,6 +941,7 @@ vte_terminal_class_init(VteTerminalClass *klass)
|
||||
@ -959,10 +959,10 @@ index ad5935063bd9..4b66681d713c 100644
|
||||
}
|
||||
}
|
||||
--
|
||||
2.25.4
|
||||
2.29.2
|
||||
|
||||
|
||||
From c57e30715838cb9d6eb0d4390867746bea0c42d5 Mon Sep 17 00:00:00 2001
|
||||
From 6083ed32c023a7a24f4b4856147a0970d59f9a35 Mon Sep 17 00:00:00 2001
|
||||
From: Debarshi Ray <debarshir@gnome.org>
|
||||
Date: Wed, 2 May 2018 17:30:48 +0200
|
||||
Subject: [PATCH 09/10] Test the shell-precmd signal
|
||||
@ -999,10 +999,10 @@ index 83af686be106..300384f5c74b 100644
|
||||
{
|
||||
print("[shell] executing command\n");
|
||||
diff --git a/src/app/app.cc b/src/app/app.cc
|
||||
index 3ef597e97365..e1b10ca43b2c 100644
|
||||
index c9f7b5637d16..b679bc0bff50 100644
|
||||
--- a/src/app/app.cc
|
||||
+++ b/src/app/app.cc
|
||||
@@ -1862,6 +1862,12 @@ notification_received_cb(VteTerminal *terminal,
|
||||
@@ -1873,6 +1873,12 @@ notification_received_cb(VteTerminal *terminal,
|
||||
g_print("[%s]: %s\n", summary, body);
|
||||
}
|
||||
|
||||
@ -1015,7 +1015,7 @@ index 3ef597e97365..e1b10ca43b2c 100644
|
||||
static void
|
||||
shell_preexec_cb(VteTerminal *terminal)
|
||||
{
|
||||
@@ -2104,6 +2110,7 @@ vteapp_window_constructed(GObject *object)
|
||||
@@ -2115,6 +2121,7 @@ vteapp_window_constructed(GObject *object)
|
||||
g_signal_connect(window->terminal, "notify", G_CALLBACK(window_notify_cb), window);
|
||||
|
||||
g_signal_connect(window->terminal, "notification-received", G_CALLBACK(notification_received_cb), NULL);
|
||||
@ -1024,16 +1024,22 @@ index 3ef597e97365..e1b10ca43b2c 100644
|
||||
|
||||
/* Settings */
|
||||
--
|
||||
2.25.4
|
||||
2.29.2
|
||||
|
||||
|
||||
From 3e049907ff0981ba235df9b97b56828cb814fb76 Mon Sep 17 00:00:00 2001
|
||||
From b0a81273d4ff929afa4e37750273980e70017c77 Mon Sep 17 00:00:00 2001
|
||||
From: Debarshi Ray <debarshir@gnome.org>
|
||||
Date: Mon, 10 Jun 2019 20:30:18 +0200
|
||||
Subject: [PATCH 10/10] Support tracking the active container inside the
|
||||
terminal
|
||||
|
||||
Add sequences
|
||||
|
||||
OSC 777 ; container ; push ; NAME ; RUNTIME ; UID BEL
|
||||
OSC 777 ; container ; push ; NAME ; RUNTIME ; UID ST
|
||||
OSC 777 ; container ; pop ; NAME ; RUNTIME ; UID BEL
|
||||
OSC 777 ; container ; pop ; NAME ; RUNTIME ; UID ST
|
||||
|
||||
OSC 777 ; container ; push ; NAME ; RUNTIME BEL
|
||||
OSC 777 ; container ; push ; NAME ; RUNTIME ST
|
||||
OSC 777 ; container ; pop ; NAME ; RUNTIME BEL
|
||||
@ -1042,7 +1048,9 @@ Add sequences
|
||||
that let container tools notify the terminal emulator when entering and
|
||||
leaving a container environment. The RUNTIME argument namespaces the
|
||||
NAME and identifies the container tooling being used. eg., docker,
|
||||
flatpak, podman, toolbox, etc..
|
||||
flatpak, podman, toolbox, etc.. The UID argument is the real UID of the
|
||||
container tools. Only those containers that are used with the same real
|
||||
UID as the VTE process are tracked.
|
||||
|
||||
The OSC 777 escape sequence is taken from Enlightenment's Terminology:
|
||||
https://phab.enlightenment.org/T1765
|
||||
@ -1053,18 +1061,18 @@ agreed upon across multiple different terminal emulators [1].
|
||||
[1] https://gitlab.freedesktop.org/terminal-wg/specifications/issues/17
|
||||
---
|
||||
src/vte.cc | 9 +++++
|
||||
src/vte/vteterminal.h | 4 +++
|
||||
src/vtegtk.cc | 77 +++++++++++++++++++++++++++++++++++++++++++
|
||||
src/vtegtk.hh | 2 ++
|
||||
src/vteinternal.hh | 16 +++++++++
|
||||
src/vteseq.cc | 31 +++++++++++++++++
|
||||
6 files changed, 139 insertions(+)
|
||||
src/vte/vteterminal.h | 4 ++
|
||||
src/vtegtk.cc | 77 ++++++++++++++++++++++++++++++++++++++
|
||||
src/vtegtk.hh | 2 +
|
||||
src/vteinternal.hh | 16 ++++++++
|
||||
src/vteseq.cc | 86 +++++++++++++++++++++++++++++++++++++++++++
|
||||
6 files changed, 194 insertions(+)
|
||||
|
||||
diff --git a/src/vte.cc b/src/vte.cc
|
||||
index 54654c8589ab..b5f1258bbd99 100644
|
||||
index 6d3d3c5a2854..74db14f593dd 100644
|
||||
--- a/src/vte.cc
|
||||
+++ b/src/vte.cc
|
||||
@@ -10189,6 +10189,15 @@ Terminal::emit_pending_signals()
|
||||
@@ -10197,6 +10197,15 @@ Terminal::emit_pending_signals()
|
||||
m_window_title_changed = false;
|
||||
}
|
||||
|
||||
@ -1096,7 +1104,7 @@ index cbd2a77f9f29..15aa421a0c68 100644
|
||||
_VTE_PUBLIC
|
||||
const char *vte_terminal_get_current_file_uri(VteTerminal *terminal) _VTE_CXX_NOEXCEPT _VTE_GNUC_NONNULL(1);
|
||||
diff --git a/src/vtegtk.cc b/src/vtegtk.cc
|
||||
index afccd6d85c65..242d6d979ddc 100644
|
||||
index 4e0bc3a68464..2e6859798c42 100644
|
||||
--- a/src/vtegtk.cc
|
||||
+++ b/src/vtegtk.cc
|
||||
@@ -664,6 +664,12 @@ try
|
||||
@ -1140,7 +1148,7 @@ index afccd6d85c65..242d6d979ddc 100644
|
||||
/**
|
||||
* VteTerminal:current-directory-uri:
|
||||
*
|
||||
@@ -4531,6 +4558,56 @@ catch (...)
|
||||
@@ -4530,6 +4557,56 @@ catch (...)
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -1252,10 +1260,25 @@ index 18ffeaf3a270..f6b98f670ad5 100644
|
||||
bool m_notification_received{false};
|
||||
std::string m_notification_summary;
|
||||
diff --git a/src/vteseq.cc b/src/vteseq.cc
|
||||
index 4b66681d713c..6e7cb8741696 100644
|
||||
index 4b66681d713c..4240896b95e8 100644
|
||||
--- a/src/vteseq.cc
|
||||
+++ b/src/vteseq.cc
|
||||
@@ -1385,6 +1385,37 @@ Terminal::handle_urxvt_extension(vte::parser::Sequence const& seq,
|
||||
@@ -20,10 +20,14 @@
|
||||
|
||||
#include "config.h"
|
||||
|
||||
+#include <string>
|
||||
+
|
||||
#include <search.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <limits.h>
|
||||
+#include <unistd.h>
|
||||
+#include <sys/types.h>
|
||||
#ifdef HAVE_SYS_SYSLIMITS_H
|
||||
#include <sys/syslimits.h>
|
||||
#endif
|
||||
@@ -1385,6 +1389,88 @@ Terminal::handle_urxvt_extension(vte::parser::Sequence const& seq,
|
||||
if (token == endtoken)
|
||||
return;
|
||||
|
||||
@ -1269,10 +1292,41 @@ index 4b66681d713c..6e7cb8741696 100644
|
||||
+ ++token;
|
||||
+
|
||||
+ if (sub_command == "pop") {
|
||||
+ if (!m_containers.empty()) {
|
||||
+ m_containers.pop();
|
||||
+ m_containers_changed = true;
|
||||
+ if (token == endtoken)
|
||||
+ return;
|
||||
+
|
||||
+ ++token;
|
||||
+
|
||||
+ if (token == endtoken)
|
||||
+ return;
|
||||
+
|
||||
+ ++token;
|
||||
+
|
||||
+ if (token == endtoken) {
|
||||
+ if (!m_containers.empty()) {
|
||||
+ m_containers.pop();
|
||||
+ m_containers_changed = true;
|
||||
+ }
|
||||
+
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ const std::string uid_token = *token;
|
||||
+ ++token;
|
||||
+
|
||||
+ const uid_t uid = getuid();
|
||||
+ const std::string uid_str = std::to_string(uid);
|
||||
+
|
||||
+ if (uid_token == uid_str) {
|
||||
+ if (!m_containers.empty()) {
|
||||
+ m_containers.pop();
|
||||
+ m_containers_changed = true;
|
||||
+ }
|
||||
+
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ return;
|
||||
+ } else if (sub_command == "push") {
|
||||
+ if (token == endtoken)
|
||||
+ return;
|
||||
@ -1284,15 +1338,35 @@ index 4b66681d713c..6e7cb8741696 100644
|
||||
+ return;
|
||||
+
|
||||
+ const std::string runtime = *token;
|
||||
+ ++token;
|
||||
+
|
||||
+ m_containers.emplace(name, runtime);
|
||||
+ m_containers_changed = true;
|
||||
+ if (token == endtoken) {
|
||||
+ m_containers.emplace(name, runtime);
|
||||
+ m_containers_changed = true;
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ const std::string uid_token = *token;
|
||||
+ ++token;
|
||||
+
|
||||
+ const uid_t uid = getuid();
|
||||
+ const std::string uid_str = std::to_string(uid);
|
||||
+
|
||||
+ if (uid_token == uid_str) {
|
||||
+ m_containers.emplace(name, runtime);
|
||||
+ m_containers_changed = true;
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
if (*token == "notify") {
|
||||
++token;
|
||||
|
||||
--
|
||||
2.25.4
|
||||
2.29.2
|
||||
|
||||
|
||||
@ -11,7 +11,7 @@
|
||||
|
||||
Name: vte291
|
||||
Version: 0.62.1
|
||||
Release: 2%{?dist}
|
||||
Release: 3%{?dist}
|
||||
Summary: Terminal emulator library
|
||||
|
||||
License: LGPLv2+
|
||||
@ -120,6 +120,9 @@ sed -i -e "/^vte_systemduserunitdir =/s|vte_prefix|'/usr'|" meson.build
|
||||
%{_sysconfdir}/profile.d/vte.sh
|
||||
|
||||
%changelog
|
||||
* Wed Dec 16 2020 Debarshi Ray <rishi@fedoraproject.org> - 0.62.1-3
|
||||
- Accommodate 'sudo toolbox' when tracking the active container
|
||||
|
||||
* Tue Nov 03 2020 Jeff Law <law@redhat.com> - 0.62.1-2
|
||||
- Fix bogus volatile caught by gcc-11
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user