placement: Do not leak the composed placement "override" in the args.

Without this change, if a composed placement was used, it would leak
the "override_geometry" in the args, which would be kept cached during
the next composed node. If that node had no override of its own, it
would use the previous one by accident.

In practice, it means it was impossible to resize a `wibar` manually.
The `wibar` would always restore itself to the height (or width, for
vertical ones) it previously had.
This commit is contained in:
Emmanuel Lepage Vallee 2021-07-05 01:29:07 -07:00
parent 4b606fb3d7
commit d9f27bdf4b
1 changed files with 4 additions and 0 deletions

View File

@ -184,6 +184,10 @@ local function compose(...)
attach(d, ret, args)
end
-- Cleanup the override because otherwise it might leak into
-- future calls.
rawset(args, "override_geometry", nil)
return last_geo, rets
end, "compose")