<?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>98878</bug_id>
          
          <creation_ts>2012-10-10 02:43:02 -0700</creation_ts>
          <short_desc>Fix JPEG turbo decoding failure when IMAGE_DECODER_DOWN_SAMPLING is enabled</short_desc>
          <delta_ts>2012-12-02 22:54:23 -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>PC</rep_platform>
          <op_sys>Linux</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>103749</blocked>
    
    <blocked>103856</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Jaehun Lim">ljaehun.lim</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>kbr</cc>
    
    <cc>noel.gordon</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yong.li.webkit</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>738761</commentid>
    <comment_count>0</comment_count>
    <who name="Jaehun Lim">ljaehun.lim</who>
    <bug_when>2012-10-10 02:43:02 -0700</bug_when>
    <thetext>When using libjpeg-turbo and enabling IMAGE_DECODER_DOWN_SAMPLING,
JPEG decoding failed because of no support for JCS_EXT_RGBA, JCS_EXT_BGRA.
Set RGBA values when color space is JCS_EXT_RGBA or JCS_EXT_BGRA.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>738762</commentid>
    <comment_count>1</comment_count>
      <attachid>167962</attachid>
    <who name="Jaehun Lim">ljaehun.lim</who>
    <bug_when>2012-10-10 02:43:37 -0700</bug_when>
    <thetext>Created attachment 167962
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>738763</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-10 02:45:08 -0700</bug_when>
    <thetext>Attachment 167962 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1
Source/WebCore/ChangeLog:1:  ChangeLog entry has no bug number  [changelog/bugnumber] [5]
Total errors found: 1 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>738764</commentid>
    <comment_count>3</comment_count>
      <attachid>167963</attachid>
    <who name="Jaehun Lim">ljaehun.lim</who>
    <bug_when>2012-10-10 02:46:46 -0700</bug_when>
    <thetext>Created attachment 167963
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739126</commentid>
    <comment_count>4</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2012-10-10 10:59:07 -0700</bug_when>
    <thetext>This looks fine, but I&apos;d like Noel to do an unofficial review before r+&apos;ing it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739945</commentid>
    <comment_count>5</comment_count>
    <who name="noel gordon">noel.gordon</who>
    <bug_when>2012-10-11 07:21:06 -0700</bug_when>
    <thetext>Looks sane.  Sadly no tests exist for the IMAGE_DECODER_DOWN_SAMPLING enable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>740050</commentid>
    <comment_count>6</comment_count>
      <attachid>167963</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2012-10-11 09:33:36 -0700</bug_when>
    <thetext>Comment on attachment 167963
Patch

That&apos;s unfortunate, but I assume having this work is better than not. r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>740068</commentid>
    <comment_count>7</comment_count>
      <attachid>167963</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-11 09:45:33 -0700</bug_when>
    <thetext>Comment on attachment 167963
Patch

Clearing flags on attachment: 167963

Committed r131075: &lt;http://trac.webkit.org/changeset/131075&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>740069</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-11 09:45:36 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>778491</commentid>
    <comment_count>9</comment_count>
    <who name="noel gordon">noel.gordon</who>
    <bug_when>2012-11-28 16:45:40 -0800</bug_when>
    <thetext>Someone asked me a question about this.  @jaehun - should the #if test be as follows?

   #if ENABLE(IMAGE_DECODER_DOWN_SAMPLING) &amp;&amp; defined(TURBO_JPEG_RGB_SWIZZLE)

Alternatively, we could remove all this and ensure that ports that use IMAGE_DECODER_DOWN_SAMPLING can use libjoeg-turbo correctly.   TURBO_JPEG_RGB_SWIZZLE should not be taken to mean libjpeg-turbo and I think we should fix that.  Thoughts?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>778554</commentid>
    <comment_count>10</comment_count>
    <who name="Jaehun Lim">ljaehun.lim</who>
    <bug_when>2012-11-28 17:50:37 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; Someone asked me a question about this.  @jaehun - should the #if test be as follows?
&gt; 
&gt;    #if ENABLE(IMAGE_DECODER_DOWN_SAMPLING) &amp;&amp; defined(TURBO_JPEG_RGB_SWIZZLE)
&gt;
I considered the same #if statement at first. I have no objection to change #if statement.

&gt; Alternatively, we could remove all this and ensure that ports that use IMAGE_DECODER_DOWN_SAMPLING can use libjoeg-turbo correctly.   TURBO_JPEG_RGB_SWIZZLE should not be taken to mean libjpeg-turbo and I think we should fix that.  Thoughts?

I perfectly agree with you.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>780128</commentid>
    <comment_count>11</comment_count>
    <who name="Yong Li">yong.li.webkit</who>
    <bug_when>2012-11-30 08:09:39 -0800</bug_when>
    <thetext>Just noticed this fix. Nice job. For those images are not scaled when DOWNSAMPLE is enabled, it seems that we can still use the swizzling path?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>780224</commentid>
    <comment_count>12</comment_count>
    <who name="Yong Li">yong.li.webkit</who>
    <bug_when>2012-11-30 10:46:15 -0800</bug_when>
    <thetext>(In reply to comment #11)
&gt; Just noticed this fix. Nice job. For those images are not scaled when DOWNSAMPLE is enabled, it seems that we can still use the swizzling path?

Bug 103749 created for this, and patch is uploaded</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>781129</commentid>
    <comment_count>13</comment_count>
    <who name="noel gordon">noel.gordon</who>
    <bug_when>2012-12-02 22:13:40 -0800</bug_when>
    <thetext>I have reviewed that patch, looks good.

Second thing to do is to handle the scaled case better per comment 10.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>167962</attachid>
            <date>2012-10-10 02:43:37 -0700</date>
            <delta_ts>2012-10-10 02:46:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>2078</size>
            <attacher name="Jaehun Lim">ljaehun.lim</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAxNWY2ZWZlLi4zOTE4MWI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkg
QEAKKzIwMTItMTAtMTAgIEphZWh1biBMaW0gIDxsamFlaHVuLmxpbUBzYW1zdW5nLmNvbT4KKwor
ICAgICAgICBGaXggSlBFRyBkZWNvZGluZyBmYWl1cmUgd2hlbiBJTUFHRV9ERUNPREVSX0RPV05f
U0FNUExJTkcgaXMgZW5hYmxlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgV2hlbiB1c2luZyBsaWJqcGVnLXR1cmJvIGFuZCBlbmFibGluZyBJTUFHRV9ERUNPREVS
X0RPV05fU0FNUExJTkcsCisgICAgICAgIEpQRUcgZGVjb2RpbmcgZmFpbGVkIGJlY2F1c2Ugb2Yg
bm8gc3VwcG9ydCBmb3IgSkNTX0VYVF9SR0JBLCBKQ1NfRVhUX0JHUkEuCisgICAgICAgIFNldCBS
R0JBIHZhbHVlcyB3aGVuIGNvbG9yIHNwYWNlIGlzIEpDU19FWFRfUkdCQSBvciBKQ1NfRVhUX0JH
UkEuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLgorCisgICAgICAgICogcGxhdGZvcm0vaW1hZ2Ut
ZGVjb2RlcnMvanBlZy9KUEVHSW1hZ2VEZWNvZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpQ
RUdJbWFnZURlY29kZXI6Om91dHB1dFNjYW5saW5lcyk6CisKIDIwMTItMTAtMDkgIEVucmljYSBD
YXN1Y2NpICA8ZW5yaWNhQGFwcGxlLmNvbT4KIAogICAgICAgICBPbmx5IG1lYXN1cmUgdGV4dCBv
bmNlIGluc3RlYWQgb2YgdHdpY2Ugd2hlbiBwZXJmb3JtaW5nIGxpbmUgbGF5b3V0LgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvanBlZy9KUEVHSW1h
Z2VEZWNvZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2pw
ZWcvSlBFR0ltYWdlRGVjb2Rlci5jcHAKaW5kZXggMGU0YjUzNS4uNTI1ZjNhNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvanBlZy9KUEVHSW1hZ2VE
ZWNvZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9q
cGVnL0pQRUdJbWFnZURlY29kZXIuY3BwCkBAIC02MTIsNiArNjEyLDEyIEBAIGJvb2wgSlBFR0lt
YWdlRGVjb2Rlcjo6b3V0cHV0U2NhbmxpbmVzKCkKICAgICAgICAgICAgIEpTQU1QTEUqIGpzYW1w
bGUgPSAqc2FtcGxlcyArIChtX3NjYWxlZCA/IG1fc2NhbGVkQ29sdW1uc1t4XSA6IHgpICogKChp
bmZvLT5vdXRfY29sb3Jfc3BhY2UgPT0gSkNTX1JHQikgPyAzIDogNCk7CiAgICAgICAgICAgICBp
ZiAoaW5mby0+b3V0X2NvbG9yX3NwYWNlID09IEpDU19SR0IpCiAgICAgICAgICAgICAgICAgYnVm
ZmVyLnNldFJHQkEoeCwgZGVzdFksIGpzYW1wbGVbMF0sIGpzYW1wbGVbMV0sIGpzYW1wbGVbMl0s
IDB4RkYpOworI2lmIGRlZmluZWQoVFVSQk9fSlBFR19SR0JfU1dJWlpMRSkKKyAgICAgICAgICAg
IGVsc2UgaWYgKGluZm8tPm91dF9jb2xvcl9zcGFjZSA9PSBKQ1NfRVhUX1JHQkEpCisgICAgICAg
ICAgICAgICAgYnVmZmVyLnNldFJHQkEoeCwgZGVzdFksIGpzYW1wbGVbMF0sIGpzYW1wbGVbMV0s
IGpzYW1wbGVbMl0sIDB4RkYpOworICAgICAgICAgICAgZWxzZSBpZiAoaW5mby0+b3V0X2NvbG9y
X3NwYWNlID09IEpDU19FWFRfQkdSQSkKKyAgICAgICAgICAgICAgICBidWZmZXIuc2V0UkdCQSh4
LCBkZXN0WSwganNhbXBsZVsyXSwganNhbXBsZVsxXSwganNhbXBsZVswXSwgMHhGRik7CisjZW5k
aWYKICAgICAgICAgICAgIGVsc2UgaWYgKGluZm8tPm91dF9jb2xvcl9zcGFjZSA9PSBKQ1NfQ01Z
SykgewogICAgICAgICAgICAgICAgIC8vIFNvdXJjZSBpcyAnSW52ZXJ0ZWQgQ01ZSycsIG91dHB1
dCBpcyBSR0IuCiAgICAgICAgICAgICAgICAgLy8gU2VlOiBodHRwOi8vd3d3LmVhc3lyZ2IuY29t
L21hdGgucGhwP01BVEg9TTEyI3RleHQxMgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>167963</attachid>
            <date>2012-10-10 02:46:46 -0700</date>
            <delta_ts>2012-10-11 09:45:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>2083</size>
            <attacher name="Jaehun Lim">ljaehun.lim</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAxNWY2ZWZlLi4yNWEwYmIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkg
QEAKKzIwMTItMTAtMTAgIEphZWh1biBMaW0gIDxsamFlaHVuLmxpbUBzYW1zdW5nLmNvbT4KKwor
ICAgICAgICBGaXggSlBFRyBkZWNvZGluZyBmYWl1cmUgd2hlbiBJTUFHRV9ERUNPREVSX0RPV05f
U0FNUExJTkcgaXMgZW5hYmxlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9OTg4NzgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBXaGVuIHVzaW5nIGxpYmpwZWctdHVyYm8gYW5kIGVuYWJsaW5nIElNQUdFX0RF
Q09ERVJfRE9XTl9TQU1QTElORywKKyAgICAgICAgSlBFRyBkZWNvZGluZyBmYWlsZWQgYmVjYXVz
ZSBvZiBubyBzdXBwb3J0IGZvciBKQ1NfRVhUX1JHQkEsIEpDU19FWFRfQkdSQS4KKyAgICAgICAg
U2V0IFJHQkEgdmFsdWVzIHdoZW4gY29sb3Igc3BhY2UgaXMgSkNTX0VYVF9SR0JBIG9yIEpDU19F
WFRfQkdSQS4KKworICAgICAgICBObyBuZXcgdGVzdHMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9p
bWFnZS1kZWNvZGVycy9qcGVnL0pQRUdJbWFnZURlY29kZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SlBFR0ltYWdlRGVjb2Rlcjo6b3V0cHV0U2NhbmxpbmVzKToKKwogMjAxMi0xMC0wOSAgRW5y
aWNhIENhc3VjY2kgIDxlbnJpY2FAYXBwbGUuY29tPgogCiAgICAgICAgIE9ubHkgbWVhc3VyZSB0
ZXh0IG9uY2UgaW5zdGVhZCBvZiB0d2ljZSB3aGVuIHBlcmZvcm1pbmcgbGluZSBsYXlvdXQuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVnL0pQ
RUdJbWFnZURlY29kZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2Rl
cnMvanBlZy9KUEVHSW1hZ2VEZWNvZGVyLmNwcAppbmRleCAwZTRiNTM1Li41MjVmM2E2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVnL0pQRUdJ
bWFnZURlY29kZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29k
ZXJzL2pwZWcvSlBFR0ltYWdlRGVjb2Rlci5jcHAKQEAgLTYxMiw2ICs2MTIsMTIgQEAgYm9vbCBK
UEVHSW1hZ2VEZWNvZGVyOjpvdXRwdXRTY2FubGluZXMoKQogICAgICAgICAgICAgSlNBTVBMRSog
anNhbXBsZSA9ICpzYW1wbGVzICsgKG1fc2NhbGVkID8gbV9zY2FsZWRDb2x1bW5zW3hdIDogeCkg
KiAoKGluZm8tPm91dF9jb2xvcl9zcGFjZSA9PSBKQ1NfUkdCKSA/IDMgOiA0KTsKICAgICAgICAg
ICAgIGlmIChpbmZvLT5vdXRfY29sb3Jfc3BhY2UgPT0gSkNTX1JHQikKICAgICAgICAgICAgICAg
ICBidWZmZXIuc2V0UkdCQSh4LCBkZXN0WSwganNhbXBsZVswXSwganNhbXBsZVsxXSwganNhbXBs
ZVsyXSwgMHhGRik7CisjaWYgZGVmaW5lZChUVVJCT19KUEVHX1JHQl9TV0laWkxFKQorICAgICAg
ICAgICAgZWxzZSBpZiAoaW5mby0+b3V0X2NvbG9yX3NwYWNlID09IEpDU19FWFRfUkdCQSkKKyAg
ICAgICAgICAgICAgICBidWZmZXIuc2V0UkdCQSh4LCBkZXN0WSwganNhbXBsZVswXSwganNhbXBs
ZVsxXSwganNhbXBsZVsyXSwgMHhGRik7CisgICAgICAgICAgICBlbHNlIGlmIChpbmZvLT5vdXRf
Y29sb3Jfc3BhY2UgPT0gSkNTX0VYVF9CR1JBKQorICAgICAgICAgICAgICAgIGJ1ZmZlci5zZXRS
R0JBKHgsIGRlc3RZLCBqc2FtcGxlWzJdLCBqc2FtcGxlWzFdLCBqc2FtcGxlWzBdLCAweEZGKTsK
KyNlbmRpZgogICAgICAgICAgICAgZWxzZSBpZiAoaW5mby0+b3V0X2NvbG9yX3NwYWNlID09IEpD
U19DTVlLKSB7CiAgICAgICAgICAgICAgICAgLy8gU291cmNlIGlzICdJbnZlcnRlZCBDTVlLJywg
b3V0cHV0IGlzIFJHQi4KICAgICAgICAgICAgICAgICAvLyBTZWU6IGh0dHA6Ly93d3cuZWFzeXJn
Yi5jb20vbWF0aC5waHA/TUFUSD1NMTIjdGV4dDEyCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>