Could someone test this patch?
diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c index b972974..f4b04d8 100644 --- a/hw/xfree86/modes/xf86Crtc.c +++ b/hw/xfree86/modes/xf86Crtc.c @@ -2940,22 +2940,29 @@ xf86_crtc_clip_video_helper(ScrnInfoPtr pScrn, xf86_crtc_notify_proc_ptr xf86_wrap_crtc_notify (ScreenPtr screen, xf86_crtc_notify_proc_ptr new) { - ScrnInfoPtr scrn = xf86Screens[screen->myNum]; - xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn); - xf86_crtc_notify_proc_ptr old; - - old = config->xf86_crtc_notify; - config->xf86_crtc_notify = new; - return old; + if (xf86CrtcConfigPrivateIndex != -1) + { + ScrnInfoPtr scrn = xf86Screens[screen->myNum]; + xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn); + xf86_crtc_notify_proc_ptr old; + + old = config->xf86_crtc_notify; + config->xf86_crtc_notify = new; + return old; + } + return NULL; }
void xf86_unwrap_crtc_notify(ScreenPtr screen, xf86_crtc_notify_proc_ptr old) { - ScrnInfoPtr scrn = xf86Screens[screen->myNum]; - xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn); - - config->xf86_crtc_notify = old; + if (xf86CrtcConfigPrivateIndex != -1) + { + ScrnInfoPtr scrn = xf86Screens[screen->myNum]; + xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn); + + config->xf86_crtc_notify = old; + } }
void
Could someone test this patch?
diff --git a/hw/xfree86/ modes/xf86Crtc. c b/hw/xfree86/ modes/xf86Crtc. c modes/xf86Crtc. c modes/xf86Crtc. c clip_video_ helper( ScrnInfoPtr pScrn, notify_ proc_ptr crtc_notify (ScreenPtr screen, xf86_crtc_ notify_ proc_ptr new) screen- >myNum] ; CONFIG_ PTR(scrn) ; notify_ proc_ptr old; >xf86_crtc_ notify; >xf86_crtc_ notify = new; PrivateIndex != -1) screen- >myNum] ; CONFIG_ PTR(scrn) ; notify_ proc_ptr old; >xf86_crtc_ notify; >xf86_crtc_ notify = new;
index b972974..f4b04d8 100644
--- a/hw/xfree86/
+++ b/hw/xfree86/
@@ -2940,22 +2940,29 @@ xf86_crtc_
xf86_crtc_
xf86_wrap_
{
- ScrnInfoPtr scrn = xf86Screens[
- xf86CrtcConfigPtr config = XF86_CRTC_
- xf86_crtc_
-
- old = config-
- config-
- return old;
+ if (xf86CrtcConfig
+ {
+ ScrnInfoPtr scrn = xf86Screens[
+ xf86CrtcConfigPtr config = XF86_CRTC_
+ xf86_crtc_
+
+ old = config-
+ config-
+ return old;
+ }
+ return NULL;
}
void crtc_notify( ScreenPtr screen, xf86_crtc_ notify_ proc_ptr old) screen- >myNum] ; CONFIG_ PTR(scrn) ; >xf86_crtc_ notify = old; PrivateIndex != -1) screen- >myNum] ; CONFIG_ PTR(scrn) ; >xf86_crtc_ notify = old;
xf86_unwrap_
{
- ScrnInfoPtr scrn = xf86Screens[
- xf86CrtcConfigPtr config = XF86_CRTC_
-
- config-
+ if (xf86CrtcConfig
+ {
+ ScrnInfoPtr scrn = xf86Screens[
+ xf86CrtcConfigPtr config = XF86_CRTC_
+
+ config-
+ }
}
void