diff --git a/frameworks/core/components_ng/render/adapter/rosen_render_context.cpp b/frameworks/core/components_ng/render/adapter/rosen_render_context.cpp index 66df4754ad0671fcbed98b6d1a10a1967845b344..b3e13de9bd5b741e0ff33373d6d2c4c7c99c84d0 100755 --- a/frameworks/core/components_ng/render/adapter/rosen_render_context.cpp +++ b/frameworks/core/components_ng/render/adapter/rosen_render_context.cpp @@ -4460,7 +4460,7 @@ bool RosenRenderContext::CanNodeBeDeleted(const RefPtr& node) const node->GenerateOneDepthVisibleFrameWithTransition(childChildrenList); if (rsNode->GetIsDrawn() || rsNode->GetType() != Rosen::RSUINodeType::CANVAS_NODE || childChildrenList.empty() || node->GetTag() == V2::PAGE_ETS_TAG - || node->GetTag() == V2::STAGE_ETS_TAG) { + || node->GetTag() == V2::STAGE_ETS_TAG || node->GetTag() == V2::NODE_CONTAINER_ETS_TAG) { return false; } return true; diff --git a/test/unittest/core/rosen/rosen_render_context_test_new.cpp b/test/unittest/core/rosen/rosen_render_context_test_new.cpp index 40dffdf8d8bc1c04d2b172baace35d3139977cb7..c7c3cf6a20737a951ae80ca2794c9636239b2752 100644 --- a/test/unittest/core/rosen/rosen_render_context_test_new.cpp +++ b/test/unittest/core/rosen/rosen_render_context_test_new.cpp @@ -1203,4 +1203,24 @@ HWTEST_F(RosenRenderContextTest, RosenRenderContextTestNew044, TestSize.Level1) std::string blurStyleStr = pattern->GetResCacheMapByKey("foregroundBlurStyle.blurStyle"); EXPECT_EQ(blurStyleStr, ""); } -} // namespace OHOS::Ace::NG \ No newline at end of file + +/** + * @tc.name: RosenRenderContextTestNew045 + * @tc.desc: CanNodeBeDeleted(). + * @tc.type: FUNC + */ +HWTEST_F(RosenRenderContextTest, RosenRenderContextTestNew045, TestSize.Level1) +{ + auto frameNode = + FrameNode::GetOrCreateFrameNode("frame", -1, []() { return AceType::MakeRefPtr(nullptr); }); + RefPtr rosenRenderContext = InitRosenRenderContext(frameNode); + + bool canBeDeleted = false; + auto pageNode = FrameNode::CreateFrameNode(V2::PAGE_ETS_TAG, 1, AceType::MakeRefPtr(), true); + canBeDeleted = rosenRenderContext->CanNodeBeDeleted(pageNode); + EXPECT_EQ(canBeDeleted, false); + canBeDeleted = rosenRenderContext->CanNodeBeDeleted(nullptr); + EXPECT_EQ(canBeDeleted, false); +} + +} // namespace OHOS::Ace::NG