Mir

mir_demo_client_eglsquare soon freezes

Bug #1695221 reported by Alan Griffiths
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mir
Fix Released
Medium
Alan Griffiths

Bug Description

$ mir_demo_server --launch mir_demo_client_eglsquare

Move the cursor over the client:

expected: the square follows the cursor
actual .: the square follows briefly then freezes

This happened since the 0.26 series, but seems to predate updating the clients to use the RS APIs.

Related branches

Changed in mir:
milestone: none → 0.27.0
status: New → In Progress
importance: Undecided → High
assignee: nobody → Alan Griffiths (alan-griffiths)
Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

Running the 0.26 client against a 0.27 server exhibits the problem, so the rewrite of examples is probably not involved.

Further, the program is hanging in me::Context::swapbuffers() - the fourth time this is called.

Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

Hmm, I see the problem with -r 4075 while earlier versions fail to build: Mesa egl needs mir_presentation_chain_set_mode() which was introduced in 4075.

Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

OK, through the tedious process of merging into [a copy of lp:mir/ubuntu] and resolving conflicts I find that:

  o [a copy of lp:mir/ubuntu] + [-r 4033 lp:mir] works; and,
  o [a copy of lp:mir/ubuntu] + [-r 4034 lp:mir] is broken

revno: 4034 [merge]
author: Andreas Pokorny <email address hidden>
committer: Tarmac
branch nick: development-branch
timestamp: Wed 2017-02-15 22:38:46 +0000
message:
  mirserver: Use the normal mir connection to send input to clients

  Input Events are now sent through the connection and contain a window id to refer to the destination window. So all types of events occur on the client side in the order they were sent from the server. Additionally the conversion between android::InputMessage and MirEvent is avoided. This simplifies adding new event types or extending the content of existing input events. The client code needed only minor changes to not filter out MirInputEvent.
  .

  Approved by Brandon Schaefer, Kevin DuBois, mir-ci-bot.

And that's EOW

Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

OK, so this looks like eglsquare depending on undefined behavior - it tries to paint in the window event callback. That "worked" for input events prior to -r 4034.

Changed in mir:
importance: High → Medium
Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

Fix committed into lp:mir at revision None, scheduled for release in mir, milestone 0.27.0

Changed in mir:
status: In Progress → Fix Committed
Changed in mir:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.