Regressions 1, 3 and 4 fixed (even if they were tiny)
If you want to fix regression 2 (even though its not really a regression, just a race condition that has always existed), then please check out lp:~smspillaz/compiz-core/compiz-core.decor_synchronization . That adds some synchronization primitives to the decoration protocol which fixes races where pixmaps were being bound after destruction.
I've also cleaned up the code a bit now that we don't need to use server* in client code, so the diff size should be smaller.
Regressions 1, 3 and 4 fixed (even if they were tiny)
If you want to fix regression 2 (even though its not really a regression, just a race condition that has always existed), then please check out lp:~smspillaz/compiz-core/compiz-core.decor_synchronization . That adds some synchronization primitives to the decoration protocol which fixes races where pixmaps were being bound after destruction.
I've also cleaned up the code a bit now that we don't need to use server* in client code, so the diff size should be smaller.