diff -up xf86-video-ati-6.7.196/src/radeon_driver.c.randr-gamma xf86-video-ati-6.7.196/src/radeon_driver.c
--- xf86-video-ati-6.7.196/src/radeon_driver.c.randr-gamma 2007-11-12 11:29:55.000000000 +1000
+++ xf86-video-ati-6.7.196/src/radeon_driver.c 2007-11-29 17:30:03.000000000 +1000
@@ -2932,10 +2932,13 @@ static void RADEONLoadPalette(ScrnInfoPt
/* Make the change through RandR */
#ifdef RANDR_12_INTERFACE
- RRCrtcGammaSet(crtc->randr_crtc, lut_r, lut_g, lut_b);
-#else
- crtc->funcs->gamma_set(crtc, lut_r, lut_g, lut_b, 256);
+ if (crtc->randr_crtc)
+ RRCrtcGammaSet(crtc->randr_crtc, lut_r, lut_g, lut_b);
+ else
#endif
+ {
+ crtc->funcs->gamma_set(crtc, lut_r, lut_g, lut_b, 256);
+ }
}
}