EXA: Preserve pPixmap->devPrivate.ptr in exaPixmapIsOffscreen_mixed.
Otherwise we may incorrectly clobber it to NULL on repeated PrepareAccess calls.
This commit is contained in:
		
							parent
							
								
									120286aef5
								
							
						
					
					
						commit
						8e873185f4
					
				|  | @ -236,14 +236,16 @@ exaPixmapIsOffscreen_mixed(PixmapPtr pPixmap) | ||||||
|     ScreenPtr pScreen = pPixmap->drawable.pScreen; |     ScreenPtr pScreen = pPixmap->drawable.pScreen; | ||||||
|     ExaScreenPriv(pScreen); |     ExaScreenPriv(pScreen); | ||||||
|     ExaPixmapPriv(pPixmap); |     ExaPixmapPriv(pPixmap); | ||||||
|  |     pointer saved_ptr; | ||||||
|     Bool ret; |     Bool ret; | ||||||
| 
 | 
 | ||||||
|     if (!pExaPixmap->driverPriv) |     if (!pExaPixmap->driverPriv) | ||||||
| 	return FALSE; | 	return FALSE; | ||||||
| 
 | 
 | ||||||
|  |     saved_ptr = pPixmap->devPrivate.ptr; | ||||||
|     pPixmap->devPrivate.ptr = ExaGetPixmapAddress(pPixmap); |     pPixmap->devPrivate.ptr = ExaGetPixmapAddress(pPixmap); | ||||||
|     ret = pExaScr->info->PixmapIsOffscreen(pPixmap); |     ret = pExaScr->info->PixmapIsOffscreen(pPixmap); | ||||||
|     pPixmap->devPrivate.ptr = NULL; |     pPixmap->devPrivate.ptr = saved_ptr; | ||||||
| 
 | 
 | ||||||
|     return ret; |     return ret; | ||||||
| } | } | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue