summaryrefslogtreecommitdiffstats
path: root/lldb/source/Expression/ClangUserExpression.cpp
diff options
context:
space:
mode:
authorSean Callanan <scallanan@apple.com>2010-11-05 00:57:06 +0000
committerSean Callanan <scallanan@apple.com>2010-11-05 00:57:06 +0000
commit2a39652303c2c319015d5b97fc569333bbaaa844 (patch)
treef43bb0810b449e2c83360ab9e383eb6f1cdd14c7 /lldb/source/Expression/ClangUserExpression.cpp
parent5822173bc842fcd50a413267917e8386863f00ee (diff)
downloadbcm5719-llvm-2a39652303c2c319015d5b97fc569333bbaaa844.tar.gz
bcm5719-llvm-2a39652303c2c319015d5b97fc569333bbaaa844.zip
Fixed error handling when the utility functions
that check pointer validity fail to parse. Now lldb does not crash in that case. Also added support for checking Objective-C class validity in the Version 1 runtime as well as Version 2 runtimes with varying levels of available debug support. llvm-svn: 118271
Diffstat (limited to 'lldb/source/Expression/ClangUserExpression.cpp')
-rw-r--r--lldb/source/Expression/ClangUserExpression.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/lldb/source/Expression/ClangUserExpression.cpp b/lldb/source/Expression/ClangUserExpression.cpp
index 5181c98c9aa..e75c323912c 100644
--- a/lldb/source/Expression/ClangUserExpression.cpp
+++ b/lldb/source/Expression/ClangUserExpression.cpp
@@ -449,8 +449,16 @@ ClangUserExpression::Evaluate (ExecutionContext &exe_ctx,
StreamString install_errors;
if (!dynamic_checkers->Install(install_errors, exe_ctx))
+ {
+ if (install_errors.GetString().empty())
+ error.SetErrorString ("couldn't install checkers, unknown error");
+ else
+ error.SetErrorString (install_errors.GetString().c_str());
+
+ result_valobj_sp.reset (new ValueObjectConstResult (error));
return result_valobj_sp;
-
+ }
+
exe_ctx.process->SetDynamicCheckers(dynamic_checkers);
}
OpenPOWER on IntegriCloud