It only happens when I start compiz with X (from a script that is called by xinit/startx/whatever calls the script). If I start X and then start compiz (over ssh or from a gnome-terminal) then it works fine.
If started with X compiz will crash once a window is opened (when I start gnome-terminal or glxgears)
I have attached the crash output from compiz (thanks to crashhandler plugin). Here is the x part:
#4 0x00007f261a5c4db9 in memcpy () from /lib/libc.so.6
#5 0x00007f261b5b1129 in miRegionCopy (dstrgn=0xc61ff0, rgn=0x7fff26427e40)
#6 0x00007f261b5b2258 in XUnionRegion (reg1=0xc61ff0, reg2=0x7fff26427e40,
newReg=0xc61ff0) at Region.c:1297
I had a look at the code, and put some fprintf's to try figure out why it was failing. It seems that miRegionCopy would break if destrgn->rects was NULL initially (as memory is only (re)allocated if destrgn->rects != NULL) - however, after patching this (potential) problem, it was still crashing. The debug output indicated that destrgn->rects, rgn->rects were both not NULL, and numRects was 1.
Is there any more information I can/should give?
Thanks for your attention,
Created attachment 20573 [details]
backtrace / compiz crash report
Also, this is happening with ATi radeon x800 using opensource drivers, and mesa (also from git)
I think this looks like compiz is passing at least one invalid Region to XUnionRegion().
The problem seems to be with an unofficial plugin (freewins). It seems that I missed disabling this plugin when I was testing compiz with only essential plugins.
Additionally, after updating to the latest version of freewins this no longer happens. Sorry for the noise.