<?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>14413</bug_id>
          
          <creation_ts>2007-06-26 09:47:45 -0700</creation_ts>
          <short_desc>GIF animation throttling is different from MSIE</short_desc>
          <delta_ts>2010-03-13 10:11:25 -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>523.x (Safari 3)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>https://bugzilla.mozilla.org/skins/custom/images/mozchomp.gif</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>tor</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>ap</cc>
    
    <cc>gavin.sharp</cc>
    
    <cc>hyatt</cc>
    
    <cc>mrowe</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>6193</commentid>
    <comment_count>0</comment_count>
    <who name="">tor</who>
    <bug_when>2007-06-26 09:47:45 -0700</bug_when>
    <thetext>IE and Opera have a minimum delay time between GIF frames, empirically found to be 100ms.  Mozilla also has code for this, though it was broken in FF2.

Safari does not appear to have a frame rate throttle, or if it does, it appears to be set below the other browsers.

Test URL appears to be running unthrottled in Safari 3.0.2 (windows) and webkit nightly (os-x).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>6194</commentid>
    <comment_count>1</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-06-26 10:01:13 -0700</bug_when>
    <thetext>This is from WebCore code:

    // We follow Firefox&apos;s behavior and use a duration of 100 ms for any frames that specify
    // a duration of &lt;= 10 ms. See gfxImageFrame::GetTimeout in Gecko or Radar 4051389 for more.
    if (duration &lt;= 0.010)
        return 0.100;
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>6202</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-06-26 10:50:26 -0700</bug_when>
    <thetext>http://nypop.com/~ap/webkit/mozchomp/mozchomp.html

According to this test, the behavior is:
IE 7/Win:
  &lt;=50ms -&gt; 100ms
  &gt;50ms -&gt; as specified
Opera 9.2/Mac:
  &lt;100ms -&gt; 100ms
  &gt;=100ms -&gt; as specified
Safari 2&amp;3, Firefox 2:
  &lt;=10ms -&gt; 100ms
  &gt;10ms -&gt; as specified
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>6204</commentid>
    <comment_count>3</comment_count>
      <attachid>15252</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-06-26 11:23:30 -0700</bug_when>
    <thetext>Created attachment 15252
proposed fix

Comparing with 0.051 is needed because of floating point error, and is safe because GIF specifies timeouts in tens of milliseconds.

Please note that the test case still renders incorrectly on my machine - 100ms and 110ms images animate synchronously! This appears to be some unrelated timer-related issue: on a simpler page with just these two images left, the same images are animated correctly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>6160</commentid>
    <comment_count>4</comment_count>
      <attachid>15252</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2007-06-26 14:17:27 -0700</bug_when>
    <thetext>Comment on attachment 15252
proposed fix

r=me

Nice testing!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>6157</commentid>
    <comment_count>5</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2007-06-26 14:18:05 -0700</bug_when>
    <thetext>CC&apos;ing Dave in case he disagrees. I believe he wrote the original code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>6158</commentid>
    <comment_count>6</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2007-06-26 14:18:32 -0700</bug_when>
    <thetext>Do we need a new bug about the timer-related issue you&apos;ve seen?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>6078</commentid>
    <comment_count>7</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-06-27 10:23:27 -0700</bug_when>
    <thetext>Committed revision 23821; filed bug 14432.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>5859</commentid>
    <comment_count>8</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-06-30 03:20:27 -0700</bug_when>
    <thetext>See also: &lt;https://bugzilla.mozilla.org/show_bug.cgi?id=386269#c4&gt; (it&apos;s not a given that Mozilla will follow IE behavior).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84018</commentid>
    <comment_count>9</comment_count>
    <who name="Peter Kasting">pkasting</who>
    <bug_when>2008-06-20 16:54:02 -0700</bug_when>
    <thetext>Firefox 3 shipped with the same behavior as past Firefox releases: &lt;= 10 ms -&gt; 100 ms.  As far as I know, they are the only browser to do this now, and I filed https://bugzilla.mozilla.org/show_bug.cgi?id=440882 about matching the other engines.  That said, I think Gecko&apos;s behavior, and WebKit&apos;s old behavior, is superior to WebKit&apos;s current behavior in the abstract, and if Gecko refuses to change, WebKit should seriously consider reverting this fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>199368</commentid>
    <comment_count>10</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-03-13 10:11:25 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; That said, I think Gecko&apos;s behavior, and WebKit&apos;s old behavior,
&gt; is superior to WebKit&apos;s current behavior in the abstract, and if Gecko refuses
&gt; to change, WebKit should seriously consider reverting this fix.

We are seriously considering that, see bug 36082. We don&apos;t have a consensus yet.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>15252</attachid>
            <date>2007-06-26 11:23:30 -0700</date>
            <delta_ts>2007-06-26 14:17:27 -0700</delta_ts>
            <desc>proposed fix</desc>
            <filename>14413r1_patch.txt</filename>
            <type>text/plain</type>
            <size>1556</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyMzc5NCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMDctMDYtMjYgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEB3ZWJr
aXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NDEzCisgICAgICAgIEdJ
RiBhbmltYXRpb24gdGhyb3R0bGluZyBpcyBkaWZmZXJlbnQgZnJvbSBNU0lFCisKKyAgICAgICAg
KiBwbGF0Zm9ybS9ncmFwaGljcy9jZy9JbWFnZVNvdXJjZUNHLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkltYWdlU291cmNlOjpmcmFtZUR1cmF0aW9uQXRJbmRleCk6CisgICAgICAgIENoYW5nZSB0
aGUgY3V0LW9mZiB2YWx1ZSB0byA1MG1zIHRvIG1hdGNoIE1TSUUuCisKIDIwMDctMDYtMjYgIFRp
bW90aHkgSGF0Y2hlciAgPHRpbW90aHlAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5
IE1hcmsgUm93ZS4KSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvSW1hZ2VTb3Vy
Y2VDRy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9JbWFn
ZVNvdXJjZUNHLmNwcAkocmV2aXNpb24gMjM3OTQpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NnL0ltYWdlU291cmNlQ0cuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNzcsOSArMTc3LDkg
QEAgZmxvYXQgSW1hZ2VTb3VyY2U6OmZyYW1lRHVyYXRpb25BdEluZGV4KAogICAgIH0KIAogICAg
IC8vIE1hbnkgYW5ub3lpbmcgYWRzIHNwZWNpZnkgYSAwIGR1cmF0aW9uIHRvIG1ha2UgYW4gaW1h
Z2UgZmxhc2ggYXMgcXVpY2tseSBhcyBwb3NzaWJsZS4KLSAgICAvLyBXZSBmb2xsb3cgRmlyZWZv
eCdzIGJlaGF2aW9yIGFuZCB1c2UgYSBkdXJhdGlvbiBvZiAxMDAgbXMgZm9yIGFueSBmcmFtZXMg
dGhhdCBzcGVjaWZ5Ci0gICAgLy8gYSBkdXJhdGlvbiBvZiA8PSAxMCBtcy4gU2VlIGdmeEltYWdl
RnJhbWU6OkdldFRpbWVvdXQgaW4gR2Vja28gb3IgUmFkYXIgNDA1MTM4OSBmb3IgbW9yZS4KLSAg
ICBpZiAoZHVyYXRpb24gPD0gMC4wMTApCisgICAgLy8gV2UgZm9sbG93IFdpbklFJ3MgYmVoYXZp
b3IgYW5kIHVzZSBhIGR1cmF0aW9uIG9mIDEwMCBtcyBmb3IgYW55IGZyYW1lcyB0aGF0IHNwZWNp
ZnkKKyAgICAvLyBhIGR1cmF0aW9uIG9mIDw9IDUwIG1zLiBTZWUgPGh0dHA6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NDEzPiBvciBSYWRhciA0MDUxMzg5IGZvciBtb3JlLgor
ICAgIGlmIChkdXJhdGlvbiA8IDAuMDUxKQogICAgICAgICByZXR1cm4gMC4xMDA7CiAgICAgcmV0
dXJuIGR1cmF0aW9uOwogfQo=
</data>
<flag name="review"
          id="6304"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>