Quite a few changes, as it seems like previous wrapping was done
manually, so it's all over the place.
As noted in #28424
Signed-off-by: Jonathan Boulle <jonathanboulle@gmail.com>
Upstream-commit: ba408fbc9a3131d03bb5389e73cb9eec49e071be
Component: engine