Skip to content

(trivial) xwin: drop screen proc vector wrapping

The wrapping of ScreenRec's proc vectors is making things very complicated, difficult to understand and debug, as well as fragile (eg. unwrapping needs to be done in the exact same order). For most cases, that's just not necessary at all.

Xwin is using fb-screen, which in turn using mi-screen. We can simply call the corresponding fb* procs directly and drop the complicated. Within a DDX, wrapping is (almost) never necessary at all.

There still is one exception, with (pluggable) extensions involved:

CloseScreen is installed after fb/mi screen init is done, and that might call into shadowfb setup, which also is installing an CloseScreen(). That's why this is the only one not dropped by out this queue yet. This will be addressed by an parallel approach (not in this queue), which will be adding installable callbacks, that are running independent from each other.

Addendum: also turned out that several of the wrappers aren't needed at all, so can be dropped entirely.

Edited by Enrico Weigelt, metux IT consult

Merge request reports