Diffusion KWin 842b2ce51b6b

[placement] Avoid smart placement strategy with invalid client sizes

Authored by davidedmundson on Jun 24 2019, 8:59 PM.

Description

[placement] Avoid smart placement strategy with invalid client sizes

Summary:
To do so can in some situations lock up as the loop goes through
different positions incrementing by client->width/height.

If this is zero we can get into a stuck state.

This became a more common issue due to my earlier patch that places windows
in ShellClient::finishInit to allow the maximize placement strategy to
set the first configure size.

BUG: 408754

Reviewers: KWin, broulik

Reviewed By: broulik

Subscribers: kwin

Tags: KWin

Differential Revision: https://phabricator.kde.org/D21997