Skip to content

Commit ce93690

Browse files
committed
!squash more
1 parent 7888281 commit ce93690

File tree

1 file changed

+20
-14
lines changed

1 file changed

+20
-14
lines changed

libtmux/common.py

+20-14
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,8 @@ class EnvironmentMixin:
5858

5959
_add_option = None
6060

61+
cmd: t.Callable[[t.Any, t.Any], "tmux_cmd"]
62+
6163
def __init__(self, add_option: Optional[str] = None) -> None:
6264
self._add_option = add_option
6365

@@ -174,12 +176,15 @@ def getenv(self, name: str) -> Optional[str]:
174176
str
175177
Value of environment variable
176178
"""
177-
tmux_args = ["show-environment"]
179+
tmux_args: t.Tuple[t.Union[str, int], ...] = tuple()
180+
181+
tmux_args += ("show-environment",)
178182
if self._add_option:
179-
tmux_args += [self._add_option]
180-
tmux_args += [name]
181-
vars = self.cmd(*tmux_args).stdout
182-
vars = [tuple(item.split("=", 1)) for item in vars]
183+
tmux_args += (self._add_option,)
184+
tmux_args += (name,)
185+
cmd = self.cmd(*tmux_args)
186+
output = cmd.stdout
187+
vars = [tuple(item.split("=", 1)) for item in output]
183188
vars_dict = {}
184189
for t in vars:
185190
if len(t) == 2:
@@ -262,17 +267,18 @@ def __init__(self, *args: t.Any, **kwargs: t.Any) -> None:
262267

263268
self.returncode = returncode
264269

265-
self.stdout = console_to_str(stdout)
266-
self.stdout = self.stdout.split("\n")
267-
self.stdout = list(filter(None, self.stdout)) # filter empty values
270+
stdout_str = console_to_str(stdout)
271+
stdout_split = stdout_str.split("\n")
272+
stdout_filtered = list(filter(None, stdout_split)) # filter empty values
268273

269-
self.stderr = console_to_str(stderr)
270-
self.stderr = self.stderr.split("\n")
271-
self.stderr = list(filter(None, self.stderr)) # filter empty values
274+
stderr_str = console_to_str(stderr)
275+
stderr_split = stderr_str.split("\n")
276+
self.stderr = list(filter(None, stderr_split)) # filter empty values
272277

273-
if "has-session" in cmd and len(self.stderr):
274-
if not self.stdout:
275-
self.stdout = self.stderr[0]
278+
if "has-session" in cmd and len(self.stderr) and not stdout_filtered:
279+
self.stdout = [self.stderr[0]]
280+
else:
281+
self.stdout = stdout_filtered
276282

277283
logger.debug("self.stdout for {}: \n{}".format(" ".join(cmd), self.stdout))
278284

0 commit comments

Comments
 (0)