Consider the following sync tree: A parent of B parent of C And the following sequence of requests: - Modify C (X) - Commit C - Destroy subsurface(C) - Attach C to A - Commit C The changes in (X) are lost and never applied even by subsequent commits of all of A, B, and C.
Reading the current code in KWin 6.5, it seems like this should work correctly. Do you have some (test) client that shows this being broken?
https://github.com/mahkoh/wl-subsurface-test-client