diff options
author | Georg Brandl <georg@python.org> | 2013-10-13 18:51:47 (GMT) |
---|---|---|
committer | Georg Brandl <georg@python.org> | 2013-10-13 18:51:47 (GMT) |
commit | 6e22055ee1d2fa4c93abfafc0ab4029b4a808eb7 (patch) | |
tree | d63762099e0496dab07549e90fbc8f5f8c258bb8 /Lib/pdb.py | |
parent | 7ff4520584d18f44f230a92c20a8091297bc08a8 (diff) | |
download | cpython-6e22055ee1d2fa4c93abfafc0ab4029b4a808eb7.zip cpython-6e22055ee1d2fa4c93abfafc0ab4029b4a808eb7.tar.gz cpython-6e22055ee1d2fa4c93abfafc0ab4029b4a808eb7.tar.bz2 |
pdb: modernize find_function() and add tests for it.
Closes #18714.
Diffstat (limited to 'Lib/pdb.py')
-rwxr-xr-x | Lib/pdb.py | 17 |
1 files changed, 5 insertions, 12 deletions
@@ -95,18 +95,11 @@ def find_function(funcname, filename): except OSError: return None # consumer of this info expects the first line to be 1 - lineno = 1 - answer = None - while True: - line = fp.readline() - if line == '': - break - if cre.match(line): - answer = funcname, filename, lineno - break - lineno += 1 - fp.close() - return answer + with fp: + for lineno, line in enumerate(fp, start=1): + if cre.match(line): + return funcname, filename, lineno + return None def getsourcelines(obj): lines, lineno = inspect.findsource(obj) |