Changeset 3300 for libcaca/trunk


Ignore:
Timestamp:
Nov 7, 2008, 12:18:48 AM (11 years ago)
Author:
bsittler
Message:

fix endianness problem

File:
1 edited

Legend:

Unmodified
Added
Removed
  • libcaca/trunk/caca-php/php_caca.c

    r3299 r3300  
    383383                        for (i = 0; i < img->sy; i++) {
    384384                                for (j = 0; j < img->sx; j++) {
    385                                         uint8_t *dst = ((uint8_t *) result) + i * pitch + j * 4;
    386 
    387                                         dst[0] = 255 - ((img->tpixels[i][j] & 0x7f000000) >> 23);
    388                                         dst[1] = (img->tpixels[i][j] & 0x00ff0000) >> 16;
    389                                         dst[2] = (img->tpixels[i][j] & 0x0000ff00) >> 8;
    390                                         dst[3] = img->tpixels[i][j] & 0x000000ff;
     385                                        uint8_t *dst = ((uint8_t *) result) + i * pitch + j * sizeof(int);
     386
     387                                        dst[3] = 255 - (uint8_t) ((((uint32_t) img->tpixels[i][j]) & 0x7f000000) >> 23);
     388                                        dst[2] = (((uint32_t) img->tpixels[i][j]) & 0x00ff0000) >> 16;
     389                                        dst[1] = (((uint32_t) img->tpixels[i][j]) & 0x0000ff00) >> 8;
     390                                        dst[0] = ((uint32_t) img->tpixels[i][j]) & 0x000000ff;
    391391                                }
    392392                        }
     
    14511451                for (j = 0; j < img->sx; j++) {
    14521452                        uint8_t *src = buffer + i * pitch + j * 4;
    1453                         img->tpixels[i][j] = src[3] | (src[2] << 8) | (src[1] << 16) | (((255 - src[0]) & 0xfe) << 23);
     1453                        img->tpixels[i][j] = ((int) src[3]) | (((int) src[2]) << 8) | (((int) src[1]) << 16) | (((255 - (int) src[0]) & 0xfe) << 23);
    14541454                }
    14551455        }
Note: See TracChangeset for help on using the changeset viewer.