diff options
author | Kevin Van Brunt <kmvanbrunt@gmail.com> | 2021-10-07 22:06:21 -0400 |
---|---|---|
committer | Kevin Van Brunt <kmvanbrunt@gmail.com> | 2021-10-07 22:10:05 -0400 |
commit | 18271699055acbc65a5d6956606b392c6e146f1e (patch) | |
tree | 487d462c2dd41cf9e0f829dc4a1a31160edf3f36 /cmd2/rl_utils.py | |
parent | c7aae956989949065ccfaccca27dcdec38224dcd (diff) | |
download | cmd2-git-prompt_error.tar.gz |
Fixed AttributeError in rl_get_prompt() when prompt is None.prompt_error
Diffstat (limited to 'cmd2/rl_utils.py')
-rw-r--r-- | cmd2/rl_utils.py | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/cmd2/rl_utils.py b/cmd2/rl_utils.py index b2dc7649..d2a7c54b 100644 --- a/cmd2/rl_utils.py +++ b/cmd2/rl_utils.py @@ -8,7 +8,6 @@ from enum import ( ) from typing import ( Union, - cast, ) # Prefer statically linked gnureadline if available (for macOS compatibility due to issues with libedit) @@ -197,7 +196,10 @@ def rl_get_prompt() -> str: # pragma: no cover """Gets Readline's current prompt""" if rl_type == RlType.GNU: encoded_prompt = ctypes.c_char_p.in_dll(readline_lib, "rl_prompt").value - prompt = cast(bytes, encoded_prompt).decode(encoding='utf-8') + if encoded_prompt is None: + prompt = '' + else: + prompt = encoded_prompt.decode(encoding='utf-8') elif rl_type == RlType.PYREADLINE: prompt_data: Union[str, bytes] = readline.rl.prompt |