forked from mirrors/qmk_userspace
		
	[QP] Check BPP capabilities before loading the palette (#16863)
This commit is contained in:
		
					parent
					
						
							
								5841c755ae
							
						
					
				
			
			
				commit
				
					
						147e57fd59
					
				
			
		
					 1 changed files with 6 additions and 6 deletions
				
			
		| 
						 | 
				
			
			@ -131,6 +131,12 @@ static bool qp_drawimage_prepare_frame_for_stream_read(painter_device_t device,
 | 
			
		|||
    // Ensure we aren't reusing any palette
 | 
			
		||||
    qp_internal_invalidate_palette();
 | 
			
		||||
 | 
			
		||||
    if (!qp_internal_bpp_capable(info->bpp)) {
 | 
			
		||||
        qp_dprintf("qp_drawimage_recolor: fail (image bpp too high (%d), check QUANTUM_PAINTER_SUPPORTS_256_PALETTE)\n", (int)info->bpp);
 | 
			
		||||
        qp_comms_stop(device);
 | 
			
		||||
        return false;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // Handle palette if needed
 | 
			
		||||
    const uint16_t palette_entries  = 1u << info->bpp;
 | 
			
		||||
    bool           needs_pixconvert = false;
 | 
			
		||||
| 
						 | 
				
			
			@ -146,12 +152,6 @@ static bool qp_drawimage_prepare_frame_for_stream_read(painter_device_t device,
 | 
			
		|||
        needs_pixconvert = qp_internal_interpolate_palette(fg_hsv888, bg_hsv888, palette_entries);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if (!qp_internal_bpp_capable(info->bpp)) {
 | 
			
		||||
        qp_dprintf("qp_drawimage_recolor: fail (image bpp too high (%d), check QUANTUM_PAINTER_SUPPORTS_256_PALETTE)\n", (int)info->bpp);
 | 
			
		||||
        qp_comms_stop(device);
 | 
			
		||||
        return false;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if (needs_pixconvert) {
 | 
			
		||||
        // Convert the palette to native format
 | 
			
		||||
        if (!driver->driver_vtable->palette_convert(device, palette_entries, qp_internal_global_pixel_lookup_table)) {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue