#18853: Fix resource warning in shlex's __main__ section.

Report and original fix by Vajrasky Kok.
This commit is contained in:
R David Murray 2014-10-17 20:28:47 -04:00
parent 7570cbdc6b
commit 838f2c437d
2 changed files with 13 additions and 9 deletions

View File

@ -290,15 +290,17 @@ def quote(s):
return "'" + s.replace("'", "'\"'\"'") + "'"
if __name__ == '__main__':
if len(sys.argv) == 1:
lexer = shlex()
else:
file = sys.argv[1]
lexer = shlex(open(file), file)
def _print_tokens(lexer):
while 1:
tt = lexer.get_token()
if tt:
print("Token: " + repr(tt))
else:
if not tt:
break
print("Token: " + repr(tt))
if __name__ == '__main__':
if len(sys.argv) == 1:
_print_tokens(shlex())
else:
fn = sys.argv[1]
with open(fn) as f:
_print_tokens(shlex(f, fn))

View File

@ -33,6 +33,8 @@ Core and Builtins
Library
-------
- Issue #18853: Fixed ResourceWarning in shlex.__nain__.
- Issue #9351: Defaults set with set_defaults on an argparse subparser
are no longer ignored when also set on the parent parser.