Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / third_party / pdfium / core / src / fxcodec / codec / fx_codec_jpx_opj.cpp
index 32adb8e..8dcecf9 100644 (file)
@@ -166,20 +166,19 @@ static void sycc422_to_rgb(opj_image_t *img)
     d0 = r = FX_Alloc(int, (size_t)max);
     d1 = g = FX_Alloc(int, (size_t)max);
     d2 = b = FX_Alloc(int, (size_t)max);
-    for(i = 0; i < maxh; ++i) {
-        for(j = 0; j < maxw; j += 2) {
-            sycc_to_rgb(offset, upb, *y, *cb, *cr, r, g, b);
-            ++y;
-            ++r;
-            ++g;
-            ++b;
-            sycc_to_rgb(offset, upb, *y, *cb, *cr, r, g, b);
-            ++y;
-            ++r;
-            ++g;
-            ++b;
-            ++cb;
-            ++cr;
+    for(i = 0; i < maxh; ++i)
+    {
+        for (j = 0; (OPJ_UINT32)j < (maxw & ~(OPJ_UINT32)1); j += 2)\r
+        {\r
+            sycc_to_rgb(offset, upb, *y, *cb, *cr, r, g, b);\r
+            ++y; ++r; ++g; ++b;\r
+            sycc_to_rgb(offset, upb, *y, *cb, *cr, r, g, b);\r
+            ++y; ++r; ++g; ++b; ++cb; ++cr;\r
+        }\r
+        if (j < maxw)\r
+        {\r
+            sycc_to_rgb(offset, upb, *y, *cb, *cr, r, g, b);\r
+            ++y; ++r; ++g; ++b; ++cb; ++cr;\r
         }
     }
     FX_Free(img->comps[0].data);
@@ -219,40 +218,47 @@ static void sycc420_to_rgb(opj_image_t *img)
     d0 = r = FX_Alloc(int, (size_t)max);
     d1 = g = FX_Alloc(int, (size_t)max);
     d2 = b = FX_Alloc(int, (size_t)max);
-    for(i = 0; i < maxh; i += 2) {
-        ny = y + maxw;
-        nr = r + maxw;
-        ng = g + maxw;
-        nb = b + maxw;
-        for(j = 0; j < maxw;  j += 2) {
-            sycc_to_rgb(offset, upb, *y, *cb, *cr, r, g, b);
-            ++y;
-            ++r;
-            ++g;
-            ++b;
-            sycc_to_rgb(offset, upb, *y, *cb, *cr, r, g, b);
-            ++y;
-            ++r;
-            ++g;
-            ++b;
-            sycc_to_rgb(offset, upb, *ny, *cb, *cr, nr, ng, nb);
-            ++ny;
-            ++nr;
-            ++ng;
-            ++nb;
-            sycc_to_rgb(offset, upb, *ny, *cb, *cr, nr, ng, nb);
-            ++ny;
-            ++nr;
-            ++ng;
-            ++nb;
-            ++cb;
-            ++cr;
-        }
-        y += maxw;
-        r += maxw;
-        g += maxw;
-        b += maxw;
-    }
+    for (i = 0; (OPJ_UINT32)i < (maxh & ~(OPJ_UINT32)1); i += 2)\r
+    {\r
+        ny = y + maxw;\r
+        nr = r + maxw;\r
+        ng = g + maxw;\r
+        nb = b + maxw;\r
+        for (j = 0; (OPJ_UINT32)j < (maxw & ~(OPJ_UINT32)1); j += 2)\r
+        {\r
+            sycc_to_rgb(offset, upb, *y, *cb, *cr, r, g, b);\r
+            ++y; ++r; ++g; ++b;\r
+            sycc_to_rgb(offset, upb, *y, *cb, *cr, r, g, b);\r
+            ++y; ++r; ++g; ++b;\r
+            sycc_to_rgb(offset, upb, *ny, *cb, *cr, nr, ng, nb);\r
+            ++ny; ++nr; ++ng; ++nb;\r
+            sycc_to_rgb(offset, upb, *ny, *cb, *cr, nr, ng, nb);\r
+            ++ny; ++nr; ++ng; ++nb; ++cb; ++cr;\r
+        }\r
+        if (j < maxw)\r
+        {\r
+            sycc_to_rgb(offset, upb, *y, *cb, *cr, r, g, b);\r
+            ++y; ++r; ++g; ++b;\r
+            sycc_to_rgb(offset, upb, *ny, *cb, *cr, nr, ng, nb);\r
+            ++ny; ++nr; ++ng; ++nb; ++cb; ++cr;\r
+        }\r
+        y += maxw; r += maxw; g += maxw; b += maxw;\r
+    }\r
+    if (i < maxh)\r
+    {\r
+        for (j = 0; (OPJ_UINT32)j < (maxw & ~(OPJ_UINT32)1); j += 2)\r
+        {\r
+            sycc_to_rgb(offset, upb, *y, *cb, *cr, r, g, b);\r
+            ++y; ++r; ++g; ++b;\r
+            sycc_to_rgb(offset, upb, *y, *cb, *cr, r, g, b);\r
+            ++y; ++r; ++g; ++b; ++cb; ++cr;\r
+        }\r
+        if (j < maxw)\r
+        {\r
+            sycc_to_rgb(offset, upb, *y, *cb, *cr, r, g, b);\r
+        }\r
+    }\r
+
     FX_Free(img->comps[0].data);
     img->comps[0].data = d0;
     FX_Free(img->comps[1].data);