<?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>37991</bug_id>
          
          <creation_ts>2010-04-22 08:30:16 -0700</creation_ts>
          <short_desc>Do not pause movie when readyState drops below HAVE_FUTURE_DATA</short_desc>
          <delta_ts>2010-04-22 12:48:20 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Media</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Carlson">eric.carlson</reporter>
          <assigned_to name="Eric Carlson">eric.carlson</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
    
    <cc>jer.noble</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>215885</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2010-04-22 08:30:16 -0700</bug_when>
    <thetext>HTMLMediaElement currently calls m_player-&gt;pause() when playback stops because the media engine runs out of buffered data. This is unnecessary for downloaded movies because the movie is already &quot;paused&quot;, and is harmful for streamed movies because no data is loaded once paused.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>215886</commentid>
    <comment_count>1</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2010-04-22 08:31:22 -0700</bug_when>
    <thetext>&lt;rdar://problem/7893937&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>215916</commentid>
    <comment_count>2</comment_count>
      <attachid>54066</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2010-04-22 09:36:29 -0700</bug_when>
    <thetext>Created attachment 54066
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>215929</commentid>
    <comment_count>3</comment_count>
      <attachid>54066</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-04-22 09:52:20 -0700</bug_when>
    <thetext>Comment on attachment 54066
Proposed patch


&gt;  bool HTMLMediaElement::potentiallyPlaying() const
&gt;  {
&gt; -    return m_readyState &gt;= HAVE_FUTURE_DATA &amp;&amp; couldPlayIfEnoughData();
&gt; +    bool pausedToBuffer = m_readyStateMaximum &gt;= HAVE_FUTURE_DATA &amp;&amp; m_readyState &lt; HAVE_FUTURE_DATA;
&gt; +    return (pausedToBuffer || m_readyState &gt;= HAVE_FUTURE_DATA) &amp;&amp; couldPlayIfEnoughData();

I think a comment here would be useful, to explain exactly what pausedToBuffer means.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>215972</commentid>
    <comment_count>4</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2010-04-22 11:07:03 -0700</bug_when>
    <thetext>trac.webkit.org/changeset/58107</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>215995</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-04-22 11:58:45 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/58107 might have broken Leopard Intel Release (Tests)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>215996</commentid>
    <comment_count>6</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-04-22 12:00:29 -0700</bug_when>
    <thetext>Yup.  Looks like this broke Tiger and Leopard test machines:
http://build.webkit.org/results/Leopard%20Intel%20Debug%20(Tests)/r58107%20(13331)/results.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>215998</commentid>
    <comment_count>7</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2010-04-22 12:06:29 -0700</bug_when>
    <thetext>I am looking into it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216012</commentid>
    <comment_count>8</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2010-04-22 12:25:37 -0700</bug_when>
    <thetext>Looks like this change has exposed a QuickTime/QTKit bug. Continuing to dig.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216029</commentid>
    <comment_count>9</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2010-04-22 12:48:20 -0700</bug_when>
    <thetext>Will need to spend some quality time in QuickTime to figure this out, so these tests added to the Leopard and Tiger skipped lists in http://trac.webkit.org/changeset/58109</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>54066</attachid>
            <date>2010-04-22 09:36:29 -0700</date>
            <delta_ts>2010-04-22 11:07:22 -0700</delta_ts>
            <desc>Proposed patch</desc>
            <filename>patch_1.txt</filename>
            <type>text/plain</type>
            <size>3055</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1ODA5OSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjEgQEAKKzIwMTAtMDQtMjIgIEVyaWMgQ2FybHNvbiAgPGVyaWMuY2FybHNvbkBh
cHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgRG8gbm90IHBhdXNlIG1vdmllIHdoZW4gcmVhZHlTdGF0ZSBkcm9wcyBiZWxvdyBIQVZFX0ZV
VFVSRV9EQVRBCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0zNzk5MQorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgd2UgZG9uJ3QgaGF2ZSBpbmZyYXN0cnVj
dHVyZSBpbiBEUlQgdG8gdGVzdCB3aXRoIHN0cmVhbWVkCisgICAgICAgIG1vdmllcy4KKworICAg
ICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1M
TWVkaWFFbGVtZW50OjpIVE1MTWVkaWFFbGVtZW50KTogSW5pdGlhbGl6ZSBtX3JlYWR5U3RhdGVN
YXhpbXVtLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6cHJlcGFyZUZvckxv
YWQpOiBSZXNldCBtX3JlYWR5U3RhdGVNYXhpbXVtLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1l
ZGlhRWxlbWVudDo6c2V0UmVhZHlTdGF0ZSk6IE1haW50YWluIG1fcmVhZHlTdGF0ZU1heGltdW0u
CisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50Ojpwb3RlbnRpYWxseVBsYXlpbmcp
OiBBbHNvIHJldHVybiB0cnVlIGlmIHRoZSByZWFkeVN0YXRlIHdhcworICAgICAgICBwcmV2aW91
c2x5ID49IEhBVkVfRlVUVVJFX0RBVEEuIAorICAgICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVu
dC5oOgorCiAyMDEwLTA0LTIyICBEaWVnbyBFc2NhbGFudGUgVXJyZWxvICA8ZGVzY2FsYW50ZUBp
Z2FsaWEuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFhhbiBMb3Blei4KSW5kZXg6IFdlYkNv
cmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2h0bWwv
SFRNTE1lZGlhRWxlbWVudC5jcHAJKHJldmlzaW9uIDU3ODMwKQorKysgV2ViQ29yZS9odG1sL0hU
TUxNZWRpYUVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05Miw2ICs5Miw3IEBAIEhUTUxN
ZWRpYUVsZW1lbnQ6OkhUTUxNZWRpYUVsZW1lbnQoY29uc3QKICAgICAsIG1fd2Via2l0UHJlc2Vy
dmVzUGl0Y2godHJ1ZSkKICAgICAsIG1fbmV0d29ya1N0YXRlKE5FVFdPUktfRU1QVFkpCiAgICAg
LCBtX3JlYWR5U3RhdGUoSEFWRV9OT1RISU5HKQorICAgICwgbV9yZWFkeVN0YXRlTWF4aW11bShI
QVZFX05PVEhJTkcpCiAgICAgLCBtX3ZvbHVtZSgxLjBmKQogICAgICwgbV9sYXN0U2Vla1RpbWUo
MCkKICAgICAsIG1fcHJldmlvdXNQcm9ncmVzcygwKQpAQCAtNDkzLDYgKzQ5NCw3IEBAIHZvaWQg
SFRNTE1lZGlhRWxlbWVudDo6cHJlcGFyZUZvckxvYWQoKQogICAgIGlmIChtX25ldHdvcmtTdGF0
ZSAhPSBORVRXT1JLX0VNUFRZKSB7CiAgICAgICAgIG1fbmV0d29ya1N0YXRlID0gTkVUV09SS19F
TVBUWTsKICAgICAgICAgbV9yZWFkeVN0YXRlID0gSEFWRV9OT1RISU5HOworICAgICAgICBtX3Jl
YWR5U3RhdGVNYXhpbXVtID0gSEFWRV9OT1RISU5HOwogICAgICAgICBtX3BhdXNlZCA9IHRydWU7
CiAgICAgICAgIG1fc2Vla2luZyA9IGZhbHNlOwogICAgICAgICBzY2hlZHVsZUV2ZW50KGV2ZW50
TmFtZXMoKS5lbXB0aWVkRXZlbnQpOwpAQCAtODUyLDYgKzg1NCw5IEBAIHZvaWQgSFRNTE1lZGlh
RWxlbWVudDo6c2V0UmVhZHlTdGF0ZShNZWQKICAgICBpZiAobV9yZWFkeVN0YXRlID09IG9sZFN0
YXRlKQogICAgICAgICByZXR1cm47CiAgICAgCisgICAgaWYgKG9sZFN0YXRlID4gbV9yZWFkeVN0
YXRlTWF4aW11bSkKKyAgICAgICAgbV9yZWFkeVN0YXRlTWF4aW11bSA9IG9sZFN0YXRlOworCiAg
ICAgaWYgKG1fbmV0d29ya1N0YXRlID09IE5FVFdPUktfRU1QVFkpCiAgICAgICAgIHJldHVybjsK
IApAQCAtMTYyOCw3ICsxNjMzLDggQEAgUGFzc1JlZlB0cjxUaW1lUmFuZ2VzPiBIVE1MTWVkaWFF
bGVtZW50OgogCiBib29sIEhUTUxNZWRpYUVsZW1lbnQ6OnBvdGVudGlhbGx5UGxheWluZygpIGNv
bnN0CiB7Ci0gICAgcmV0dXJuIG1fcmVhZHlTdGF0ZSA+PSBIQVZFX0ZVVFVSRV9EQVRBICYmIGNv
dWxkUGxheUlmRW5vdWdoRGF0YSgpOworICAgIGJvb2wgcGF1c2VkVG9CdWZmZXIgPSBtX3JlYWR5
U3RhdGVNYXhpbXVtID49IEhBVkVfRlVUVVJFX0RBVEEgJiYgbV9yZWFkeVN0YXRlIDwgSEFWRV9G
VVRVUkVfREFUQTsKKyAgICByZXR1cm4gKHBhdXNlZFRvQnVmZmVyIHx8IG1fcmVhZHlTdGF0ZSA+
PSBIQVZFX0ZVVFVSRV9EQVRBKSAmJiBjb3VsZFBsYXlJZkVub3VnaERhdGEoKTsKIH0KIAogYm9v
bCBIVE1MTWVkaWFFbGVtZW50Ojpjb3VsZFBsYXlJZkVub3VnaERhdGEoKSBjb25zdApJbmRleDog
V2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2h0
bWwvSFRNTE1lZGlhRWxlbWVudC5oCShyZXZpc2lvbiA1NzgxNCkKKysrIFdlYkNvcmUvaHRtbC9I
VE1MTWVkaWFFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTI5Niw2ICsyOTYsNyBAQCBwcml2
YXRlOgogICAgIGJvb2wgbV93ZWJraXRQcmVzZXJ2ZXNQaXRjaDsKICAgICBOZXR3b3JrU3RhdGUg
bV9uZXR3b3JrU3RhdGU7CiAgICAgUmVhZHlTdGF0ZSBtX3JlYWR5U3RhdGU7CisgICAgUmVhZHlT
dGF0ZSBtX3JlYWR5U3RhdGVNYXhpbXVtOwogICAgIFN0cmluZyBtX2N1cnJlbnRTcmM7CiAgICAg
CiAgICAgUmVmUHRyPE1lZGlhRXJyb3I+IG1fZXJyb3I7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>