EXA: Fix exaEnableDisableFBAccess for nested disables and enables.
This commit is contained in:
		
							parent
							
								
									5e4b3232da
								
							
						
					
					
						commit
						d3f8667341
					
				| 
						 | 
				
			
			@ -341,13 +341,15 @@ exaEnableDisableFBAccess (int index, Bool enable)
 | 
			
		|||
    ScreenPtr pScreen = screenInfo.screens[index];
 | 
			
		||||
    ExaScreenPriv (pScreen);
 | 
			
		||||
 | 
			
		||||
    if (!enable) {
 | 
			
		||||
    if (!enable && pExaScr->disableFbCount++ == 0) {
 | 
			
		||||
	if (pExaScr->info->exa_minor < 1)
 | 
			
		||||
	    ExaOffscreenSwapOut (pScreen);
 | 
			
		||||
	else
 | 
			
		||||
	    ExaOffscreenEjectPixmaps (pScreen);
 | 
			
		||||
	pExaScr->swappedOut = TRUE;
 | 
			
		||||
    } else {
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    if (enable && --pExaScr->disableFbCount == 0) {
 | 
			
		||||
	if (pExaScr->info->exa_minor < 1)
 | 
			
		||||
	    ExaOffscreenSwapIn (pScreen);
 | 
			
		||||
	pExaScr->swappedOut = FALSE;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -113,6 +113,7 @@ typedef struct {
 | 
			
		|||
    enum ExaMigrationHeuristic	 migration;
 | 
			
		||||
    Bool			 hideOffscreenPixmapData;
 | 
			
		||||
    Bool			 checkDirtyCorrectness;
 | 
			
		||||
    unsigned			 disableFbCount;
 | 
			
		||||
} ExaScreenPrivRec, *ExaScreenPrivPtr;
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue