@@ -64,7 +64,7 @@ static void
64
64
get_pixel_16L (Imaging im , int x , int y , void * color ) {
65
65
UINT8 * in = (UINT8 * )& im -> image [y ][x + x ];
66
66
#ifdef WORDS_BIGENDIAN
67
- UINT16 out = in [0 ] + (in [1 ] << 8 );
67
+ UINT16 out = in [0 ] + (( UINT16 ) in [1 ] << 8 );
68
68
memcpy (color , & out , sizeof (out ));
69
69
#else
70
70
memcpy (color , in , sizeof (UINT16 ));
@@ -77,7 +77,7 @@ get_pixel_16B(Imaging im, int x, int y, void *color) {
77
77
#ifdef WORDS_BIGENDIAN
78
78
memcpy (color , in , sizeof (UINT16 ));
79
79
#else
80
- UINT16 out = in [1 ] + (in [0 ] << 8 );
80
+ UINT16 out = in [1 ] + (( UINT16 ) in [0 ] << 8 );
81
81
memcpy (color , & out , sizeof (out ));
82
82
#endif
83
83
}
@@ -91,7 +91,8 @@ static void
91
91
get_pixel_32L (Imaging im , int x , int y , void * color ) {
92
92
UINT8 * in = (UINT8 * )& im -> image [y ][x * 4 ];
93
93
#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 );
95
96
memcpy (color , & out , sizeof (out ));
96
97
#else
97
98
memcpy (color , in , sizeof (INT32 ));
@@ -104,7 +105,8 @@ get_pixel_32B(Imaging im, int x, int y, void *color) {
104
105
#ifdef WORDS_BIGENDIAN
105
106
memcpy (color , in , sizeof (INT32 ));
106
107
#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 );
108
110
memcpy (color , & out , sizeof (out ));
109
111
#endif
110
112
}
0 commit comments