<?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>35065</bug_id>
          
          <creation_ts>2010-02-17 17:56:50 -0800</creation_ts>
          <short_desc>Delay between page loading and animated GIF playing</short_desc>
          <delta_ts>2010-02-18 11:03:09 -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>OS X 10.6</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://i.imgur.com/Zgc5p.gif</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>35115</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mark Rowe (bdash)">mrowe</reporter>
          <assigned_to name="Peter Kasting">pkasting</assigned_to>
          <cc>mrowe</cc>
    
    <cc>pkasting</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>191331</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2010-02-17 17:56:50 -0800</bug_when>
    <thetext>When doing an uncached load of &lt;http://i.imgur.com/Zgc5p.gif&gt; there is a delay of around 5 seconds after the image finishes loading before the animation starts running.

&lt;rdar://problem/7109548&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191335</commentid>
    <comment_count>1</comment_count>
      <attachid>48955</attachid>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2010-02-17 18:06:05 -0800</bug_when>
    <thetext>Created attachment 48955
Patch v1

This appears to address the issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191336</commentid>
    <comment_count>2</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2010-02-17 18:08:00 -0800</bug_when>
    <thetext>CCing Mr Peter Kasting as he did a lot of work on this code back in the day.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191343</commentid>
    <comment_count>3</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2010-02-17 18:19:52 -0800</bug_when>
    <thetext>Fixed in r54919.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191358</commentid>
    <comment_count>4</comment_count>
    <who name="Peter Kasting">pkasting</who>
    <bug_when>2010-02-17 19:19:48 -0800</bug_when>
    <thetext>The old code was definitely way wrong.  Thanks for fixing!

The new patch has a small bug: the first time through, when the desired frame start time is zero, we should set the desired start time immediately.  Otherwise the GIF start lags by the amount of time needed to decode the second frame.  This is minor, but can make a difference on sites like YTMND.  I&apos;ll write a patch for this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191359</commentid>
    <comment_count>5</comment_count>
      <attachid>48955</attachid>
    <who name="Peter Kasting">pkasting</who>
    <bug_when>2010-02-17 19:20:13 -0800</bug_when>
    <thetext>Comment on attachment 48955
Patch v1

Clearing flags on this patch, as it has landed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191384</commentid>
    <comment_count>6</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2010-02-17 21:07:39 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; The old code was definitely way wrong.  Thanks for fixing!
&gt; 
&gt; The new patch has a small bug: the first time through, when the desired frame
&gt; start time is zero, we should set the desired start time immediately. 
&gt; Otherwise the GIF start lags by the amount of time needed to decode the second
&gt; frame.  This is minor, but can make a difference on sites like YTMND.  I&apos;ll
&gt; write a patch for this.

Please file a new bug.  That’s clearly a different issue than what this bug was about, so repurposing it for that doesn’t seem sensible.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>48955</attachid>
            <date>2010-02-17 18:06:05 -0800</date>
            <delta_ts>2010-02-17 19:20:13 -0800</delta_ts>
            <desc>Patch v1</desc>
            <filename>0001-Bug-35065-Delay-between-page-loading-and-animated-GI.patch</filename>
            <type>text/plain</type>
            <size>4810</size>
            <attacher name="Mark Rowe (bdash)">mrowe</attacher>
            
              <data encoding="base64">RnJvbSBlOGNkYWI0Y2ZjZjRlMWIxMDQyNzIzZDI2MDY5YmIzNjc3ZTY4NjdmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJrIFJvd2UgPG1yb3dlQGFwcGxlLmNvbT4KRGF0ZTogV2Vk
LCAxNyBGZWIgMjAxMCAxODowNDo1NSAtMDgwMApTdWJqZWN0OiBbUEFUQ0hdIEJ1ZyAzNTA2NTog
RGVsYXkgYmV0d2VlbiBwYWdlIGxvYWRpbmcgYW5kIGFuaW1hdGVkIEdJRiBwbGF5aW5nCiA8aHR0
cDovL3dlYmtpdC5vcmcvYi8zNTA2NT4gLyA8cmRhcjovL3Byb2JsZW0vNzEwOTU0OD4KClJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKQml0bWFwSW1hZ2U6OnN0YXJ0QW5pbWF0aW9uIHdhcyBh
ZGRpbmcgdGhlIGN1cnJlbnQgZnJhbWUgZHVyYXRpb24gdG8gdGhlIGRlc2lyZWQgc3RhcnQgdGlt
ZQpvZiB0aGUgZnJhbWUgZm9yIGV2ZXJ5IHRpbWUgaXQgd2FzIGNhbGxlZC4gIElmIHRoZSBmdW5j
dGlvbiB0aGVuIGJhaWxlZCBvdXQgZHVlIHRvIG5vdCBoYXZpbmcKc3VmZmljaWVudCBkYXRhIHRv
IHJlbmRlciB0aGUgZnJhbWUsIHRoaXMgd291bGQgbGVhZCB0byB0aGUgZGVzaXJlZCBzdGFydCB0
aW1lIG9mIHRoZSBmcmFtZQpiZWluZyBwdXNoZWQgb3V0IG11bHRpcGxlIHRpbWVzLiAgT24gYW4g
YW5pbWF0ZWQgR0lGIHRoYXQgdG9vayBtdWxpdHBsZSBzZWNvbmRzIHRvIGxvYWQgdGhpcwpjb3Vs
ZCBoYXBwZW4gbWFueSB0aW1lcyBmb3IgYSBzaW5nbGUgZnJhbWUsIHJlc3VsdGluZyBpbiB0aGUg
c3RhcnQgdGltZSBvZiB0aGUgc2Vjb25kIGZyYW1lCm9mIHRoZSBhbmltYXRpb24gYmVpbmcgcHVz
aGVkIG91dCBieSBhcyBtdWNoIGFzIGZpdmUgc2Vjb25kcy4KCiogcGxhdGZvcm0vZ3JhcGhpY3Mv
Qml0bWFwSW1hZ2UuY3BwOgooV2ViQ29yZTo6Qml0bWFwSW1hZ2U6OnN0YXJ0QW5pbWF0aW9uKTog
Q2hhbmdlIHRoZSBvcmRlciBvZiB0aGUgY29kZSBzbGlnaHRseSBzbyB0aGF0IHRoZQpkZXNpcmVk
IHN0YXJ0IHRpbWUgaXMgb25seSB1cGRhdGVkIGFmdGVyIGRldGVybWluaW5nIHRoYXQgd2UgaGF2
ZSBzdWZmaWNpZW50IGRhdGEgdG8gaGFuZGxlCnRoZSBuZXh0IGZyYW1lLgotLS0KIFdlYkNvcmUv
Q2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxOSArKysrKysrKysrKysrKysr
KysrCiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0JpdG1hcEltYWdlLmNwcCB8ICAgMjQgKysr
KysrKysrKysrLS0tLS0tLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDMxIGluc2VydGlvbnMoKyks
IDEyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29y
ZS9DaGFuZ2VMb2cKaW5kZXggNzUxY2I2ZC4uMDU0MThhMyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9D
aGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAxMC0w
Mi0xNyAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEJ1ZyAzNTA2NTogRGVsYXkgYmV0d2VlbiBwYWdl
IGxvYWRpbmcgYW5kIGFuaW1hdGVkIEdJRiBwbGF5aW5nCisgICAgICAgIDxodHRwOi8vd2Via2l0
Lm9yZy9iLzM1MDY1PiAvIDxyZGFyOi8vcHJvYmxlbS83MTA5NTQ4PgorCisgICAgICAgIEJpdG1h
cEltYWdlOjpzdGFydEFuaW1hdGlvbiB3YXMgYWRkaW5nIHRoZSBjdXJyZW50IGZyYW1lIGR1cmF0
aW9uIHRvIHRoZSBkZXNpcmVkIHN0YXJ0IHRpbWUKKyAgICAgICAgb2YgdGhlIGZyYW1lIGZvciBl
dmVyeSB0aW1lIGl0IHdhcyBjYWxsZWQuICBJZiB0aGUgZnVuY3Rpb24gdGhlbiBiYWlsZWQgb3V0
IGR1ZSB0byBub3QgaGF2aW5nCisgICAgICAgIHN1ZmZpY2llbnQgZGF0YSB0byByZW5kZXIgdGhl
IGZyYW1lLCB0aGlzIHdvdWxkIGxlYWQgdG8gdGhlIGRlc2lyZWQgc3RhcnQgdGltZSBvZiB0aGUg
ZnJhbWUKKyAgICAgICAgYmVpbmcgcHVzaGVkIG91dCBtdWx0aXBsZSB0aW1lcy4gIE9uIGFuIGFu
aW1hdGVkIEdJRiB0aGF0IHRvb2sgbXVsaXRwbGUgc2Vjb25kcyB0byBsb2FkIHRoaXMKKyAgICAg
ICAgY291bGQgaGFwcGVuIG1hbnkgdGltZXMgZm9yIGEgc2luZ2xlIGZyYW1lLCByZXN1bHRpbmcg
aW4gdGhlIHN0YXJ0IHRpbWUgb2YgdGhlIHNlY29uZCBmcmFtZQorICAgICAgICBvZiB0aGUgYW5p
bWF0aW9uIGJlaW5nIHB1c2hlZCBvdXQgYnkgYXMgbXVjaCBhcyBmaXZlIHNlY29uZHMuCisKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9CaXRtYXBJbWFnZS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpCaXRtYXBJbWFnZTo6c3RhcnRBbmltYXRpb24pOiBDaGFuZ2UgdGhlIG9yZGVyIG9mIHRo
ZSBjb2RlIHNsaWdodGx5IHNvIHRoYXQgdGhlCisgICAgICAgIGRlc2lyZWQgc3RhcnQgdGltZSBp
cyBvbmx5IHVwZGF0ZWQgYWZ0ZXIgZGV0ZXJtaW5pbmcgdGhhdCB3ZSBoYXZlIHN1ZmZpY2llbnQg
ZGF0YSB0byBoYW5kbGUKKyAgICAgICAgdGhlIG5leHQgZnJhbWUuCisKIDIwMTAtMDItMTcgIERp
cmsgU2NodWx6ZSAgPGtyaXRAd2Via2l0Lm9yZz4KIAogICAgICAgICBSb2xsaW5nIG91dCByNTQ5
MDkuIEJyZWFrcyBTTCBhbmQgV2luLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9CaXRtYXBJbWFnZS5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0JpdG1hcElt
YWdlLmNwcAppbmRleCAzMmFlZmM5Li4yYjljNjEyIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0JpdG1hcEltYWdlLmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL0JpdG1hcEltYWdlLmNwcApAQCAtMjY2LDYgKzI2NiwxOCBAQCB2b2lkIEJpdG1hcEltYWdl
OjpzdGFydEFuaW1hdGlvbihib29sIGNhdGNoVXBJZk5lY2Vzc2FyeSkKICAgICBpZiAobV9mcmFt
ZVRpbWVyIHx8ICFzaG91bGRBbmltYXRlKCkgfHwgZnJhbWVDb3VudCgpIDw9IDEpCiAgICAgICAg
IHJldHVybjsKIAorICAgIC8vIERvbid0IGFkdmFuY2UgdGhlIGFuaW1hdGlvbiB0byBhbiBpbmNv
bXBsZXRlIGZyYW1lLgorICAgIHNpemVfdCBuZXh0RnJhbWUgPSAobV9jdXJyZW50RnJhbWUgKyAx
KSAlIGZyYW1lQ291bnQoKTsKKyAgICBpZiAoIW1fYWxsRGF0YVJlY2VpdmVkICYmICFmcmFtZUlz
Q29tcGxldGVBdEluZGV4KG5leHRGcmFtZSkpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIERv
bid0IGFkdmFuY2UgcGFzdCB0aGUgbGFzdCBmcmFtZSBpZiB3ZSBoYXZlbid0IGRlY29kZWQgdGhl
IHdob2xlIGltYWdlCisgICAgLy8geWV0IGFuZCBvdXIgcmVwZXRpdGlvbiBjb3VudCBpcyBwb3Rl
bnRpYWxseSB1bnNldC4gIFRoZSByZXBldGl0aW9uIGNvdW50CisgICAgLy8gaW4gYSBHSUYgY2Fu
IHBvdGVudGlhbGx5IGNvbWUgYWZ0ZXIgYWxsIHRoZSByZXN0IG9mIHRoZSBpbWFnZSBkYXRhLCBz
bworICAgIC8vIHdhaXQgb24gaXQuCisgICAgaWYgKCFtX2FsbERhdGFSZWNlaXZlZCAmJiByZXBl
dGl0aW9uQ291bnQoZmFsc2UpID09IGNBbmltYXRpb25Mb29wT25jZSAmJiBtX2N1cnJlbnRGcmFt
ZSA+PSAoZnJhbWVDb3VudCgpIC0gMSkpCisgICAgICAgIHJldHVybjsKKwogICAgIC8vIERldGVy
bWluZSB0aW1lIGZvciBuZXh0IGZyYW1lIHRvIHN0YXJ0LiAgQnkgaWdub3JpbmcgcGFpbnQgYW5k
IHRpbWVyIGxhZwogICAgIC8vIGluIHRoaXMgY2FsY3VsYXRpb24sIHdlIG1ha2UgdGhlIGFuaW1h
dGlvbiBhcHBlYXIgdG8gcnVuIGF0IGl0cyBkZXNpcmVkCiAgICAgLy8gcmF0ZSByZWdhcmRsZXNz
IG9mIGhvdyBmYXN0IGl0J3MgYmVpbmcgcmVwYWludGVkLgpAQCAtMjg0LDE4ICsyOTYsNiBAQCB2
b2lkIEJpdG1hcEltYWdlOjpzdGFydEFuaW1hdGlvbihib29sIGNhdGNoVXBJZk5lY2Vzc2FyeSkK
ICAgICAgICAgICAgIG1fZGVzaXJlZEZyYW1lU3RhcnRUaW1lID0gdGltZSArIGN1cnJlbnREdXJh
dGlvbjsKICAgICB9CiAKLSAgICAvLyBEb24ndCBhZHZhbmNlIHRoZSBhbmltYXRpb24gdG8gYW4g
aW5jb21wbGV0ZSBmcmFtZS4KLSAgICBzaXplX3QgbmV4dEZyYW1lID0gKG1fY3VycmVudEZyYW1l
ICsgMSkgJSBmcmFtZUNvdW50KCk7Ci0gICAgaWYgKCFtX2FsbERhdGFSZWNlaXZlZCAmJiAhZnJh
bWVJc0NvbXBsZXRlQXRJbmRleChuZXh0RnJhbWUpKQotICAgICAgICByZXR1cm47Ci0KLSAgICAv
LyBEb24ndCBhZHZhbmNlIHBhc3QgdGhlIGxhc3QgZnJhbWUgaWYgd2UgaGF2ZW4ndCBkZWNvZGVk
IHRoZSB3aG9sZSBpbWFnZQotICAgIC8vIHlldCBhbmQgb3VyIHJlcGV0aXRpb24gY291bnQgaXMg
cG90ZW50aWFsbHkgdW5zZXQuICBUaGUgcmVwZXRpdGlvbiBjb3VudAotICAgIC8vIGluIGEgR0lG
IGNhbiBwb3RlbnRpYWxseSBjb21lIGFmdGVyIGFsbCB0aGUgcmVzdCBvZiB0aGUgaW1hZ2UgZGF0
YSwgc28KLSAgICAvLyB3YWl0IG9uIGl0LgotICAgIGlmICghbV9hbGxEYXRhUmVjZWl2ZWQgJiYg
cmVwZXRpdGlvbkNvdW50KGZhbHNlKSA9PSBjQW5pbWF0aW9uTG9vcE9uY2UgJiYgbV9jdXJyZW50
RnJhbWUgPj0gKGZyYW1lQ291bnQoKSAtIDEpKQotICAgICAgICByZXR1cm47Ci0KICAgICAvLyBU
aGUgaW1hZ2UgbWF5IGxvYWQgbW9yZSBzbG93bHkgdGhhbiBpdCdzIHN1cHBvc2VkIHRvIGFuaW1h
dGUsIHNvIHRoYXQgYnkKICAgICAvLyB0aGUgdGltZSB3ZSByZWFjaCB0aGUgZW5kIG9mIHRoZSBm
aXJzdCByZXBldGl0aW9uLCB3ZSdyZSB3ZWxsIGJlaGluZC4KICAgICAvLyBDbGFtcCB0aGUgZGVz
aXJlZCBmcmFtZSBzdGFydCB0aW1lIGluIHRoaXMgY2FzZSwgc28gdGhhdCB3ZSBkb24ndCBza2lw
Ci0tIAoxLjcuMC4xNy5nN2U1ZWIKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>