diff -up BlockOutII-2.3/contrib/ImageLib/src/jpg/jpegdecoder.cpp~ BlockOutII-2.3/contrib/ImageLib/src/jpg/jpegdecoder.cpp --- BlockOutII-2.3/contrib/ImageLib/src/jpg/jpegdecoder.cpp~ 2007-11-25 22:43:11.000000000 +0100 +++ BlockOutII-2.3/contrib/ImageLib/src/jpg/jpegdecoder.cpp 2007-11-25 22:43:11.000000000 +0100 @@ -106,7 +106,7 @@ void *jpeg_decoder::alloc(int n) blocks[i] = q; // Round to qword boundry, to avoid misaligned accesses with MMX code - return ((void *)(((uint)q + 7) & ~7)); + return ((void *)(((unsigned long)q + 7) & ~7)); } //------------------------------------------------------------------------------ // Clear buffer to word values. @@ -1884,7 +1884,7 @@ void jpeg_decoder::init_frame(void) q = (uchar *)alloc(max_blocks_per_row * 64 * sizeof(BLOCK_TYPE) + 8); // Align to 8-byte boundry, for MMX code - q = (uchar *)(((uint)q + 7) & ~7); + q = (uchar *)(((unsigned long)q + 7) & ~7); // The block_seg[] array's name dates back to the // 16-bit assembler implementation. "seg" stood for "segment". @@ -1894,7 +1894,7 @@ void jpeg_decoder::init_frame(void) for (i = 0; i < max_blocks_per_row; i++) block_max_zag_set[i] = 64; - Psample_buf = (uchar *)(((uint)alloc(max_blocks_per_row * 64 + 8) + 7) & ~7); + Psample_buf = (uchar *)(((unsigned long)alloc(max_blocks_per_row * 64 + 8) + 7) & ~7); total_lines_left = image_y_size;