From 7fe1376e341a2128890a9a76cdda6823474d9603 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Tue, 22 Feb 2022 14:52:54 +0530 Subject: [PATCH] DRYer --- kitty_tests/__init__.py | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/kitty_tests/__init__.py b/kitty_tests/__init__.py index 3ec9dad2b..889b92435 100644 --- a/kitty_tests/__init__.py +++ b/kitty_tests/__init__.py @@ -162,6 +162,8 @@ class BaseTest(TestCase): class PTY: def __init__(self, argv, rows=25, columns=80, scrollback=100, cell_width=10, cell_height=20, cwd=None, env=None): + if isinstance(argv, str): + argv = shlex.split(argv) pid, self.master_fd = fork() self.is_child = pid == CHILD if self.is_child: @@ -169,12 +171,7 @@ class PTY: time.sleep(0.01) if cwd: os.chdir(cwd) - if env: - os.environ.clear() - os.environ.update(env) - if isinstance(argv, str): - argv = shlex.split(argv) - os.execlp(argv[0], *argv) + os.execvpe(argv[0], argv, env or os.environ) os.set_blocking(self.master_fd, False) self.cell_width = cell_width self.cell_height = cell_height