summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRhys Kidd <rhyskidd@gmail.com>2019-01-21 22:59:54 -0500
committerIlia Mirkin <imirkin@alum.mit.edu>2019-01-21 23:07:11 -0500
commit92db605f0f5ac14957e38e59782ef3ed4808de05 (patch)
tree84e84dbe6defc6b4c900609ca9a5a6cccbb790cb
parent8a90309401963aa43f89f91e204ec9cac5ade704 (diff)
downloadxorg-driver-xf86-video-nouveau-92db605f0f5ac14957e38e59782ef3ed4808de05.tar.gz
Adapt to PixmapDirtyUpdateRec::src being a DrawablePtr
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
-rw-r--r--src/drmmode_display.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/drmmode_display.c b/src/drmmode_display.c
index 2ca49bd..5bab3d5 100644
--- a/src/drmmode_display.c
+++ b/src/drmmode_display.c
@@ -701,7 +701,11 @@ drmmode_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix)
int c, total_width = 0, max_height = 0, this_x = 0;
if (!ppix) {
if (crtc->randr_crtc->scanout_pixmap) {
+#ifdef HAS_DIRTYTRACKING_DRAWABLE_SRC
+ PixmapStopDirtyTracking(&crtc->randr_crtc->scanout_pixmap->drawable, screenpix);
+#else
PixmapStopDirtyTracking(crtc->randr_crtc->scanout_pixmap, screenpix);
+#endif
if (drmmode && drmmode->fb_id) {
drmModeRmFB(drmmode->fd, drmmode->fb_id);
drmmode->fb_id = 0;
@@ -747,7 +751,10 @@ drmmode_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix)
screen->height = screenpix->drawable.height = max_height;
}
drmmode_crtc->scanout_pixmap_x = this_x;
-#ifdef HAS_DIRTYTRACKING_ROTATION
+
+#ifdef HAS_DIRTYTRACKING_DRAWABLE_SRC
+ PixmapStartDirtyTracking(&ppix->drawable, screenpix, 0, 0, this_x, 0, RR_Rotate_0);
+#elif defined(HAS_DIRTYTRACKING_ROTATION)
PixmapStartDirtyTracking(ppix, screenpix, 0, 0, this_x, 0, RR_Rotate_0);
#elif defined(HAS_DIRTYTRACKING2)
PixmapStartDirtyTracking2(ppix, screenpix, 0, 0, this_x, 0);