Commit c0540b4c authored by Keith Packard's avatar Keith Packard

Kludge -- Call RandR screen before cleaning up xf86 crtcs

The core RandR screen cleanup now involves cleaning up any GPU screen
associations, and those call down into DDX to clean up the driver. If
the pointers from the xf86 structures back to the core randr
structures are set to NULL at that point, bad things happen.

This patch "knows" that the core RandR close screen is underneath the
xf86 randr close screen function, and so makes sure it gets called
first.
Signed-off-by: Keith Packard's avatarKeith Packard <keithp@keithp.com>
Reviewed-by: default avatarDave Airlie <airlied@redhat.com>
parent 288b87e4
......@@ -726,6 +726,12 @@ xf86CrtcCloseScreen(ScreenPtr screen)
xf86RotateCloseScreen(screen);
xf86RandR12CloseScreen(screen);
free(config->name);
screen->CloseScreen(screen);
for (o = 0; o < config->num_output; o++) {
xf86OutputPtr output = config->output[o];
......@@ -749,10 +755,7 @@ xf86CrtcCloseScreen(ScreenPtr screen)
else if (screen->current_master)
DetachUnboundGPU(screen);
}
xf86RandR12CloseScreen(screen);
free(config->name);
return screen->CloseScreen(screen);
return TRUE;
}
/*
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment