| Index: runtime/lib/mirrors.cc
|
| diff --git a/runtime/lib/mirrors.cc b/runtime/lib/mirrors.cc
|
| index 7fb8fd01a7a5afcdf9bf57686e15dd3e3d66185c..c4605cf2e031c2a80bbda8d1c550c8849210cb50 100644
|
| --- a/runtime/lib/mirrors.cc
|
| +++ b/runtime/lib/mirrors.cc
|
| @@ -1238,6 +1238,17 @@ DEFINE_NATIVE_ENTRY(Mirrors_evalInLibraryWithPrivateKey, 2) {
|
| Exceptions::PropagateError(Error::Cast(result));
|
| UNREACHABLE();
|
| }
|
| +
|
| + // Because we currently only use this native for building field extractors and
|
| + // setters, assume the result is a closure and mark its function as invisible,
|
| + // so it will not appear in stack traces. Whenever we support
|
| + // ObjectMirror.evaluate this will need to be separated.
|
| + ASSERT(Instance::Cast(result).IsClosure());
|
| + const Function& func =
|
| + Function::Handle(Closure::function(Instance::Cast(result)));
|
| + func.set_is_visible(false);
|
| + func.set_is_debuggable(false);
|
| +
|
| return result.raw();
|
| }
|
|
|
|
|