diff options
Diffstat (limited to 'randr')
-rw-r--r-- | randr/randr.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/randr/randr.c b/randr/randr.c index 11f88b2b4..fb0895d7a 100644 --- a/randr/randr.c +++ b/randr/randr.c @@ -467,9 +467,23 @@ TellChanged(WindowPtr pWin, pointer value) void RRSetChanged(ScreenPtr pScreen) { + /* set changed bits on the master screen only */ + ScreenPtr master; rrScrPriv(pScreen); + rrScrPrivPtr mastersp; + + if (pScreen->isGPU) { + master = pScreen->current_master; + if (!master) + return; + mastersp = rrGetScrPriv(master); + } + else { + master = pScreen; + mastersp = pScrPriv; + } - pScrPriv->changed = TRUE; + mastersp->changed = TRUE; } /* |