mir_demo_client_basic confusingly asserts instead of reporting that there is no server to connect to: `mir_connection_is_valid(mcd.connection)' failed.

Bug #1331958 reported by Huck-bernhard
38
This bug affects 5 people
Affects Status Importance Assigned to Milestone
Mir
Fix Released
Low
Daniel van Vugt
0.7
Fix Released
Low
Daniel van Vugt
mir (Ubuntu)
Fix Released
Low
Unassigned
mir (Ubuntu RTM)
Fix Released
Undecided
Unassigned

Bug Description

Terminal:
  $ mir_demo_client__basic

ProblemType: Crash
DistroRelease: Ubuntu 14.10
Package: mir-demos 0.3.0+14.10.20140618.1-0ubuntu1
ProcVersionSignature: Ubuntu 3.15.0-6.11-generic 3.15.0
Uname: Linux 3.15.0-6-generic i686
ApportVersion: 2.14.3-0ubuntu2
Architecture: i386
AssertionMessage: mir_demo_client_basic: /build/buildd/mir-0.3.0+14.10.20140618.1/examples/basic.c:109: demo_client: Assertion `mir_connection_is_valid(mcd.connection)' failed.
CrashCounter: 1
CurrentDesktop: Unity
Date: Thu Jun 19 09:49:55 2014
ExecutablePath: /usr/bin/mir_demo_client_basic
InstallationDate: Installed on 2014-06-13 (5 days ago)
InstallationMedia: Ubuntu 14.10 "Utopic Unicorn" - Alpha i386 (20140613)
ProcCmdline: mir_demo_client_basic
Signal: 6
SourcePackage: mir
StacktraceTop:
 __assert_fail_base (fmt=0xb7601b94 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x80492dc "mir_connection_is_valid(mcd.connection)", file=file@entry=0x80492a0 "/build/buildd/mir-0.3.0+14.10.20140618.1/examples/basic.c", line=line@entry=109, function=function@entry=0x804aa90 "demo_client") at assert.c:92
 __GI___assert_fail (assertion=0x80492dc "mir_connection_is_valid(mcd.connection)", file=0x80492a0 "/build/buildd/mir-0.3.0+14.10.20140618.1/examples/basic.c", line=109, function=0x804aa90 "demo_client") at assert.c:101
 demo_client ()
 main ()
Title: mir_demo_client_basic assert failure: mir_demo_client_basic: /build/buildd/mir-0.3.0+14.10.20140618.1/examples/basic.c:109: demo_client: Assertion `mir_connection_is_valid(mcd.connection)' failed.
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin plugdev sambashare sudo

Related branches

Revision history for this message
Huck-bernhard (huck-bernhard) wrote :
Revision history for this message
Apport retracing service (apport) wrote :

StacktraceTop:
 __assert_fail_base (fmt=0xb7601b94 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x80492dc "mir_connection_is_valid(mcd.connection)", file=file@entry=0x80492a0 "/build/buildd/mir-0.3.0+14.10.20140618.1/examples/basic.c", line=line@entry=109, function=function@entry=0x804aa90 "demo_client") at assert.c:92
 __GI___assert_fail (assertion=0x80492dc "mir_connection_is_valid(mcd.connection)", file=0x80492a0 "/build/buildd/mir-0.3.0+14.10.20140618.1/examples/basic.c", line=109, function=0x804aa90 "demo_client") at assert.c:101
 demo_client ()
 main ()

Revision history for this message
Apport retracing service (apport) wrote : Stacktrace.txt
Revision history for this message
Apport retracing service (apport) wrote : StacktraceSource.txt
Revision history for this message
Apport retracing service (apport) wrote : ThreadStacktrace.txt
Changed in mir (Ubuntu):
importance: Undecided → Medium
tags: removed: need-i386-retrace
Changed in mir:
importance: Undecided → Medium
information type: Private → Public
summary: - mir_demo_client_basic assert failure: mir_demo_client_basic:
- /build/buildd/mir-0.3.0+14.10.20140618.1/examples/basic.c:109:
- demo_client: Assertion `mir_connection_is_valid(mcd.connection)' failed.
+ mir_demo_client_basic confusingly asserts instead of reporting that
+ there is no server to connect to:
+ `mir_connection_is_valid(mcd.connection)' failed.
Changed in mir:
importance: Medium → Low
Changed in mir (Ubuntu):
importance: Medium → Low
Changed in mir:
status: New → Triaged
Changed in mir (Ubuntu):
status: New → Triaged
Changed in mir:
assignee: nobody → Daniel van Vugt (vanvugt)
status: Triaged → In Progress
milestone: none → 0.7.0
Changed in mir:
milestone: 0.7.0 → 0.8.0
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

Fix committed into lp:mir/devel at revision None, scheduled for release in mir, milestone Unknown

Changed in mir:
status: In Progress → Fix Committed
Changed in mir:
milestone: 0.8.0 → 0.7.0
Changed in mir:
milestone: 0.7.0 → 0.8.0
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Fix committed to lp:mir/0.7 at revision 1884, scheduled for release in Mir 0.7.0

Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (3.2 KiB)

This bug was fixed in the package mir - 0.7.0+14.10.20140829-0ubuntu1

---------------
mir (0.7.0+14.10.20140829-0ubuntu1) utopic; urgency=medium

  [ Daniel van Vugt ]
  * New upstream release 0.7.0 (https://launchpad.net/mir/+milestone/0.7.0)
    - Enhancements:
      . Test suite: Reworked mechanism to override Mir client functions
      . Demo shell: Detect custom rendering (decorations) to make it
        compatible with overlay optimizations
      . Make sure to preserve fd resources until the end of the sending
        of the message
      . Add test cases and script for tracking changes to the new ABIs:
        libmircommon, libmirplatform
      . Symbols file for libmirplatform
      . Symbols file for libmircommon
      . Symbols file for libmirserver
      . Various improvements to the SessionMediator test
      . Various build related improvements
      . Print testcase output during package build
      . Abort test when InProcessServer startup fails
      . Link the integration and unit tests against the server objects
      . Add a document detailing the useful tests to run and the useful
        logs to collect when troubleshooting a new android chipset
      . Enable motion event resampling and prediction for a more responsive
        touch experience.
    - ABI summary: Servers need rebuilding, but clients do not
      . Mirclient ABI unchanged at 8
      . Mircommon ABI bumped to 1
      . Mirplatform ABI bumped to 2
      . Mirserver ABI bumped to 25
    - API changes
      . Deleted function - frontend::Shell::create_surface_for(). If you have
        the std::shared_ptr<frontend::Session> session, you can just do
        session->create_surface(params) instead to get a SurfaceId
    - Bug fixes:
      . Ensure we process lifecycle events before the nested server is torn
        down (LP: #1353465)
      . Fix race in InputTestingServerConfiguration (LP: #1354446)
      . Fix fd leaks in prompt session frontend code and tests (LP: #1353461)
      . Detect the additional things the demo shell draws on the renderable
        list and avoid calling the optimized post function if they are being
        drawn (LP: #1348330)
      . Client: Fix SIGTERM dispatch in our default lifecycle event handler
        (LP: #1353867)
      . DemoRenderer: Don't try to create a texture of width zero.
        (LP: #1358210)
      . Fix CI failures (LP: #1358698)
      . Fix build failure: "variable ‘rc’ set but not used" which happens in
        release mode when NDEBUG is set (LP: #1358625)
      . Only enumerate exposed input surfaces to avoid delivering events to
        occluded surfaces (LP: #1359264)
      . Android: do not post driver cancelled buffers (LP: #1359406)
      . Client: Ensure our platform library stays loaded for as long as it is
        needed by other objects (LP: #1358191)
      . Examples: Register the DemoCompositor with the Scene to properly
        process visibility events (LP: #1359487)
      . Mir_demo_client_basic: Don't assert on user errors like failing to
        connect to a Mir server (LP: #1331958)
      . Tests: Explicitly depend on GMock target to avoid build races
        (LP: #1362646)

  [ Ubuntu dai...

Read more...

Changed in mir (Ubuntu):
status: Triaged → Fix Released
Changed in mir:
milestone: 0.8.0 → none
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (11.9 KiB)

This bug was fixed in the package mir - 0.8.1+15.04.20150112.2~rtm-0ubuntu1

---------------
mir (0.8.1+15.04.20150112.2~rtm-0ubuntu1) 14.09; urgency=medium

  [ Daniel van Vugt ]
  * Bug fix release 0.8.1 (https://launchpad.net/mir/+milestone/0.8.1)
    - ABI summary: Servers need rebuilding, but clients do not;
      . Mirclient ABI unchanged at 8
      . Mircommon ABI unchanged at 2
      . Mirplatform ABI unchanged to 3
      . Mirserver ABI bumped to 26.1 (due to breakage in LP: #1355173)
    - Fixes bugs:
      . Switching windows with a Trusted Prompt Session active loses the
        trusted prompt session (LP: #1355173)
      . a prompt session with an invalid application pid should be an error
        (LP: #1377968)
  * mir_demo_client_basic: Don't assert on user errors like failing to
    connect to a Mir server. It's much more useful to tell the user what
    they did wrong than to automatically generate error reports and
    duplicate apport bugs. (LP: #1331958) . (LP: #1331958)
  * Enable "Project Butter" motion event resampling and prediction for a
    more responsive touch experience. .
  * When the server disconnects unexpectedly, give the client SIGHUP
    instead of the present SIGTERM. The former is more appropriate
    because it indicates: "Hangup detected on controlling terminal or
    death of controlling process" [signal(7)] whereas SIGTERM is
    reserved for more polite user-requested shutdowns. .
  * Fix the common/shared source tree layout inconsistency. If it goes
    in libmircommon then it should be called "common" and not "shared":
  * Move mir::time::*Clock out of libmirserver and into libmircommon. It
    will soon be used by libmirclient.
  * Bump version to 0.8.0 as Mir 0.7.0 was released today.
  * Remove dead code "kill_client_processes()" from mir_test_framework.
  * Work around spurious SIGKILL delivered to clients by Valgrind during
    tests. This is why CI is failing randomly (LP: #1364772) Actually
    this workaround is nothing new. A quick grep shows we already use
    the same hack in 13 other locations under tests/. . (LP: #1364772)
  * Privatise (don't install) headers that are unused by clients, QtMir
    or USC. This reduces the size of the public include/ tree from 377
    to 121 files, and reduces the number of those that get installed
    from 208 to 121.
  * Bump the mircommon ABI to 2. We actually broke it in the Mir 0.7.0
    release with symbols.map and didn't notice in time (LP: #1364890)
    (LP: #1364890)
  * Restore support for gcc-4.8/trusty (LP: #1366134) (LP: #1366134)
  * Publish an internal header that QtMir recently started using:
    mir/input/input_channel.h (LP: #1365934) . (LP: #1365934)
  * Relax dependencies on libmirplatform2. Any binary package that uses
    libmirplatform2 should already be ABI compatible with any version of
    libmirplatform2. Assuming we maintain our ABIs correctly...
    Minimising exact version requirements should minimise future package
    upgrade problems. .
  * Privatise more headers -- these are the ones unused by any external
    projects but are used internally by the server code in examples/
    only.
  * Introducing a generic client per...

Changed in mir (Ubuntu RTM):
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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