Am update with my findings so far:
I can occasionally reproduce QtMir rejecting the camera app connection.
It does this as it is not expecting the camera process to connect to it/mir.
Why not? Upstart/Ubuntua-app-launch should have notified it that camera app is
starting. But it appears some notifications are getting confused. Before the
rejection, QtMir prints:
qtmir.applications: ApplicationManager::onProcessStarting - appId=
"com.ubuntu.camera_camera"
qtmir.applications: ApplicationManager::onProcessStarting application already
found with appId "com.ubuntu.camera_camera"
qtmir.applications: ApplicationManager::onProcessStarting - appId=
"com.ubuntu.camera_camera"
qtmir.applications: ApplicationManager::onProcessStarting application already
found with appId "com.ubuntu.camera_camera"
qtmir.applications: ApplicationManager::onResumeRequested - appId=
"com.ubuntu.camera_camera"
qtmir.applications: ApplicationManager::onProcessStarting - appId=
"com.ubuntu.camera_camera"
qtmir.applications: ApplicationManager::onProcessStarting application already
found with appId "com.ubuntu.camera_camera"
qtmir.applications: ApplicationManager::onResumeRequested - appId=
"com.ubuntu.camera_camera"
The onProcessStarting print is due to a message "starting" from Ubuntu-
app-launch. UAL appears to send 3 starting messages! - but in fact the
process has stopped (well disconnected from Mir), due to the next lines
of output:
qtmir.mir: SessionListener::stopping - this= SessionListener(0xb193b7ac)
session= 0x1a419dc
qtmir.applications: ApplicationManager::onSessionStopping - sessionName=
QtUbuntu
qtmir.applications: ApplicationManager::remove - appId=
"com.ubuntu.camera_camera"
Watching dbus traffic from Upstart, I noticed this error coincides with
these events:
signal sender=:1.0 -> dest=(null destination) serial=1646
path=/com/ubuntu/Upstart; interface=com.ubuntu.Upstart0_6; member=EventEmitted
string "starting"
array [
string "JOB=application-click"
string "INSTANCE=com.ubuntu.camera_camera_3.0.0.516"
string "UBUNTU_APP_LAUNCH_ARCH=arm-linux-gnueabihf"
]
signal sender=:1.0 -> dest=(null destination) serial=1655
path=/com/ubuntu/Upstart; interface=com.ubuntu.Upstart0_6; member=EventEmitted
string "started"
array [
string "JOB=application-click"
string "INSTANCE=com.ubuntu.camera_camera_3.0.0.516"
string "UBUNTU_APP_LAUNCH_ARCH=arm-linux-gnueabihf"
]
signal sender=:1.0 -> dest=(null destination) serial=1672
path=/com/ubuntu/Upstart; interface=com.ubuntu.Upstart0_6; member=EventEmitted
string "stopping"
array [
string "JOB=application-click"
string "INSTANCE=com.ubuntu.camera_camera_3.0.0.516"
string "RESULT=ok"
string "UBUNTU_APP_LAUNCH_ARCH=arm-linux-gnueabihf"
]
**No Stopped!!!**
signal sender=:1.0 -> dest=(null destination) serial=1708
path=/com/ubuntu/Upstart; interface=com.ubuntu.Upstart0_6; member=EventEmitted
string "starting"
array [
string "JOB=application-click"
string "INSTANCE=com.ubuntu.camera_camera_3.0.0.516"
string "UBUNTU_APP_LAUNCH_ARCH=arm-linux-gnueabihf"
]
Normally these are the sequence of events: starting, started, stopping,
stopped. But there's a missing "stopped" event coming from upstart,
which may be confusing UAL, and thus confusing Qtmir.
Why this "stopped" event is missing remains to be determined.
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1422797
Title:
Qt app aborts if it cannot connect to Mir - QtMir rejecting the
connection
To manage notifications about this bug go to:
https://bugs.launchpad.net/qtmir/+bug/1422797/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs