diff options
author | Andres Rodriguez <andresx7@gmail.com> | 2019-09-06 18:32:44 -0400 |
---|---|---|
committer | Andres Rodriguez <andresx7@gmail.com> | 2019-09-23 12:45:53 -0400 |
commit | 5aadaac9499c71ebf88c0e5fc658d9d56c8a7e16 (patch) | |
tree | d6fb6cdb17d74d449df019a7e3fc68546935161a | |
parent | 63346c74393e1df4555f84367529802a67578ef6 (diff) |
xf86: Disable unused crtc functions when a lease is revoked
This fixes 'non-desktop' displays staying powered on after their lease
has been revoked.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=111620
Cc: Keith Packard <keithp@keithp.com>
Signed-off-by: Andres Rodriguez <andresx7@gmail.com>
-rw-r--r-- | hw/xfree86/modes/xf86RandR12.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/hw/xfree86/modes/xf86RandR12.c b/hw/xfree86/modes/xf86RandR12.c index 34f2652bf..f220ef192 100644 --- a/hw/xfree86/modes/xf86RandR12.c +++ b/hw/xfree86/modes/xf86RandR12.c @@ -2226,6 +2226,7 @@ xf86CrtcLeaseTerminated(RRLeasePtr lease) { int c; int o; + ScrnInfoPtr scrn = xf86ScreenToScrn(lease->screen); RRLeaseTerminated(lease); /* @@ -2256,6 +2257,10 @@ xf86CrtcLeaseTerminated(RRLeasePtr lease) xf86CrtcCheckReset(crtc); } } + + /* Power off if necessary */ + xf86DisableUnusedFunctions(scrn); + RRLeaseFree(lease); } |