gh-97825: fix AttributeError when calling subprocess.check_output(input=None) with encoding or errors args (#97826)

* fix AttributeError, add unit test
This commit is contained in:
andrei kulakov 2022-10-04 20:47:49 -04:00 committed by GitHub
parent 0ceafa7fa4
commit db64fb9bbe
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 9 additions and 1 deletions

View file

@ -456,7 +456,8 @@ def check_output(*popenargs, timeout=None, **kwargs):
if 'input' in kwargs and kwargs['input'] is None:
# Explicitly passing input=None was previously equivalent to passing an
# empty string. That is maintained here for backwards compatibility.
if kwargs.get('universal_newlines') or kwargs.get('text'):
if kwargs.get('universal_newlines') or kwargs.get('text') or kwargs.get('encoding') \
or kwargs.get('errors'):
empty = ''
else:
empty = b''