summaryrefslogtreecommitdiff
path: root/lldb/test/Shell/ScriptInterpreter/Python/eof.test
AgeCommit message (Collapse)Author
2020-06-16[lldb/Python] Fix the infinitely looping Python prompt bugJonas Devlieghere
Executing commands below will get you bombarded by a wall of Python command prompts (>>> ). $ echo 'foo' | ./bin/lldb -o script $ cat /tmp/script script print("foo") $ lldb --source /tmp/script The issue is that our custom input reader doesn't handle EOF. According to the Python documentation, file.readline always includes a trailing newline character unless the file ends with an incomplete line. An empty string signals EOF. This patch raises an EOFError when that happens. [1] https://docs.python.org/2/library/stdtypes.html#file.readline Differential revision: https://reviews.llvm.org/D81898