@@ -64,7 +64,7 @@ static void
6464get_pixel_16L (Imaging im , int x , int y , void * color ) {
6565 UINT8 * in = (UINT8 * )& im -> image [y ][x + x ];
6666#ifdef WORDS_BIGENDIAN
67- UINT16 out = in [0 ] + (in [1 ] << 8 );
67+ UINT16 out = in [0 ] + (( UINT16 ) in [1 ] << 8 );
6868 memcpy (color , & out , sizeof (out ));
6969#else
7070 memcpy (color , in , sizeof (UINT16 ));
@@ -77,7 +77,7 @@ get_pixel_16B(Imaging im, int x, int y, void *color) {
7777#ifdef WORDS_BIGENDIAN
7878 memcpy (color , in , sizeof (UINT16 ));
7979#else
80- UINT16 out = in [1 ] + (in [0 ] << 8 );
80+ UINT16 out = in [1 ] + (( UINT16 ) in [0 ] << 8 );
8181 memcpy (color , & out , sizeof (out ));
8282#endif
8383}
@@ -91,7 +91,8 @@ static void
9191get_pixel_32L (Imaging im , int x , int y , void * color ) {
9292 UINT8 * in = (UINT8 * )& im -> image [y ][x * 4 ];
9393#ifdef WORDS_BIGENDIAN
94- INT32 out = in [0 ] + (in [1 ] << 8 ) + (in [2 ] << 16 ) + (in [3 ] << 24 );
94+ INT32 out =
95+ in [0 ] + ((INT32 )in [1 ] << 8 ) + ((INT32 )in [2 ] << 16 ) + ((INT32 )in [3 ] << 24 );
9596 memcpy (color , & out , sizeof (out ));
9697#else
9798 memcpy (color , in , sizeof (INT32 ));
@@ -104,7 +105,8 @@ get_pixel_32B(Imaging im, int x, int y, void *color) {
104105#ifdef WORDS_BIGENDIAN
105106 memcpy (color , in , sizeof (INT32 ));
106107#else
107- INT32 out = in [3 ] + (in [2 ] << 8 ) + (in [1 ] << 16 ) + (in [0 ] << 24 );
108+ INT32 out =
109+ in [3 ] + ((INT32 )in [2 ] << 8 ) + ((INT32 )in [1 ] << 16 ) + ((INT32 )in [0 ] << 24 );
108110 memcpy (color , & out , sizeof (out ));
109111#endif
110112}
0 commit comments