Re: [PATCH spice-html5] support decompressing LZ_IMAGE_TYPE_XXXA images

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

 



You are correct I will remove that line and resend.

-aric

On 10/9/12 8:48 AM, Jeremy White wrote:
>> -function convert_spice_lz_rgb_to_web(context, lz_rgb)
>> +function convert_spice_lz_to_web(context, lz_image)
>> {
>> -    var u8 = new Uint8Array(lz_rgb.data);
>>      var at;
>> -    if (lz_rgb.type != LZ_IMAGE_TYPE_RGB32 && lz_rgb.type != LZ_IMAGE_TYPE_RGBA)
>> -        return undefined;
>> -
>> -    var ret = context.createImageData(lz_rgb.width, lz_rgb.height);
>> +    if (lz_image.type === LZ_IMAGE_TYPE_RGB32 || lz_image.type === LZ_IMAGE_TYPE_RGBA)
>> +    {
>> +        var u8 = new Uint8Array(lz_image.data);
>> +        var ret = context.createImageData(lz_image.width, lz_image.height);
>>
>> -    at = lz_rgb32_decompress(u8, 0, ret.data, LZ_IMAGE_TYPE_RGB32, lz_rgb.type != LZ_IMAGE_TYPE_RGBA);
>> -    if (lz_rgb.type == LZ_IMAGE_TYPE_RGBA)
>> -        lz_rgb32_decompress(u8, at, ret.data, LZ_IMAGE_TYPE_RGBA, false);
>> +        at = lz_rgb32_decompress(u8, 0, ret.data, LZ_IMAGE_TYPE_RGB32, lz_image.type != LZ_IMAGE_TYPE_RGBA);
>> +        if (lz_image.type == LZ_IMAGE_TYPE_RGBA)
>> +            lz_rgb32_decompress(u8, at, ret.data, LZ_IMAGE_TYPE_RGBA, false);
>> +    }
>> +    else if (lz_image.type === LZ_IMAGE_TYPE_XXXA)
>> +    {
>> +        var u8 = new Uint8Array(lz_image.data);
>> +        var ret = context.createImageData(lz_image.width, lz_image.height);
>> +        var i = lz_image.width * lz_image.height * 4;
>> +        do {ret.data[i--]=0;} while( i > 0);
> 
>             ^^^^^^
> 
> Is this really necessary?  Doesn't createImageData purport to create
> the images as transparent black already?
> 
> Cheers,
> 
> Jeremy
> 
_______________________________________________
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]