gecko-dev/servo
Emilio Cobos Álvarez af44ad742c Bug 1607553 - Remove an invalid assert. r=heycam
This assert was wrong. The assert may fire if we resurrect the node from a
different thread and insert a kid fast enough.

We allow resurrecting nodes (bumping the nodes from zero to one) to avoid
allocation churn.

In particular, while the thread dropping the node gets to read the children (so
after the fetch_sub from the refcount, but before the read() of the children),
another thread could plausibly bumped the refcount back, and added a children.

This is a very big edge case of course, but I'm kinda sad I hadn't realized
before.

Differential Revision: https://phabricator.services.mozilla.com/D63286

--HG--
extra : moz-landing-system : lando
2020-02-20 08:43:08 +00:00
..
components Bug 1607553 - Remove an invalid assert. r=heycam 2020-02-20 08:43:08 +00:00
ports/geckolib Bug 1615489 - Refactor GenericGradient for conic-gradient support. r=emilio 2020-02-15 22:04:35 +00:00
tests/unit Bug 1600443 - Update cssparser and phf. r=heycam 2019-12-04 19:54:06 +00:00
moz.build
rustfmt.toml