summaryrefslogtreecommitdiff
path: root/trunk/rdppm.c
diff options
context:
space:
mode:
authordcommander <dcommander@3789f03b-4d11-0410-bbf8-ca57d06f2519>2010-10-10 06:01:00 +0000
committerdcommander <dcommander@3789f03b-4d11-0410-bbf8-ca57d06f2519>2010-10-10 06:01:00 +0000
commit3a7a692ccb3495a9563e0bcd0a83a58e33ef1ba3 (patch)
tree76da46553c89aab17dbe31a95e8203237433ba49 /trunk/rdppm.c
parent29cdb7c668ac3169bbcb7f1e39bb777a34b606d6 (diff)
Fix byte order issue with 16bit PPM/PGM files
git-svn-id: https://libjpeg-turbo.svn.sourceforge.net/svnroot/libjpeg-turbo@245 3789f03b-4d11-0410-bbf8-ca57d06f2519
Diffstat (limited to 'trunk/rdppm.c')
-rw-r--r--trunk/rdppm.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/trunk/rdppm.c b/trunk/rdppm.c
index 1df35c1..a757022 100644
--- a/trunk/rdppm.c
+++ b/trunk/rdppm.c
@@ -2,6 +2,7 @@
* rdppm.c
*
* Copyright (C) 1991-1997, Thomas G. Lane.
+ * Modified 2009 by Bill Allombert, Guido Vollbeding.
* This file is part of the Independent JPEG Group's software.
* For conditions of distribution and use, see the accompanying README file.
*
@@ -250,8 +251,8 @@ get_word_gray_row (j_compress_ptr cinfo, cjpeg_source_ptr sinfo)
bufferptr = source->iobuffer;
for (col = cinfo->image_width; col > 0; col--) {
register int temp;
- temp = UCH(*bufferptr++);
- temp |= UCH(*bufferptr++) << 8;
+ temp = UCH(*bufferptr++) << 8;
+ temp |= UCH(*bufferptr++);
*ptr++ = rescale[temp];
}
return 1;
@@ -274,14 +275,14 @@ get_word_rgb_row (j_compress_ptr cinfo, cjpeg_source_ptr sinfo)
bufferptr = source->iobuffer;
for (col = cinfo->image_width; col > 0; col--) {
register int temp;
- temp = UCH(*bufferptr++);
- temp |= UCH(*bufferptr++) << 8;
+ temp = UCH(*bufferptr++) << 8;
+ temp |= UCH(*bufferptr++);
*ptr++ = rescale[temp];
- temp = UCH(*bufferptr++);
- temp |= UCH(*bufferptr++) << 8;
+ temp = UCH(*bufferptr++) << 8;
+ temp |= UCH(*bufferptr++);
*ptr++ = rescale[temp];
- temp = UCH(*bufferptr++);
- temp |= UCH(*bufferptr++) << 8;
+ temp = UCH(*bufferptr++) << 8;
+ temp |= UCH(*bufferptr++);
*ptr++ = rescale[temp];
}
return 1;