!7570 fix bug when using C interpreter to drop native frame

Merge pull request !7570 from hanweiqi/fix_dropframe
This commit is contained in:
openharmony_ci 2024-05-29 11:47:04 +00:00 committed by Gitee
commit ae860b3c04
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
2 changed files with 9 additions and 0 deletions

View File

@ -115,6 +115,9 @@ uint32_t DebuggerApi::GetStackDepthOverBuiltin(const EcmaVM *ecmaVm)
FrameHandler frameHandler(ecmaVm->GetJSThread());
for (; frameHandler.HasFrame(); frameHandler.PrevJSFrame()) {
if (frameHandler.IsEntryFrame()) {
if (frameHandler.IsInterpreterBuiltinFrame()) {
break;
}
continue;
}
if (frameHandler.IsBuiltinFrame()) {

View File

@ -179,6 +179,12 @@ public:
return (type == FrameType::LEAVE_FRAME) || (type == FrameType::LEAVE_FRAME_WITH_ARGV);
}
bool IsInterpreterBuiltinFrame() const
{
FrameType type = GetFrameType();
return type == FrameType::INTERPRETER_BUILTIN_FRAME;
}
JSTaggedType *GetSp() const
{
return sp_;