From 796f5910ed172de2a5dfdd57ac64695063831876 Mon Sep 17 00:00:00 2001 From: seaheart Date: Fri, 4 Jul 2025 23:09:20 +0800 Subject: [PATCH 1/2] fix(tooltip): potential risk of memory leakage. close #21083 --- src/component/tooltip/TooltipHTMLContent.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/component/tooltip/TooltipHTMLContent.ts b/src/component/tooltip/TooltipHTMLContent.ts index e890663d7e..3627905e4f 100644 --- a/src/component/tooltip/TooltipHTMLContent.ts +++ b/src/component/tooltip/TooltipHTMLContent.ts @@ -554,6 +554,9 @@ class TooltipHTMLContent { transformLocalCoordClear(zr && zr.painter && zr.painter.getViewportRoot(), this._container); if (this.el) { + this.el.onmouseenter = null; + this.el.onmousemove = null; + this.el.onmouseleave = null; const parentNode = this.el.parentNode; parentNode && parentNode.removeChild(this.el); } From 59ac414caf982185ef9dfc1a31de1338c2a79f8b Mon Sep 17 00:00:00 2001 From: Zhongxiang Wang Date: Sat, 5 Jul 2025 17:27:29 +0800 Subject: [PATCH 2/2] fix(tooltip): simplify variable reference --- src/component/tooltip/TooltipHTMLContent.ts | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/component/tooltip/TooltipHTMLContent.ts b/src/component/tooltip/TooltipHTMLContent.ts index 3627905e4f..5f742de56c 100644 --- a/src/component/tooltip/TooltipHTMLContent.ts +++ b/src/component/tooltip/TooltipHTMLContent.ts @@ -553,12 +553,11 @@ class TooltipHTMLContent { const zr = this._zr; transformLocalCoordClear(zr && zr.painter && zr.painter.getViewportRoot(), this._container); - if (this.el) { - this.el.onmouseenter = null; - this.el.onmousemove = null; - this.el.onmouseleave = null; - const parentNode = this.el.parentNode; - parentNode && parentNode.removeChild(this.el); + const el = this.el; + if (el) { + el.onmouseenter = el.onmousemove = el.onmouseleave = null; + const parentNode = el.parentNode; + parentNode && parentNode.removeChild(el); } this.el = this._container = null;