diff options
Diffstat (limited to 'src/radeon.h')
-rw-r--r-- | src/radeon.h | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/radeon.h b/src/radeon.h index 3e04101c..cc5dc09f 100644 --- a/src/radeon.h +++ b/src/radeon.h @@ -192,23 +192,23 @@ radeon_master_screen(ScreenPtr screen) static inline ScreenPtr radeon_dirty_master(PixmapDirtyUpdatePtr dirty) { + return radeon_master_screen(dirty->slave_dst->drawable.pScreen); +} + +static inline DrawablePtr +radeon_dirty_src_drawable(PixmapDirtyUpdatePtr dirty) +{ #ifdef HAS_DIRTYTRACKING_DRAWABLE_SRC - ScreenPtr screen = dirty->src->pScreen; + return dirty->src; #else - ScreenPtr screen = dirty->src->drawable.pScreen; + return &dirty->src->drawable; #endif - - return radeon_master_screen(screen); } static inline Bool radeon_dirty_src_equals(PixmapDirtyUpdatePtr dirty, PixmapPtr pixmap) { -#ifdef HAS_DIRTYTRACKING_DRAWABLE_SRC - return dirty->src == &pixmap->drawable; -#else - return dirty->src == pixmap; -#endif + return radeon_dirty_src_drawable(dirty) == &pixmap->drawable; } |