<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>75861</bug_id>
          
          <creation_ts>2012-01-09 08:56:20 -0800</creation_ts>
          <short_desc>[Chromium] JPEG RGB swizzling order should match platform pixel format</short_desc>
          <delta_ts>2012-02-10 14:40:27 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Images</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>59670</blocked>
    
    <blocked>78323</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Sami Kyostila">skyostil</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>hbono</cc>
    
    <cc>kbr</cc>
    
    <cc>noel.gordon</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>532225</commentid>
    <comment_count>0</comment_count>
    <who name="Sami Kyostila">skyostil</who>
    <bug_when>2012-01-09 08:56:20 -0800</bug_when>
    <thetext>The fix for bug 59670 added a fast path for performing channel swizzling and JPEG decoding in a single step. The channel swizzling order (JCS_EXT_RGBX) is hard coded and may not match the platform&apos;s pixel format.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>532232</commentid>
    <comment_count>1</comment_count>
      <attachid>121675</attachid>
    <who name="Sami Kyostila">skyostil</who>
    <bug_when>2012-01-09 09:05:58 -0800</bug_when>
    <thetext>Created attachment 121675
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>532260</commentid>
    <comment_count>2</comment_count>
      <attachid>121675</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2012-01-09 10:09:10 -0800</bug_when>
    <thetext>Comment on attachment 121675
Patch

Looks fine as long as it&apos;s been tested.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>532274</commentid>
    <comment_count>3</comment_count>
      <attachid>121675</attachid>
    <who name="Sami Kyostila">skyostil</who>
    <bug_when>2012-01-09 10:23:51 -0800</bug_when>
    <thetext>Comment on attachment 121675
Patch

Thanks. I&apos;ve tested this on a platform where the channel ordering was reversed to what this code was previously expecting.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>532385</commentid>
    <comment_count>4</comment_count>
      <attachid>121675</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-09 11:46:46 -0800</bug_when>
    <thetext>Comment on attachment 121675
Patch

Clearing flags on attachment: 121675

Committed r104472: &lt;http://trac.webkit.org/changeset/104472&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>532386</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-09 11:46:50 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>532654</commentid>
    <comment_count>6</comment_count>
    <who name="noel gordon">noel.gordon</who>
    <bug_when>2012-01-09 16:46:08 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Thanks. I&apos;ve tested this on a platform where the channel ordering was reversed to what this code was previously expecting.

What/where is this skia-using little-endian platform with pixels in reverse order?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>532928</commentid>
    <comment_count>7</comment_count>
    <who name="Sami Kyostila">skyostil</who>
    <bug_when>2012-01-10 03:12:50 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; (In reply to comment #3)
&gt; &gt; Thanks. I&apos;ve tested this on a platform where the channel ordering was reversed to what this code was previously expecting.
&gt; 
&gt; What/where is this skia-using little-endian platform with pixels in reverse order?

This is the case on Android.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>532973</commentid>
    <comment_count>8</comment_count>
    <who name="noel gordon">noel.gordon</who>
    <bug_when>2012-01-10 05:00:24 -0800</bug_when>
    <thetext>IC.  The Android port seems to be is covered by bug 66687 reading the webkit-dev threads on the subject

  https://lists.webkit.org/pipermail/webkit-dev/2011-December/018923.html
  https://lists.webkit.org/pipermail/webkit-dev/2011-August/017738.html

You have a builder http://build.webkit.org/builders/Chromium%20Android%20Release it seems, but nothing running the webkit tests.

The build needs the Android NDK according to the instructions.  The NDK contains Android&apos;s image encoder/decoder systems and that includes jpeg.  Your change suggests Android is now using libjpeg-turbo and the public WebKit jpeg image decoder, is that correct?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>533670</commentid>
    <comment_count>9</comment_count>
    <who name="noel gordon">noel.gordon</who>
    <bug_when>2012-01-10 23:11:05 -0800</bug_when>
    <thetext>Off-line Sami answered yes, libjpeg-turbo is being used. Per https://bugs.webkit.org/show_bug.cgi?id=59670#c10, the &quot;skia -&gt; little-endian -&gt; BGRA pixel skia bitmaps&quot; assumption runs deep in chromium, so my concern is webkit test failures due to pixel endianness issues.  I suggested he watch the following WebKit/LayoutTests tests:

  fast/images/*
  fast/canvas/canvas-toDataURL*
  fast/canvas/toDataURL*
  canvas/philip/tests/2d.imageData.put.unchanged.html
  canvas/philip/tests/toDataURL*
  tables/mozilla/bugs/bug29314.html
  tables/mozilla/bugs/bug13169.html
  tables/mozilla/bugs/bug10565.html
  tables/mozilla/bugs/bug11026.html
  fast/repaint/backgroundSizeRepaint.html
  fast/repaint/block-layout-inline-children-replaced.html
  fast/repaint/clipped-relative.html
  fast/repaint/selected-replaced.html
  tables/mozilla/bugs/bug12908-1.html</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>121675</attachid>
            <date>2012-01-09 09:05:58 -0800</date>
            <delta_ts>2012-01-09 11:46:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-75861-20120109170556.patch</filename>
            <type>text/plain</type>
            <size>1772</size>
            <attacher name="Sami Kyostila">skyostil</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA0NDQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzhhOWU2NzQzNWJkM2Uz
MWMxYjhjMzk0NDdiZmE3MGI1Mzg3ZDI1Yi4uMmJiOWEwZmQ1MjdkMmQ2NTdhZGQ1ODYzZTdmMzIy
ZGM5YmE2ZDgyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEyLTAxLTA5ICBTYW1p
IEt5b3N0aWxhICA8c2t5b3N0aWxAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtDaHJvbWl1bV0g
SlBFRyBSR0Igc3dpenpsaW5nIG9yZGVyIHNob3VsZCBtYXRjaCBwbGF0Zm9ybSBwaXhlbCBmb3Jt
YXQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc1ODYx
CisKKyAgICAgICAgQ2hvb3NlIGJldHdlZW4gSkNTX0VYVF9CR1JYIGFuZCBKQ1NfRVhUX1JHQlgg
Y2hhbm5lbCBzd2l6emxpbmcKKyAgICAgICAgYmFzZWQgb24gdGhlIGNvbmZpZ3VyZWQgU2tpYSAz
Mi1iaXQgcGl4ZWwgZm9ybWF0LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvanBlZy9KUEVHSW1hZ2VEZWNv
ZGVyLmNwcDoKKyAgICAgICAgKHJnYk91dHB1dENvbG9yU3BhY2UpOgorCiAyMDEyLTAxLTA5ICBO
bydhbSBSb3NlbnRoYWwgIDxub2FtLnJvc2VudGhhbEBub2tpYS5jb20+CiAKICAgICAgICAgW1Rl
eG1hcF0gTW92ZSBzdXJmYWNlIG1hbmFnZW1lbnQgZnJvbSBUZXh0dXJlTWFwcGVyTm9kZSB0byBU
ZXh0dXJlTWFwcGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1k
ZWNvZGVycy9qcGVnL0pQRUdJbWFnZURlY29kZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vaW1hZ2UtZGVjb2RlcnMvanBlZy9KUEVHSW1hZ2VEZWNvZGVyLmNwcAppbmRleCA2ZGY0NzMz
OWYzZWE2YzBhMTY1YTdlMzI5ODJhN2Q0N2IxMTMxZDQ2Li4wY2JkZDA0NTNjNGRiMmVhZjA4MDc1
OWUyZTZhOWRlYzRiMTBjNTIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9p
bWFnZS1kZWNvZGVycy9qcGVnL0pQRUdJbWFnZURlY29kZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2pwZWcvSlBFR0ltYWdlRGVjb2Rlci5jcHAKQEAg
LTc1LDcgKzc1LDExIEBAIGV4dGVybiAiQyIgewogCiAjaWYgZGVmaW5lZChKQ1NfRVhURU5TSU9O
UykgJiYgQVNTVU1FX0xJVFRMRV9FTkRJQU4KICNkZWZpbmUgVFVSQk9fSlBFR19SR0JfU1dJWlpM
RQorI2lmIFVTRShTS0lBKSAmJiAoIVNLX1IzMl9TSElGVCAmJiBTS19HMzJfU0hJRlQgPT0gOCAm
JiBTS19CMzJfU0hJRlQgPT0gMTYpCitpbmxpbmUgSl9DT0xPUl9TUEFDRSByZ2JPdXRwdXRDb2xv
clNwYWNlKCkgeyByZXR1cm4gSkNTX0VYVF9SR0JYOyB9CisjZWxzZQogaW5saW5lIEpfQ09MT1Jf
U1BBQ0UgcmdiT3V0cHV0Q29sb3JTcGFjZSgpIHsgcmV0dXJuIEpDU19FWFRfQkdSWDsgfQorI2Vu
ZGlmCiBpbmxpbmUgYm9vbCB0dXJib1N3aXp6bGVkKEpfQ09MT1JfU1BBQ0UgY29sb3JTcGFjZSkg
eyByZXR1cm4gY29sb3JTcGFjZSA9PSByZ2JPdXRwdXRDb2xvclNwYWNlKCk7IH0KICNlbHNlCiBp
bmxpbmUgSl9DT0xPUl9TUEFDRSByZ2JPdXRwdXRDb2xvclNwYWNlKCkgeyByZXR1cm4gSkNTX1JH
QjsgfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>