Comment 8 for bug 1212065

Revision history for this message
Chris Wilson (ickle) wrote :

Something like:

diff --git a/src/sna/sna_driver.c b/src/sna/sna_driver.c
index 7f2c0ac..93843d1 100644
--- a/src/sna/sna_driver.c
+++ b/src/sna/sna_driver.c
@@ -1110,13 +1110,15 @@ Bool sna_init_scrn(ScrnInfoPtr scrn, int entity_num)

        scrn->PreInit = sna_pre_init;
        scrn->ScreenInit = sna_screen_init;
- scrn->SwitchMode = sna_switch_mode;
- scrn->AdjustFrame = sna_adjust_frame;
- scrn->EnterVT = sna_enter_vt;
- scrn->LeaveVT = sna_leave_vt;
+ if (!hosted()) {
+ scrn->SwitchMode = sna_switch_mode;
+ scrn->AdjustFrame = sna_adjust_frame;
+ scrn->EnterVT = sna_enter_vt;
+ scrn->LeaveVT = sna_leave_vt;
+ scrn->ValidMode = sna_valid_mode;
+ scrn->PMEvent = sna_pm_event;
+ }
        scrn->FreeScreen = sna_free_screen;
- scrn->ValidMode = sna_valid_mode;
- scrn->PMEvent = sna_pm_event;

        xf86SetEntitySharable(entity_num);
        xf86SetEntityInstanceForScreen(scrn, entity_num,

Need to check that we can forgo declaring some of those and that XMir wraps the ones it requires for itself.