Mir

The Wayland frontend thunks allow exceptions to propagate (into C code)

Bug #1719477 reported by Alan Griffiths on 2017-09-25
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mir
Fix Released
High
Chris Halse Rogers

Bug Description

For example,

The generated Surface has:

    static void commit_thunk(struct wl_client*, struct wl_resource* resource)
    {
        auto me = static_cast<Surface*>(wl_resource_get_user_data(resource));
        me->commit();
    }

This calls C++ code that might throw, for example:

WaylandBuffer::WaylandBuffer( ... )

which contains

        if (extensions->wayland->eglQueryWaylandBufferWL(dpy, buffer, EGL_WIDTH, &width) == EGL_FALSE)
        {
            BOOST_THROW_EXCEPTION(mg::egl_error("Failed to query WaylandAllocator buffer width"));
        }

Related branches

Changed in mir:
assignee: nobody → Chris Halse Rogers (raof)
Changed in mir:
status: Triaged → In Progress
Mir CI Bot (mir-ci-bot) wrote :

Fix committed into lp:mir at revision None, scheduled for release in mir, milestone 1.0.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  Edit
Everyone can see this information.

Other bug subscribers