[PATCH weston] clients/simple-shm: remove unreachable function call
ryomnktml at gmail.com
Thu Nov 24 09:08:25 UTC 2016
On Mon, 21 Nov 2016 09:44:42 +0000
Daniel Stone <daniel at fooishbar.org> wrote:
> Hi Munakata-san,
> On 18 November 2016 at 12:17, Ryo Munakata <ryomnktml at gmail.com> wrote:
> > window->wait_for_configure should be false after dispatching more than once.
> > Therefore this redraw() will never be called.
> > Signed-off-by: Ryo Munakata <ryomnktml at gmail.com>
> > ---
> > clients/simple-shm.c | 3 ---
> > 1 file changed, 3 deletions(-)
> > diff --git a/clients/simple-shm.c b/clients/simple-shm.c
> > index 9fa2e21..04b4eff 100644
> > --- a/clients/simple-shm.c
> > +++ b/clients/simple-shm.c
> > @@ -547,9 +547,6 @@ main(int argc, char **argv)
> > wl_surface_damage(window->surface, 0, 0,
> > window->width, window->height);
> > - if (!window->wait_for_configure)
> > - redraw(window, NULL, 0);
> > -
> > while (running && ret != -1)
> > ret = wl_display_dispatch(display->display);
> Hm, I don't think this is quite correct.
> In create_window(), we set wait_for_configure = true, only after
> creating an xdg_shell surface and committing. There is no roundtrip or
> even flush at this point, so we would expect wait_for_configure to be
> true, and this path to not be taken. For ivi_shell and
> fullscreen_shell, we do not do this, and wait_for_configure will be
> false; at this point we have not committed anything to the surface,
> and the dispatch loop will not cause a redraw, as that only comes from
> the frame callback. So I think this patch will break those shells.
You are absolutely right.
This patch breaks those paths.
I forgot to test on shells other than desktop-shell.
Thank you for pointing it out.
Ryo Munakata <ryomnktml at gmail.com>
More information about the wayland-devel