~mir-team/mir/development-branch

Viewing all changes in revision 3530.

  • Committer: Tarmac
  • Author(s): Kevin DuBois
  • Date: 2016-06-04 13:20:55 UTC
  • mfrom: (3524.3.13 fix-1584784)
  • Revision ID: tarmac-20160604132055-1ieq745k2p9rj22p
client: make sure that users of mir_buffer_stream_swap_buffers() never get blocked awaiting incoming buffers. The code this MP is fixing could wait on buffers if the producer produced quickly. (eg, sw Xmir with a small window, common in pocket desktop on frieza)

The signalling had to shift from the glue-code in bufferstream to the BufferVault, as that is the object that knows if there are buffers available. As mentioned in prior MPs, one of the things to be done once the old stuff is removed is to condense the glue-code in mir_client_buffer_stream.cpp and BufferVault (its currently useful for switching between NBUFFERS=0 / 3)

fixes: LP: #1584784. Fixes: https://bugs.launchpad.net/bugs/1584784.

Approved by mir-ci-bot, Cemil Azizoglu, Chris Halse Rogers.

expand all expand all

Show diffs side-by-side

added added

removed removed

Lines of Context: