summaryrefslogtreecommitdiffstats
path: root/debian/patches/upstream/agetty-Don-t-override-TERM-passed-by-the-user.patch
blob: 11df871a6733f590c93f66801489886c6f0b88f3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
From: Daan De Meyer <daan.j.demeyer@gmail.com>
Date: Fri, 19 Apr 2024 20:07:47 +0200
Subject: agetty: Don't override TERM passed by the user

Before 4869b259d68f65ea88df625ce8df9c0177d55a01, any TERM passed
on the agetty command line would be used instead of the default TERM.
After 4869b259d68f65ea88df625ce8df9c0177d55a01, the default TERM is
used unconditionally.

Fix the regression by checking if the user passed a custom TERM.

Fixes: 4869b259d68f65ea88df625ce8df9c0177d55a01
(cherry picked from commit af354e92111769d57e43eb4f1825c0d99c894ddb)
---
 term-utils/agetty.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/term-utils/agetty.c b/term-utils/agetty.c
index 0fc6f15..0b9eb8b 100644
--- a/term-utils/agetty.c
+++ b/term-utils/agetty.c
@@ -1196,7 +1196,8 @@ static void open_tty(const char *tty, struct termios *tp, struct options *op)
 #endif
 	}
 
-	op->term = get_terminal_default_type(op->tty, !(op->flags & F_VCONSOLE));
+	if (!op->term)
+		op->term = get_terminal_default_type(op->tty, !(op->flags & F_VCONSOLE));
 	if (!op->term)
 		log_err(_("failed to allocate memory: %m"));