Re: [common PATCH 9/9 v4] ppc: Fix alpha state checking on BE machines

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Dec 17, 2015 at 12:33:37PM +0100, Lukas Venhoda wrote:
> Hi
> 
> On Fri, Dec 11, 2015 at 2:13 PM, Christophe Fergeau <cfergeau@xxxxxxxxxx>
> wrote:
> 
> > canvas_get_target_format() then has this code:
> >
> >     if (source_has_alpha) {
> >         if (format == PIXMAN_x8r8g8b8) {
> >             format = PIXMAN_a8r8g8b8;
> >         }
> >     }
> >
> > spice_surface_format_to_pixman(canvas::format) is not going to return
> > PIXMAN_b8g8r8x8 on big-endian, is the canvas in a8r8g8b8 format on BE too?
> > If yes, then this patch should be correct, if not, more work will be
> > needed I'm afraid..
> >
> 
> spice_surface_format_to_pixman(canvas->format) will always return LE order
> colors (ARGB, XRGB).
> With that, this function will also always return LE order colors, and that
> is correct behavior.
> 
> What the patch does is that it ensures, that source_has_alpha is set
> correctly,
> because surface_format can be both BE, or LE.
> 
> If it is BE we will always convert to LE (surface_format != wanted_format
> will always fail),
> but we can also convert from alpha to non-alpha or vice versa.
> 
> If it is LE we will only convert, if the alpha needs to be converted
> (surface_format != wanted_format will fail only when alpha is different)
> 
> Hope that answers your question.

Yes, thanks.

Christophe

Attachment: signature.asc
Description: PGP signature

_______________________________________________
Spice-devel mailing list
Spice-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/spice-devel

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]     [Monitors]