<?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>233257</bug_id>
          
          <creation_ts>2021-11-17 08:20:46 -0800</creation_ts>
          <short_desc>Safari intermittently stopping playing Spotify Web Player (currentTime goes backwards)</short_desc>
          <delta_ts>2021-12-14 14:37:34 -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>Media</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=221413</see_also>
          <bug_file_loc>https://open.spotify.com/</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="Sam Sneddon [:gsnedders]">gsnedders</reporter>
          <assigned_to name="Jer Noble">jer.noble</assigned_to>
          <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1815947</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Sneddon [:gsnedders]">gsnedders</who>
    <bug_when>2021-11-17 08:20:46 -0800</bug_when>
    <thetext>Every so often, it appears that HTMLVideoElement plays beyond the end of the duration (i.e., media.currentTime &gt; media.duration), and there appears to be some case where the currentTime can move _backwards_ while playing in that state.

Specifically, looking at timeupdate events:

[Log] currentTime: 197.2047248660011, duration: 197.09333333333333, lastTimeUpdatePosition: 196.95360709999474 (vendor~web-player.526a81f5.js, line 1)
[Log] currentTime: 197.09790954431364, duration: 197.09333333333333, lastTimeUpdatePosition: 197.20374170400382 (vendor~web-player.526a81f5.js, line 1)

(lastTimeUpdatePosition is from their own JS, but updated for each event, currentTime and duration are from the HTMLVideoElement)

Ultimately, this causes their JS to throw an exception (because, except when seeking or changing track, they assume currentTime will always progress forwards), causing playback to stop.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1815948</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-11-17 08:21:02 -0800</bug_when>
    <thetext>&lt;rdar://problem/85504967&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1815955</commentid>
    <comment_count>2</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2021-11-17 08:44:27 -0800</bug_when>
    <thetext>Likely a bug in our currentTime heuristic, where we allow currentTime &gt; duration.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1824037</commentid>
    <comment_count>3</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2021-12-14 10:09:32 -0800</bug_when>
    <thetext>*** Bug 234302 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1824038</commentid>
    <comment_count>4</comment_count>
      <attachid>447140</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2021-12-14 10:10:59 -0800</bug_when>
    <thetext>Created attachment 447140
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1824137</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-12-14 14:37:30 -0800</bug_when>
    <thetext>Committed r287050 (245247@main): &lt;https://commits.webkit.org/245247@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 447140.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>447140</attachid>
            <date>2021-12-14 10:10:59 -0800</date>
            <delta_ts>2021-12-14 14:37:32 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-233257-20211214101058.patch</filename>
            <type>text/plain</type>
            <size>4346</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg2ODU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDU1YzVlNzkwYzUyMTk4YmUx
MWY4MzQ3YjU2MjA4Yjc0NzdmY2U1ZTUuLjdkMjA3Yzc0YTk0YjUzYTdlYmE4MjhkYWFlZmQzODAw
MWZhYmY4ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMjEtMTItMTQgIEplciBOb2Js
ZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CisKKyAgICAgICAgU2FmYXJpIGludGVybWl0dGVudGx5
IHN0b3BwaW5nIHBsYXlpbmcgU3BvdGlmeSBXZWIgUGxheWVyIChjdXJyZW50VGltZSBnb2VzIGJh
Y2t3YXJkcykKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIzMzI1NworICAgICAgICA8cmRhcjovL3Byb2JsZW0vODU1MDQ5Njc+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGVzdDogbWVkaWEvdmlkZW8tY3Vy
cmVudFRpbWUtZHVyYXRpb24uaHRtbAorCisgICAgICAgIENsYW1wIGN1cnJlbnRNZWRpYVRpbWUo
KSB0byBbMCwgZHVyYXRpb25NZWRpYVRpbWUoKV0uCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQ
VS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUuY3BwOgorICAgICAgICAoV2ViS2l0OjpN
ZWRpYVBsYXllclByaXZhdGVSZW1vdGU6OmN1cnJlbnRNZWRpYVRpbWUgY29uc3QpOgorCiAyMDIx
LTEyLTEzICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFtNYWNd
IEFkb3B0IC1bTlNTY3JlZW4gc2FmZUFyZWFJbnNldHNdCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5jcHAgYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90
ZS5jcHAKaW5kZXggY2I5YWQ2MWYwMWI5ODVmMmQ2YzBjMmVhODU1YmUzYWJjOTFmZmQyMi4uZDBk
ZTMzMzNkOGJkOTZhOWNkZjgwYWVmMTNjNzhlYjYyNTcwOTYzMCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2
YXRlUmVtb3RlLmNwcApAQCAtMjg1LDcgKzI4NSw4IEBAIE1lZGlhVGltZSBNZWRpYVBsYXllclBy
aXZhdGVSZW1vdGU6OmN1cnJlbnRNZWRpYVRpbWUoKSBjb25zdAogICAgIGlmICghbV90aW1lSXNQ
cm9ncmVzc2luZykKICAgICAgICAgcmV0dXJuIG1fY2FjaGVkTWVkaWFUaW1lOwogCi0gICAgcmV0
dXJuIG1fY2FjaGVkTWVkaWFUaW1lICsgTWVkaWFUaW1lOjpjcmVhdGVXaXRoRG91YmxlKG1fcmF0
ZSAqIChNb25vdG9uaWNUaW1lOjpub3coKSAtIG1fY2FjaGVkTWVkaWFUaW1lUXVlcnlUaW1lKS5z
ZWNvbmRzKCkpOworICAgIGF1dG8gY2FsY3VsYXRlZEN1cnJlbnRUaW1lID0gbV9jYWNoZWRNZWRp
YVRpbWUgKyBNZWRpYVRpbWU6OmNyZWF0ZVdpdGhEb3VibGUobV9yYXRlICogKE1vbm90b25pY1Rp
bWU6Om5vdygpIC0gbV9jYWNoZWRNZWRpYVRpbWVRdWVyeVRpbWUpLnNlY29uZHMoKSk7CisgICAg
cmV0dXJuIHN0ZDo6bWluKHN0ZDo6bWF4KGNhbGN1bGF0ZWRDdXJyZW50VGltZSwgTWVkaWFUaW1l
Ojp6ZXJvVGltZSgpKSwgZHVyYXRpb25NZWRpYVRpbWUoKSk7CiB9CiAKIHZvaWQgTWVkaWFQbGF5
ZXJQcml2YXRlUmVtb3RlOjpzZWVrKGNvbnN0IE1lZGlhVGltZSYgdGltZSkKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBiZjI1
MTVkZjk1NDI1ZTQ1MzUzZGIxMTBlZjc2NTNjYzgwNGI4NGFiLi43ZjEzN2FhOWZmODNhODVhZDQw
NmQyMWViMWM2MDUwNzg2MDMwZDM2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
KysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjEtMTItMTQg
IEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CisKKyAgICAgICAgU2FmYXJpIGludGVy
bWl0dGVudGx5IHN0b3BwaW5nIHBsYXlpbmcgU3BvdGlmeSBXZWIgUGxheWVyIChjdXJyZW50VGlt
ZSBnb2VzIGJhY2t3YXJkcykKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIzMzI1NworICAgICAgICA8cmRhcjovL3Byb2JsZW0vODU1MDQ5Njc+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBtZWRpYS92aWRl
by1jdXJyZW50VGltZS1kdXJhdGlvbi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1l
ZGlhL3ZpZGVvLWN1cnJlbnRUaW1lLWR1cmF0aW9uLmh0bWw6IEFkZGVkLgorCiAyMDIxLTEyLTEz
ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFsgaU9TIEVXUyBd
ICAyWCBtZWRpYS90cmFjayAobGF5b3V0LXRlc3RzKSBhcmUgYSBjb25zdGFudCBpbWFnZSBmYWls
dXJlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jdXJyZW50VGltZS1kdXJh
dGlvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jdXJyZW50VGltZS1k
dXJhdGlvbi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTkwZjNiYjlmYTEzNDU1MDRjMTljNjg0
NGE5Nzg4MTFmMjZmOTkwOQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3Zp
ZGVvLWN1cnJlbnRUaW1lLWR1cmF0aW9uLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACisK
K1JVTih2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKSkK
K0VWRU5UKGNhbnBsYXl0aHJvdWdoKQorUlVOKHZpZGVvLmN1cnJlbnRUaW1lID0gdmlkZW8uZHVy
YXRpb24gLSAwLjEpCitFVkVOVChzZWVrZWQpCitSVU4odmlkZW8ucGxheSgpKQorRVZFTlQocGxh
eWluZykKK0VWRU5UKHRpbWV1cGRhdGUpCitFWFBFQ1RFRCAodmlkZW8uY3VycmVudFRpbWUgPD0g
dmlkZW8uZHVyYXRpb24gPT0gJ3RydWUnKSBPSworRU5EIE9GIFRFU1QKKwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY3VycmVudFRpbWUtZHVyYXRpb24uaHRtbCBiL0xheW91
dFRlc3RzL21lZGlhL3ZpZGVvLWN1cnJlbnRUaW1lLWR1cmF0aW9uLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MDI1ODIxODdhNDQ3OGVmNDJiZTBiNWI5ODE1YjAxODM4MTQwZGY2MwotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWN1cnJlbnRUaW1lLWR1cmF0aW9uLmh0bWwKQEAg
LTAsMCArMSwyNSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDx0aXRs
ZT52aWRlby1jdXJyZW50VGltZS1kdXJhdGlvbjwvdGl0bGU+CisgICAgPHNjcmlwdCBzcmM9InZp
ZGVvLXRlc3QuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJtZWRpYS1maWxlLmpzIj48
L3NjcmlwdD4KKyAgICA8c2NyaXB0PgorICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2Fk
JywgYXN5bmMgZXZlbnQgPT4geworICAgICAgICBmaW5kTWVkaWFFbGVtZW50KCk7CisgICAgICAg
IHJ1bigndmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iikn
KTsKKyAgICAgICAgYXdhaXQgd2FpdEZvcih2aWRlbywgJ2NhbnBsYXl0aHJvdWdoJyk7CisgICAg
ICAgIHJ1bigndmlkZW8uY3VycmVudFRpbWUgPSB2aWRlby5kdXJhdGlvbiAtIDAuMScpOworICAg
ICAgICBhd2FpdCB3YWl0Rm9yKHZpZGVvLCAnc2Vla2VkJyk7CisgICAgICAgIHJ1bigndmlkZW8u
cGxheSgpJyk7CisgICAgICAgIGF3YWl0IHdhaXRGb3IodmlkZW8sICdwbGF5aW5nJyk7CisgICAg
ICAgIGF3YWl0IHdhaXRGb3IodmlkZW8sICd0aW1ldXBkYXRlJyk7CisgICAgICAgIHRlc3RFeHBl
Y3RlZCgndmlkZW8uY3VycmVudFRpbWUgPD0gdmlkZW8uZHVyYXRpb24nLCB0cnVlKTsKKyAgICAg
ICAgZW5kVGVzdCgpOworICAgIH0pOworICAgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cisg
ICAgPHZpZGVvIG11dGVkPjwvdmlkZW8+Cis8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBh
dCBlbmQgb2YgZmlsZQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>