@ -345,7 +345,6 @@ static bool drm_crtc_commit(struct wlr_drm_connector *conn,
 
			
		
	
		
			
				
								drm_fb_clear ( & crtc - > cursor - > pending_fb ) ; 
 
			
		
	
		
			
				
							} 
 
			
		
	
		
			
				
						} 
 
			
		
	
		
			
				
						crtc - > pending_modeset  =  false ; 
 
			
		
	
		
			
				
						return  ok ; 
 
			
		
	
		
			
				
					}  
			
		
	
		
			
				
					
 
			
		
	
	
		
			
				
					
						
						
						
							
								 
						
					 
				
				@ -358,7 +357,7 @@ static bool drm_crtc_page_flip(struct wlr_drm_connector *conn,
 
			
		
	
		
			
				
						// page-flip, either a blocking modeset. When performing a blocking modeset
 
 
			
		
	
		
			
				
						// we'll wait for all queued page-flips to complete, so we don't need this
 
 
			
		
	
		
			
				
						// safeguard.
 
 
			
		
	
		
			
				
						if  ( conn - > pending_page_flip_crtc  & &  ! crtc - > pending_modeset )  { 
 
			
		
	
		
			
				
						if  ( conn - > pending_page_flip_crtc  & &  ! drm_connector_state_is_modeset ( state ) )  { 
 
			
		
	
		
			
				
							wlr_drm_conn_log ( conn ,  WLR_ERROR ,  " Failed to page-flip output:  " 
 
			
		
	
		
			
				
								" a page-flip is already pending " ) ; 
 
			
		
	
		
			
				
							return  false ; 
 
			
		
	
	
		
			
				
					
						
							
								 
						
						
							
								 
						
						
					 
				
				@ -681,7 +680,6 @@ static bool drm_connector_init_renderer(struct wlr_drm_connector *conn,
 
			
		
	
		
			
				
						} 
 
			
		
	
		
			
				
						struct  wlr_drm_plane  * plane  =  crtc - > primary ; 
 
			
		
	
		
			
				
					
 
			
		
	
		
			
				
						crtc - > pending_modeset  =  true ; 
 
			
		
	
		
			
				
						crtc - > pending . active  =  true ; 
 
			
		
	
		
			
				
						crtc - > pending . mode  =  mode ; 
 
			
		
	
		
			
				
					
 
			
		
	
	
		
			
				
					
						
						
						
							
								 
						
					 
				
				@ -705,7 +703,6 @@ static bool drm_connector_init_renderer(struct wlr_drm_connector *conn,
 
			
		
	
		
			
				
								" retrying without modifiers " ) ; 
 
			
		
	
		
			
				
							modifiers  =  false ; 
 
			
		
	
		
			
				
					
 
			
		
	
		
			
				
							crtc - > pending_modeset  =  true ; 
 
			
		
	
		
			
				
							crtc - > pending . active  =  true ; 
 
			
		
	
		
			
				
							crtc - > pending . mode  =  mode ; 
 
			
		
	
		
			
				
					
 
			
		
	
	
		
			
				
					
						
							
								 
						
						
							
								 
						
						
					 
				
				@ -755,7 +752,6 @@ bool drm_connector_set_mode(struct wlr_drm_connector *conn,
 
			
		
	
		
			
				
					
 
			
		
	
		
			
				
						if  ( wlr_mode  = =  NULL )  { 
 
			
		
	
		
			
				
							if  ( conn - > crtc  ! =  NULL )  { 
 
			
		
	
		
			
				
								conn - > crtc - > pending_modeset  =  true ; 
 
			
		
	
		
			
				
								conn - > crtc - > pending . active  =  false ; 
 
			
		
	
		
			
				
								if  ( ! drm_crtc_commit ( conn ,  state ,  0 ) )  { 
 
			
		
	
		
			
				
									return  false ; 
 
			
		
	
	
		
			
				
					
						
							
								 
						
						
							
								 
						
						
					 
				
				@ -1041,6 +1037,11 @@ uint32_t wlr_drm_connector_get_id(struct wlr_output *output) {
 
			
		
	
		
			
				
						return  conn - > id ; 
 
			
		
	
		
			
				
					}  
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					bool  drm_connector_state_is_modeset ( const  struct  wlr_output_state  * state )  {  
			
		
	
		
			
				
						return  state - > committed  & 
 
			
		
	
		
			
				
							( WLR_OUTPUT_STATE_ENABLED  |  WLR_OUTPUT_STATE_MODE ) ; 
 
			
		
	
		
			
				
					}  
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					static  const  int32_t  subpixel_map [ ]  =  {  
			
		
	
		
			
				
						[ DRM_MODE_SUBPIXEL_UNKNOWN ]  =  WL_OUTPUT_SUBPIXEL_UNKNOWN , 
 
			
		
	
		
			
				
						[ DRM_MODE_SUBPIXEL_HORIZONTAL_RGB ]  =  WL_OUTPUT_SUBPIXEL_HORIZONTAL_RGB , 
 
			
		
	
	
		
			
				
					
						
						
						
							
								 
						
					 
				
				@ -1059,7 +1060,6 @@ static void dealloc_crtc(struct wlr_drm_connector *conn) {
 
			
		
	
		
			
				
						wlr_drm_conn_log ( conn ,  WLR_DEBUG ,  " De-allocating CRTC %zu " , 
 
			
		
	
		
			
				
							conn - > crtc  -  drm - > crtcs ) ; 
 
			
		
	
		
			
				
					
 
			
		
	
		
			
				
						conn - > crtc - > pending_modeset  =  true ; 
 
			
		
	
		
			
				
						conn - > crtc - > pending . active  =  false ; 
 
			
		
	
		
			
				
						struct  wlr_output_state  state  =  { 
 
			
		
	
		
			
				
							. committed  =  WLR_OUTPUT_STATE_ENABLED ,