Skip to content

Commit 048e57d

Browse files
committed
Use bools instead of time values for SysCommandWorker attributes
Only the truthiness of the time values was being evaluated. This also reduces the usage of time.time(), which makes the codebase more resilient against clock drift issues.
1 parent 094798b commit 048e57d

1 file changed

Lines changed: 6 additions & 6 deletions

File tree

archinstall/lib/command.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,8 @@ def __init__(
4444
self._trace_log_pos = 0
4545
self.poll_object = epoll()
4646
self.child_fd: int | None = None
47-
self.started: float | None = None
48-
self.ended: float | None = None
47+
self.started = False
48+
self.ended = False
4949
self.remove_vt100_escape_codes_from_lines: bool = remove_vt100_escape_codes_from_lines
5050

5151
def __contains__(self, key: bytes) -> bool:
@@ -117,7 +117,7 @@ def __exit__(self, exc_type: type[BaseException] | None, exc_value: BaseExceptio
117117
def is_alive(self) -> bool:
118118
self.poll()
119119

120-
if self.started and self.ended is None:
120+
if self.started and not self.ended:
121121
return True
122122

123123
return False
@@ -173,11 +173,11 @@ def poll(self) -> None:
173173
self.peak(output)
174174
self._trace_log += output
175175
except OSError:
176-
self.ended = time.time()
176+
self.ended = True
177177
break
178178

179179
if self.ended or (not got_output and not _pid_exists(self.pid)):
180-
self.ended = time.time()
180+
self.ended = True
181181
try:
182182
wait_status = os.waitpid(self.pid, 0)[1]
183183
self.exit_code = os.waitstatus_to_exitcode(wait_status)
@@ -215,7 +215,7 @@ def execute(self) -> bool:
215215
# Only parent process moves back to the original working directory
216216
os.chdir(old_dir)
217217

218-
self.started = time.time()
218+
self.started = True
219219
self.poll_object.register(self.child_fd, EPOLLIN | EPOLLHUP)
220220

221221
return True

0 commit comments

Comments
 (0)