test: xkeyboard-config: use universal_newlines instead of decode
This way stdin/stdout of the process are opened in text mode and we don't need manually decode. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>master
parent
7832cc727c
commit
f4a0f73882
|
@ -57,12 +57,13 @@ def xkbcommontool(rmlvo):
|
|||
print(':: {}'.format(' '.join(args)), file=out)
|
||||
|
||||
try:
|
||||
output = subprocess.check_output(args, stderr=subprocess.STDOUT)
|
||||
output = subprocess.check_output(args, stderr=subprocess.STDOUT,
|
||||
universal_newlines=True)
|
||||
if verbose:
|
||||
print(output.decode('utf-8'), file=out)
|
||||
print(output, file=out)
|
||||
except subprocess.CalledProcessError as err:
|
||||
print('ERROR: Failed to compile: {}'.format(' '.join(args)), file=out)
|
||||
print(err.output.decode('utf-8'), file=out)
|
||||
print(err.output, file=out)
|
||||
success = False
|
||||
|
||||
return success, out.getvalue()
|
||||
|
@ -101,20 +102,21 @@ def xkbcomp(rmlvo):
|
|||
|
||||
setxkbmap = subprocess.Popen(args, stdout=subprocess.PIPE)
|
||||
xkbcomp = subprocess.Popen(xkbcomp_args, stdin=setxkbmap.stdout,
|
||||
stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
||||
stdout=subprocess.PIPE, stderr=subprocess.PIPE,
|
||||
universal_newlines=True)
|
||||
setxkbmap.stdout.close()
|
||||
stdout, stderr = xkbcomp.communicate()
|
||||
if xkbcomp.returncode != 0:
|
||||
print('ERROR: Failed to compile: {}'.format(' '.join(args)), file=out)
|
||||
success = False
|
||||
if xkbcomp.returncode != 0 or verbose:
|
||||
print(stdout.decode('utf-8'), file=out)
|
||||
print(stderr.decode('utf-8'), file=out)
|
||||
print(stdout, file=out)
|
||||
print(stderr, file=out)
|
||||
|
||||
# This catches setxkbmap errors.
|
||||
except subprocess.CalledProcessError as err:
|
||||
print('ERROR: Failed to compile: {}'.format(' '.join(args)), file=out)
|
||||
print(err.output.decode('utf-8'), file=out)
|
||||
print(err.output, file=out)
|
||||
success = False
|
||||
|
||||
return success, out.getvalue()
|
||||
|
|
Loading…
Reference in New Issue