[whatwg/dom] Avoid enqueuing tree mutation record when there is no mutation (#796)

Currently, the [replace all](https://dom.spec.whatwg.org/#concept-node-replace-all) steps queues a tree mutation record even when `addedNodes` and `removedNodes` are empty. When following the spec strictly, the [childList Node.textContent: textContent no mutation](https://github.com/web-platform-tests/wpt/blob/master/dom/nodes/MutationObserver-childList.html#L103-L107) fails.

IMHO, the replace all step should only enqueue a tree mutation record when either `addedNodes` or `removedNodes` is not empty. In fact, servo implementation already add [this extra branch check](https://github.com/servo/servo/blob/5ab2d4ea835374c2ca88f5d9b50100669f142273/components/script/dom/node.rs#L2008-L2016).

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/whatwg/dom/issues/796

Received on Thursday, 21 November 2019 06:50:23 UTC