It seems that when we make sure that none of the unity-2d related applications that enable compositing are running, the corruption doesn't happen anymore. This includes our metacity's capture_before_unmap option, which should be turned off and metacity restarted.
This seems to point out at something wrong that we do when we turn compositing on with a call to XCompositeRedirectSubwindows. To prove this, I wrote a small C app that just does the minimal necessary to initalize the extension and call that function.
You can find it in lp:~uriboni/unity-2d/minimal-composite/
It seems that when we make sure that none of the unity-2d related applications that enable compositing are running, the corruption doesn't happen anymore. This includes our metacity's capture_ before_ unmap option, which should be turned off and metacity restarted.
This seems to point out at something wrong that we do when we turn compositing on with a call to XCompositeRedir ectSubwindows. To prove this, I wrote a small C app that just does the minimal necessary to initalize the extension and call that function.
You can find it in lp:~uriboni/unity-2d/minimal-composite/