Xephyr: better handling of the -nodri option
* hw/kdrive/ephyr/ephyr.c:
          (ephyrInitScreen): try and detect when the host has no
          DRI support. In that case, switch to the -nodri behaviour.
          When in the -nodri case, make sure not to skip glx visual
          initialisation.
			
			
This commit is contained in:
		
							parent
							
								
									ea94f59e9b
								
							
						
					
					
						commit
						06c8977966
					
				| 
						 | 
				
			
			@ -40,6 +40,10 @@
 | 
			
		|||
#endif /*XEPHYR_DRI*/
 | 
			
		||||
 | 
			
		||||
extern int KdTsPhyScreen;
 | 
			
		||||
#ifdef GLXEXT
 | 
			
		||||
extern Bool noGlxVisualInit;
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
KdKeyboardInfo *ephyrKbd;
 | 
			
		||||
KdPointerInfo *ephyrMouse;
 | 
			
		||||
EphyrKeySyms ephyrKeySyms;
 | 
			
		||||
| 
						 | 
				
			
			@ -628,6 +632,11 @@ ephyrInitScreen (ScreenPtr pScreen)
 | 
			
		|||
#endif /*XV*/
 | 
			
		||||
 | 
			
		||||
#ifdef XEPHYR_DRI
 | 
			
		||||
  if (!ephyrNoDRI && !hostx_has_dri ()) {
 | 
			
		||||
      EPHYR_LOG ("host x does not support DRI. Disabling DRI forwarding\n") ;
 | 
			
		||||
      ephyrNoDRI = TRUE ;
 | 
			
		||||
      noGlxVisualInit = FALSE ;
 | 
			
		||||
  }
 | 
			
		||||
  if (!ephyrNoDRI) {
 | 
			
		||||
    ephyrDRIExtensionInit (pScreen) ;
 | 
			
		||||
    ephyrHijackGLXExtension () ;
 | 
			
		||||
| 
						 | 
				
			
			@ -635,6 +644,12 @@ ephyrInitScreen (ScreenPtr pScreen)
 | 
			
		|||
  }
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifdef GLXEXT
 | 
			
		||||
  if (ephyrNoDRI) {
 | 
			
		||||
      noGlxVisualInit = FALSE ;
 | 
			
		||||
  }
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
  return TRUE;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue