diff options
author | Med Ismail Bennani <ismail@bennani.ma> | 2023-10-25 17:24:03 -0700 |
---|---|---|
committer | Med Ismail Bennani <ismail@bennani.ma> | 2023-10-25 17:31:02 -0700 |
commit | 2abf997f8272e88d1a17138da61448bac721b6c1 (patch) | |
tree | c5b736686ca51d6b7258d231ff0e99531df4bec5 /lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp | |
parent | a3e5c947c48ee2351ca47558767b397df9a3c598 (diff) | |
download | llvm-2abf997f8272e88d1a17138da61448bac721b6c1.zip llvm-2abf997f8272e88d1a17138da61448bac721b6c1.tar.gz llvm-2abf997f8272e88d1a17138da61448bac721b6c1.tar.bz2 |
[lldb] Fix assertions caused by un-checked errors in ScriptedProcess
This patch should fix some assertion that started getting hit after f22d82c.
That commit changed the scripted object plugin creation to use
`llvm::Expected<T>` as a return type to enforce error handling, however
I forgot to handle the error which caused the assert.
The interesting part about this, is that since that assert was triggered
in the ScriptedProcess constructor (where the `llvm::Error` wasn't
handled), that impacted every test that launched any kind of process,
since the process plugin manager would eventually also iterate over the
`ScriptedProcess::Create` factory method.
This patch should fix the assertions by handling the errors.
Signed-off-by: Med Ismail Bennani <ismail@bennani.ma>
Diffstat (limited to 'lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp')
-rw-r--r-- | lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp b/lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp index e0e6693..f2a647c1b 100644 --- a/lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp +++ b/lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp @@ -113,6 +113,7 @@ ScriptedProcess::ScriptedProcess(lldb::TargetSP target_sp, m_scripted_metadata.GetArgsSP()); if (!obj_or_err) { + llvm::consumeError(obj_or_err.takeError()); error.SetErrorString("Failed to create script object."); return; } |