<?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>84858</bug_id>
          
          <creation_ts>2012-04-25 06:43:43 -0700</creation_ts>
          <short_desc>[GTK] media/video-seek-past-end-playing.html times out</short_desc>
          <delta_ts>2012-06-12 04:18:13 -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>WebKitGTK</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Philippe Normand">pnormand</reporter>
          <assigned_to name="Dominik Röttsches (drott)">d-r</assigned_to>
          <cc>cdumez</cc>
    
    <cc>d-r</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>gustavo</cc>
    
    <cc>menard</cc>
    
    <cc>mrobinson</cc>
    
    <cc>rakuco</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>609704</commentid>
    <comment_count>0</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2012-04-25 06:43:43 -0700</bug_when>
    <thetext>Seems to happen only in 32-bit Release:

--- /var/lib/buildbot/build/gtk-linux-32-release/build/layout-test-results/media/video-seek-past-end-playing-expected.txt 
+++ /var/lib/buildbot/build/gtk-linux-32-release/build/layout-test-results/media/video-seek-past-end-playing-actual.txt 
@@ -1,3 +1,4 @@
+FAIL: Timed out waiting for notifyDone to be called
 Test that seeking video with &apos;loop&apos; past it&apos;s end rewinds to the beginning and continues playback.
 
 EVENT(canplaythrough)
@@ -9,8 +10,3 @@
 EXPECTED (mediaElement.currentTime &gt; &apos;0&apos;) OK
 RUN(video.currentTime = 500)
 
-EXPECTED (video.paused == &apos;false&apos;) OK
-EXPECTED (mediaElement.currentTime &gt; &apos;0&apos;) OK
-
-END OF TEST
-</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>609705</commentid>
    <comment_count>1</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2012-04-25 06:43:55 -0700</bug_when>
    <thetext>And flakily</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>614328</commentid>
    <comment_count>2</comment_count>
    <who name="Dominik Röttsches (drott)">d-r</who>
    <bug_when>2012-05-02 08:45:07 -0700</bug_when>
    <thetext>It seems that the GStreamer backend is not correctly implemeting the http://www.whatwg.org/specs/web-apps/current-work/multipage/the-video-element.html#seeking behaviour, especially step 5. 
&quot;If the new playback position is later than the end of the media resource, then let it be the end of the media resource instead.&quot;

Setting a new video.currentPosition that&apos;s larger than the length of the video actually makes the playback stop. No more timeupdate events are fired after such a seek position was set.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>615308</commentid>
    <comment_count>3</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2012-05-03 08:53:50 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; It seems that the GStreamer backend is not correctly implemeting the http://www.whatwg.org/specs/web-apps/current-work/multipage/the-video-element.html#seeking behaviour, especially step 5. 
&gt; &quot;If the new playback position is later than the end of the media resource, then let it be the end of the media resource instead.&quot;
&gt; 

This step is handled in HTMLMediaElement::seek().

&gt; Setting a new video.currentPosition that&apos;s larger than the length of the video actually makes the playback stop. No more timeupdate events are fired after such a seek position was set.

Could it be an issue with the duration() reporting?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>616012</commentid>
    <comment_count>4</comment_count>
    <who name="Dominik Röttsches (drott)">d-r</who>
    <bug_when>2012-05-04 00:28:50 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (In reply to comment #2)
&gt; &gt; [...seeking behavior...]
&gt; This step is handled in HTMLMediaElement::seek().

Yes, true, after looking a bit closer, I found that out.

&gt; &gt; Setting a new video.currentPosition that&apos;s larger than the length of the video actually makes the playback stop. No more timeupdate events are fired after such a seek position was set.

&gt; Could it be an issue with the duration() reporting?

I actually have a patch - it seems that didEnd() does not need to explicitly pause the stream (at least for forward playback), then things go fine for at least this test case. I&apos;ll check reverse playback and run all media tests again for GTK.

Also, while looking at the code, I started to think we don&apos;t need to leave m_seeking state in GST_STATE_CHANGE_ASYNC case - only, after GST_STATE_CHANGE_SUCCESS or GST_STATE_CHANGE_FAILURE. What do you think?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>616051</commentid>
    <comment_count>5</comment_count>
      <attachid>140182</attachid>
    <who name="Dominik Röttsches (drott)">d-r</who>
    <bug_when>2012-05-04 02:14:39 -0700</bug_when>
    <thetext>Created attachment 140182
Proposed fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617769</commentid>
    <comment_count>6</comment_count>
      <attachid>140182</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-07 11:31:31 -0700</bug_when>
    <thetext>Comment on attachment 140182
Proposed fix

Clearing flags on attachment: 140182

Committed r116328: &lt;http://trac.webkit.org/changeset/116328&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617770</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-07 11:31:36 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>140182</attachid>
            <date>2012-05-04 02:14:39 -0700</date>
            <delta_ts>2012-05-07 11:31:31 -0700</delta_ts>
            <desc>Proposed fix</desc>
            <filename>bug84858.patch</filename>
            <type>text/plain</type>
            <size>3478</size>
            <attacher name="Dominik Röttsches (drott)">d-r</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAzZjU1YzdjLi41MTg5MGRmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTItMDUt
MDQgIERvbWluaWsgUsO2dHRzY2hlcyAgPGRvbWluaWsucm90dHNjaGVzQGxpbnV4LmludGVsLmNv
bT4KKworICAgICAgICBbR1RLXSBtZWRpYS92aWRlby1zZWVrLXBhc3QtZW5kLXBsYXlpbmcuaHRt
bCB0aW1lcyBvdXQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTg0ODU4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgdmlkZW8tc2Vlay1wYXN0LWVuZC1wbGF5aW5nLmh0bWwgc2hvdWxkIHdvcmsgcmVsaWFibHkg
YWZ0ZXIgZml4LCByZW1vdmluZy4KKworICAgICAgICAqIHBsYXRmb3JtL2d0ay90ZXN0X2V4cGVj
dGF0aW9ucy50eHQ6CisKIDIwMTItMDUtMDIgIEFuZHJleSBLb3N5YWtvdiAgPGNhc2VxQGNocm9t
aXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2VkIGdhcmRlbmluZywgbWFya2VkIGZhc3QvanMv
cmFuZG9tLWFycmF5LWdjLXN0cmVzcy5odG1sIGFzIFNMT1cgb24gZGVidWcuCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvU2tpcHBlZCBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2VmbC9Ta2lwcGVkCmluZGV4IDg5Y2ZiYjguLmNhOTE2NzMgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL2VmbC9Ta2lwcGVkCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9T
a2lwcGVkCkBAIC0xMjI4LDcgKzEyMjgsNiBAQCBtZWRpYS92aWRlby1yZXBsYWNlcy1wb3N0ZXIu
aHRtbAogbWVkaWEvdmlkZW8tcmV2ZXJzZS1wbGF5LWR1cmF0aW9uLmh0bWwKIG1lZGlhL3ZpZGVv
LXNlZWstYnktc21hbGwtaW5jcmVtZW50Lmh0bWwKIG1lZGlhL3ZpZGVvLXNlZWstcGFzdC1lbmQt
cGF1c2VkLmh0bWwKLW1lZGlhL3ZpZGVvLXNlZWstcGFzdC1lbmQtcGxheWluZy5odG1sCiBtZWRp
YS92aWRlby1zZWVrYWJsZS5odG1sCiBtZWRpYS92aWRlby1zZWVraW5nLmh0bWwKIG1lZGlhL3Zp
ZGVvLXNldC1yYXRlLWZyb20tcGF1c2UuaHRtbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZ3RrL3Rlc3RfZXhwZWN0YXRpb25zLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0
ay90ZXN0X2V4cGVjdGF0aW9ucy50eHQKaW5kZXggMzkzZjQzOC4uNjRlNGNjNCAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL3Rlc3RfZXhwZWN0YXRpb25zLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvdGVzdF9leHBlY3RhdGlvbnMudHh0CkBAIC01MDcsNyAr
NTA3LDYgQEAgQlVHV0s4NDcwMCA6IGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcG9zdG1lc3NhZ2Ut
Y2xvbmUuaHRtbCA9IFBBU1MgVEVYVAogQlVHV0s4NDcwMCA6IGZhc3QvZG9tL1dpbmRvdy93aW5k
b3ctcG9zdG1lc3NhZ2UtY2xvbmUtZnJhbWVzLmh0bWwgPSBQQVNTIFRFWFQKIAogQlVHV0s4NDg1
NiA6IG1lZGlhL21lZGlhLWNvbnRyb2xsZXItcGxheWJhY2suaHRtbCA9IFBBU1MgVEVYVAotQlVH
V0s4NDg1OCA6IG1lZGlhL3ZpZGVvLXNlZWstcGFzdC1lbmQtcGxheWluZy5odG1sID0gUEFTUyBU
RVhUCiAKIEJVR1dLODQ4NTkgOiBmYXN0L3dvcmtlcnMvc3RvcmFnZS91c2Utc2FtZS1kYXRhYmFz
ZS1pbi1wYWdlLWFuZC13b3JrZXJzLmh0bWwgPSBQQVNTIFRFWFQKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDZi
ZTUxMTYuLjI1MmFkYWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAxMi0wNS0wNCAg
RG9taW5payBSw7Z0dHNjaGVzICA8ZG9taW5pay5yb3R0c2NoZXNAbGludXguaW50ZWwuY29tPgor
CisgICAgICAgIFtHVEtdIG1lZGlhL3ZpZGVvLXNlZWstcGFzdC1lbmQtcGxheWluZy5odG1sIHRp
bWVzIG91dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
ODQ4NTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBS
ZW1vdmluZyB0aGUgaW50ZW50aW9uYWwgc3RhdGUgY2hhbmdlIHRvIFBBVVNFRCBvbiBkaWRFbmQo
KS4KKyAgICAgICAgTXkgdW5kZXJzdGFuZGluZyBpcyB0aGF0IHRoZSBmaXggd29ya3MgYmVjYXVz
ZSB0aGUgYWRkaXRpb25hbAorICAgICAgICBzdGF0ZSB0cmFuc2l0aW9uIHRvIFBBVVNFRCB3YXMg
cmVzZXR0aW5nIHRoZSBpbnRlcm5hbCBtX3NlZWtpbmcgc3RhdGUgdG8gZWFybHksCisgICAgICAg
IHNvIHRoYXQgdXBkYXRlUGxheVN0YXRlKCkgaW4gSFRNTE1lZGlhRWxlbWVudCB3YXMgbm90IGFi
bGUgdG8KKyAgICAgICAgY29ycmVjdGx5IGZpZ3VyZSBvdXQvcmVjb3ZlciBwbGF5c3RhdGUgYWZ0
ZXIgc2Vla2luZy4KKworICAgICAgICBObyBuZXcgdGVzdHMsIGNvdmVyZWQgYnkgZXhpc3Rpbmcg
bWVkaWEgdGVzdHMsIGFuZCBmaXhpbmcKKyAgICAgICAgdmlkZW8tc2Vlay1wYXN0LWVuZC1wbGF5
aW5nLmh0bWwgZmxha2luZXNzIG9uIEdUSywgZmFpbHVyZSBvbiBFRkwuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNw
cDoKKwogMjAxMi0wNS0wMiAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAKICAg
ICAgICAgU3R5bGVTaGVldEludGVybmFsOjpwYXJzZVVzZXJTdHlsZVNoZWV0KCkgc2hvdWxkIGJl
IGNhbGxlZCBwYXJzZUF1dGhvclN0eWxlU2hlZXQoKS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFt
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlh
UGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKaW5kZXggZDA5OTNjMi4uNjJmNTM1MyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxh
eWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKQEAgLTEzNjgs
OCArMTM2OCw2IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpkaWRFbmQoKQog
CiAgICAgbV9pc0VuZFJlYWNoZWQgPSB0cnVlOwogCi0gICAgZ3N0X2VsZW1lbnRfc2V0X3N0YXRl
KG1fcGxheUJpbiwgR1NUX1NUQVRFX1BBVVNFRCk7Ci0KICAgICB0aW1lQ2hhbmdlZCgpOwogfQog
Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>