Skip to content

backends/x11: explicitly free the outputs

Harald Sitter requested to merge work/cherry-pick-4fcc5456 into Plasma/5.27

...before releasing the connection!

this was randomly causing crashes because of use-after-disconnect problems. since we would tear down the connection in ~X11WindowedBackend but outputs wouldn't get cleaned up until QObject children cleanup of the X11WindowedBackend object (or more precisely the OutputBase). this would then result in ~X11WindowedOutput accessing a backend connection that had already been closed

to help debug this type of problem moving forward let's also reset the connection to nullptr during destruction. it's kinda pointless but it makes it easier to spot use-after-disconnect

BUG: 466183

(cherry picked from commit 4fcc5456)

Merge request reports