Mir

Comment 11 for bug 1199450

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

I think I noticed this could happen when I started looking at multi_threaded_compositor.cpp

It looks like the client/session-mediator gives a pulse to tell the compositor a new frame is ready, and the compositor takes the next one off the queue. However this will only work in double-buffering. If you have triple (or more) buffers then that latest frame the client wants to show won't get displayed. There will be a delay of N-2 frames (for N-buffering) as it goes from the back to the front of the queue. The fault (I assume) is then in Mir's compositing logic. Start by looking at multi_threaded_compositor.cpp ...