Skip to content

Commit f174e57

Browse files
committed
make sure variables are initialized before access
1 parent 4be1179 commit f174e57

File tree

1 file changed

+10
-4
lines changed
  • tools/src/main/python/opengrok_tools/utils

1 file changed

+10
-4
lines changed

tools/src/main/python/opengrok_tools/utils/command.py

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,8 @@ def __init__(self, cmd, args_subst=None, args_append=None, logger=None,
7777
if args_subst or args_append:
7878
self.fill_arg(args_append, args_subst)
7979

80+
self.out = None
81+
8082
def __str__(self):
8183
return " ".join(self.cmd)
8284

@@ -228,6 +230,8 @@ def close(self):
228230

229231
# If stderr redirection is off, setup a thread that will capture
230232
# stderr data.
233+
stderr_thread = None
234+
stderr_event = None
231235
if self.redirect_stderr:
232236
stderr_dest = subprocess.STDOUT
233237
else:
@@ -236,6 +240,7 @@ def close(self):
236240
doprint=self.doprint)
237241
stderr_dest = stderr_thread
238242

243+
start_time = None
239244
try:
240245
start_time = time.time()
241246
try:
@@ -302,15 +307,16 @@ def close(self):
302307
output_event.wait()
303308
self.out = output_thread.getoutput()
304309

305-
if not self.redirect_stderr:
310+
if not self.redirect_stderr and stderr_thread and stderr_event:
306311
stderr_thread.close()
307312
self.logger.debug("Waiting on stderr thread to finish reading")
308313
stderr_event.wait()
309314
self.err = stderr_thread.getoutput()
310315

311-
elapsed_time = time.time() - start_time
312-
self.logger.debug("Command '{}' took {} seconds".
313-
format(self, int(elapsed_time)))
316+
if start_time:
317+
elapsed_time = time.time() - start_time
318+
self.logger.debug("Command '{}' took {} seconds".
319+
format(self, int(elapsed_time)))
314320

315321
if orig_work_dir:
316322
try:

0 commit comments

Comments
 (0)