aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
diff options
context:
space:
mode:
authorKevin Frei <kevinfrei@users.noreply.github.com>2023-12-14 11:10:51 -0800
committerGitHub <noreply@github.com>2023-12-14 11:10:51 -0800
commit0544c781728a665806b069cb8202acd4f6981a0a (patch)
treeefff8e3d7650c560418a19b66c05dd1b7b63c2ba /llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
parentfed564432cef76f8b303c19ab1dfc0a14878fbc3 (diff)
downloadllvm-0544c781728a665806b069cb8202acd4f6981a0a.zip
llvm-0544c781728a665806b069cb8202acd4f6981a0a.tar.gz
llvm-0544c781728a665806b069cb8202acd4f6981a0a.tar.bz2
Fix a crash from character type confusion interaction with libedit (#75388)
If you type `settings show <tab>` LLDB might crash, depending on the version of libedit you're compiled with, and whether you're compiled with `-DLLDB_EDITLINE_USE_WCHAR=0` (and depending on how the optimizer lays out the stack...) The issue has to do with trying to figure out whether the libedit `getchar` callback is supposed to read a wide or 8 bit character. In order to maintain backward compatibility, there's really no 'clean' way to do it. We just have to make sure that we're invoking el_[w]getc with a buffer that is as wide as the getchar callback (registered by the `SetGetCharacterFunction` function further down in `Editline.cpp`. So, it's 'fixed' with a comment, and a wider version of the 'reply' variable. Co-authored-by: Kevin Frei <freik@meta.com>
Diffstat (limited to 'llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp')
0 files changed, 0 insertions, 0 deletions