Comment 7 for bug 467474

Revision history for this message
knarf (launchpad-ubuntu-f) wrote :

OK, I have made some progress with Clutter and the savage. There are two things at play here:

1) clutter always requests non-zero alpha depth when looking for visuals. The savage driver does not support non-zero alpha depth so it does not return any visuals. Clutter uses RGB visuals by default but clutter-gtk wants RGBA. I patched clutter to not request non-zero alpha depth and can now run clutter-based apps.

2) clutter fails to catch the failure to acquire a visual - and hence an OpenGL context - and blindly tries to call OpenGL functions. This is not possible without a context, which leads to the segfaults seen here (and elsewhere).

I changed clutter to get rid of this request and suddenly it works - sort of. That alpha request is there for a reason so the savage driver should be changed to either support alpha (difficult if the hardware does not offer support) or ignore the alpha request.

For now clutter is semi-usable when patched. I'm running clutter 1.2.2 so the patch is not applicable to the version currently used in Ubuntu. I'll have a look at implementing alpha support in the savage driver which would be the real solution to this problem.