Wizard crashes when trying to view HERE terms and conditions
| Affects | Status | Importance | Assigned to | Milestone | |
|---|---|---|---|---|---|
| | Canonical System Image |
Critical
|
David Barth | ||
| | Oxide |
High
|
Michael Terry | ||
| | 1.6 |
High
|
Unassigned | ||
| | oxide-qt (Ubuntu) |
Undecided
|
Unassigned | ||
| | oxide-qt (Ubuntu RTM) |
High
|
Unassigned | ||
Bug Description
Flash like so:
ubuntu-device-flash touch --channel=
And you'll have the HERE bits on your phone. Now go through the wizard, click on the "terms and conditions" link on the location screen to see the Nokia terms. Your screen will seem frozen and unity8 will crash.
This is what we see in the logs:
[0402/192155:
[0402/192155:
And it's because oxide expects the platform to start with "ubuntu" but unity8 translates "ubuntumirclient" to "mirserver" which oxide does not expect. So it falls back to non-GLES2 mode and can't find libosmesa.so, crashing.
It's not clear to me *why* unity8 is doing that. But until we sort that out, oxide can simply support "mirserver" too.
Related branches
- Chris Coulson: Approve on 2015-04-02
-
Diff: 25 lines (+2/-2)2 files modifiedqt/core/browser/oxide_qt_browser_startup.cc (+1/-1)
qt/core/common/oxide_qt_screen_utils.cc (+1/-1)
- Olivier Tilloy: Disapprove on 2015-10-06
- Chris Coulson: Pending requested 2015-04-10
-
Diff: 25 lines (+2/-2)2 files modifiedqt/core/browser/oxide_qt_browser_startup.cc (+1/-1)
qt/core/common/oxide_qt_screen_utils.cc (+1/-1)
- Chris Coulson: Pending requested 2015-04-10
-
Diff: 1603 lines (+1010/-3) (has conflicts)22 files modifiedCHROMIUM_VERSION (+4/-0)
build/common.gypi (+15/-1)
patches/allow-os-override-for-gpu-manager.patch (+216/-0)
patches/allow-render-widget-compositor-settings-override.patch (+106/-0)
patches/bug1423531.patch (+202/-0)
patches/port/gl_implementation.patch (+49/-1)
patches/series (+7/-0)
patches/support-native-popup-menus.patch (+104/-0)
patches/use-android-style-overlay-scrollbars.patch (+76/-0)
qt/VERSION (+4/-0)
qt/core/browser/oxide_qt_browser_startup.cc (+13/-0)
qt/core/browser/oxide_qt_browser_startup.h (+5/-0)
qt/core/glue/oxide_qt_init.cc (+5/-0)
qt/quick/CMakeLists.txt (+8/-0)
qt/quick/api/oxideqquickwebframe.cc (+19/-0)
qt/quick/api/oxideqquickwebview.cc (+10/-0)
qt/renderer/renderer.gyp (+6/-1)
shared/browser/compositor/oxide_compositor_utils.cc (+107/-0)
shared/browser/oxide_browser_process_main.cc (+8/-0)
shared/browser/oxide_content_browser_client.cc (+15/-0)
shared/browser/oxide_web_frame.cc (+7/-0)
shared/renderer/oxide_content_renderer_client.cc (+24/-0)
| Michael Terry (mterry) wrote : | #1 |
| Changed in unity8 (Ubuntu): | |
| assignee: | nobody → Gerry Boland (gerboland) |
| status: | New → Incomplete |
| Gerry Boland (gerboland) wrote : | #2 |
It was called "mirserver" because it's not necessarily ubuntu specific.
I'm more curious why it reads the QPA name, as it's not good to have code so specific for one platform
| Gerry Boland (gerboland) wrote : | #3 |
Ok code is doing platform specific things (reading GRID_UNIT_PX, getting a shared gl context is very QPA plugin), so yeah the qpa name is a good way to distinguish them. Figuring out if it should GL or GLES really should be something Qt can communicate. We're exclusively using GLES for now, but desktop will gain GL support in time, so this fix isn't future-proof
| Changed in unity8 (Ubuntu): | |
| assignee: | Gerry Boland (gerboland) → Michael Terry (mterry) |
| status: | Incomplete → In Progress |
| Michael Terry (mterry) wrote : | #4 |
(To clarify, we don't have a more future-proof solution yet. So when the situation changes, we'll just have to come back and edit oxide again.)
| Changed in unity8 (Ubuntu): | |
| status: | In Progress → Invalid |
| Changed in oxide-qt (Ubuntu): | |
| assignee: | nobody → Michael Terry (mterry) |
| status: | New → In Progress |
| Changed in unity8 (Ubuntu): | |
| assignee: | Michael Terry (mterry) → nobody |
| Chris Coulson (chrisccoulson) wrote : | #5 |
The desktop using GL rather than GLES shouldn't affect Oxide - I don't think it cares too much what API the application is using (and Chromium only supports GLES with EGL in any case. "GL" in Chromium refers to one of the windowing-system specific desktop GL API's - GLX on Linux and WGL on Windows). Given that all GL access in Chromium happens on a dedicated thread, it can use a different API without affecting the rest of the application.
| Changed in oxide: | |
| assignee: | nobody → Michael Terry (mterry) |
| milestone: | none → branch-1.7 |
| status: | New → Fix Released |
| importance: | Undecided → High |
| Changed in oxide-qt (Ubuntu): | |
| status: | In Progress → Fix Committed |
| assignee: | Michael Terry (mterry) → nobody |
| Changed in oxide-qt (Ubuntu RTM): | |
| status: | New → Confirmed |
| importance: | Undecided → High |
| Changed in oxide-qt (Ubuntu RTM): | |
| status: | Confirmed → Won't Fix |
| no longer affects: | unity8 (Ubuntu) |
| Chris Coulson (chrisccoulson) wrote : | #6 |
Note that the crash is fixed in 1.6 by http://
Marking 1.6 as Won't Fix, as the change in http://
On trunk (1.7), Michael's change enables Oxide to use the EGLImage compositing path, but that doesn't exist in 1.6 (it requires http://
| Changed in oxide: | |
| status: | Fix Released → Fix Committed |
| Changed in oxide: | |
| status: | Fix Committed → Fix Released |
| Changed in canonical-devices-system-image: | |
| assignee: | nobody → David Barth (dbarth) |
| importance: | Undecided → Critical |
| milestone: | none → ww17-2015 |
| status: | New → Confirmed |
| Changed in canonical-devices-system-image: | |
| status: | Confirmed → Fix Committed |
| Changed in canonical-devices-system-image: | |
| status: | Fix Committed → Fix Released |
| Launchpad Janitor (janitor) wrote : | #7 |
This bug was fixed in the package oxide-qt - 1.7.8-0ubuntu0.
---------------
oxide-qt (1.7.8-
* Update to v1.7.8
- see USN-2610-1
- Bump Chromium rev to 43.0.2357.65
- Fix LP: #1452407 - Shutdown abort due to BrowserContext leak
- Fix LP: #1449660 - Shutdown deadlock due to a race condition in
WebConten
- Fix LP: #1435831 - Support EGLImage compositing path
- Fix LP: #1435835 - Improve synchronization between webview and UI
compositors
- Fix LP: #1422408 - Enable accelerated canvas on Arale
- Fix LP: #1426567 - Enable pinch-viewport on desktop
- Fix LP: #1439829 - Select the correct GL platform when the Qt platform
is "mirserver"
- Fix LP: #1399195 - Improve network callback event tests
- Fix LP: #1415662 - Cancelling a network request in onBeforeRedirect has
no effect
- Fix LP: #1422920 - Add LocationBarCont
LocationB
- Fix LP: #1433472 - navigator.language doesn't work
- Fix LP: #1435418 - Clean up the classes related to the private interfaces
between the core library and the QtQuick library, making it more obvious
where code should live
- Fix LP: #1438902 - Enable webgl on mako
- Fix LP: #1446864 - OxideQQuickScri
Qt 5.4
- Use the simple backend for the network cache
- Add EGLFS QPA support
- Fix cross-compiling armhf builds on x86
* Make sure that liboxideqtquick0 is stripped correctly
-- Chris Coulson <email address hidden> Tue, 19 May 2015 17:43:04 +0100
| Changed in oxide-qt (Ubuntu): | |
| status: | Fix Committed → Fix Released |


Gerry, assigning unity8 task to you, just for a comment on why we filter ubuntumirclient to just mirserver (I get why we might be interested in the client->server conversion, but is dropping ubuntu also important?)