New issue
Advanced search Search tips

Issue 680432 link

Starred by 3 users

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Task



Sign in to add a comment

Re-architecture document.execCommand implementation

Project Member Reported by yosin@chromium.org, Jan 12 2017

Issue description

Since implementation of document.execCommand() is the *huge* source bugs of editing bugs, Cluster Fuzz found lots of bug, we would like to fix these bugs.

But, it is hard to fix them, Becasue it is very old code, +12 years old, with lots of ad-hoc things and fragile, e.g. it allows executing JavaScript script during command execution to invalid node positions hold in C++ memory, and it updates layout frequently to slow down command execution and consume battery.

Thus, we should re-architecture document.execCommand() to clean, cheap and robust The new architecture will incorporate two phase approach:

Phase 1: Generate editing instructions, e.g. insert node, remove node, change attribute etc, with clean layout tree.
Phase 2: Execute editing instructions and tracking node positions during script execution, e.g. appehChild() can execute script via IFRAME load event or infamous DOM mutation event handler can do.







 
pada666@live.ca
Project Member

Comment 2 by sheriffbot@chromium.org, Feb 15 2018

Labels: Hotlist-Recharge-Cold
Status: Untriaged (was: Available)
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue.

Sorry for the inconvenience if the bug really should have been left as Available. If you change it back, also remove the "Hotlist-Recharge-Cold" label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Labels: -Type-Bug Type-Task
Status: Available (was: Untriaged)

Sign in to add a comment