On Fri, 26 Jan 2018 18:47:54 +0200 Alexandros Frantzis <alexandros.frant...@collabora.com> wrote:
> When an weston seat or input object is destroyed, any associated client > resources should become inert and put in a state in which they can > safely handle client requests. Currently, client requests to such > resources may lead to crashes and/or memory errors in the server. > > This patchset aims to fix (or at least greatly improve) the situation. > > Patches (1) to (4) ensure that when the various input objects are > destroyed, any associated resources are made inert and can safely handle > client requests. > > Patches (5) to (7) update the test infrastructure to properly support > requests to dynamically add and remove the test seat. > > Patch (8) introduces a test for removing and re-adding the test seat. > This test indirectly checks some of the input code fixes made in the > patches 1-4. Two things to note about this test: > > 1. As mentioned in more detail in the commit, the test needs to be in > its own file for now. I haven't investigated in depth but the problem > seems to be in desktop-shell's lack of support for wl_seat > removal/re-addition. As a test, I tried running with the > fullscreen-shell and the problem is gone. This was too deep of a rabbit > hole to go into in this patchset, but I will investigate further and > hopefully we can remove this workaround. > > 2. Even without some of the fixes in the patches 1-4, the test may seem > to pass. However, running with a memory debugger reveals a different > story, since without the fixes we encounter various memory errors. > > Alexandros Frantzis (8): > libweston: Make weston_pointer destruction safe > libweston: Make weston_keyboard destruction safe > libweston: Make weston_touch destruction safe > libweston: Make weston_seat release safe > tests: Support setting the test client input dynamically > tests: Support weston_test request for adding a test seat > tests: Handle removal of seat global in test clients > tests: Add test for seat destruction and creation > > Makefile.am | 5 ++ > libweston/input.c | 115 ++++++++++++++++++++++++----- > tests/devices-seat-test.c | 53 ++++++++++++++ > tests/weston-test-client-helper.c | 147 > +++++++++++++++++++++++++++++--------- > tests/weston-test-client-helper.h | 2 + > tests/weston-test.c | 32 +++++++-- > 6 files changed, 294 insertions(+), 60 deletions(-) > create mode 100644 tests/devices-seat-test.c > Hi, I have pushed patches 2, 3 and 6: bf31f6cf..85f84329 master -> master Thanks, pq
pgpVma_UZxhzy.pgp
Description: OpenPGP digital signature
_______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/wayland-devel