<?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>210013</bug_id>
          
          <creation_ts>2020-04-04 19:08:06 -0700</creation_ts>
          <short_desc>REGRESSION (r259531?): [iOS] TestWebKitAPI.WebKitLegacy.ScrollingDoesNotPauseMedia is timing out</short_desc>
          <delta_ts>2020-05-12 12:12:09 -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>Tools / Tests</component>
          <version>Other</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=192829</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=211792</see_also>
          <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="Aakash Jain">aakash_jain</reporter>
          <assigned_to name="Peng Liu">peng.liu6</assigned_to>
          <cc>ap</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>jer.noble</cc>
    
    <cc>peng.liu6</cc>
    
    <cc>webkit-bot-watchers-bugzilla</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1637791</commentid>
    <comment_count>0</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2020-04-04 19:08:06 -0700</bug_when>
    <thetext>TestWebKitAPI.WebKitLegacy.ScrollingDoesNotPauseMedia seems to be failing consistently.

History: https://results.webkit.org/?suite=api-tests&amp;test=TestWebKitAPI.WebKitLegacy.ScrollingDoesNotPauseMedia

Results database indicate regression point as r259531 which was today (April 4). However, this issue was first noticed on EWS 2 days back (April 2) in https://ews-build.webkit.org/#/builders/9/builds/21024</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638234</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-04-06 12:24:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/61353942&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638243</commentid>
    <comment_count>2</comment_count>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2020-04-06 12:37:05 -0700</bug_when>
    <thetext>This seems to be problem for a while. See comment 14 of webkit.org/b/192829.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638246</commentid>
    <comment_count>3</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2020-04-06 12:42:03 -0700</bug_when>
    <thetext>(In reply to Peng Liu from comment #2)
&gt; This seems to be problem for a while. See comment 14 of webkit.org/b/192829.
It looks like the test has been intermittently timing out for a while, but something changed with r259531 that made it 100% reproducible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638383</commentid>
    <comment_count>4</comment_count>
      <attachid>395634</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2020-04-06 17:08:49 -0700</bug_when>
    <thetext>Created attachment 395634
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638417</commentid>
    <comment_count>5</comment_count>
      <attachid>395634</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-04-06 19:06:29 -0700</bug_when>
    <thetext>Comment on attachment 395634
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=395634&amp;action=review

Patch looks good.

&gt; Tools/TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollingDoesNotPauseMedia.mm:41
&gt; +static bool didFinishLoad = false;

Ok as is. No change is needed.  The current code is the optimal solution: no initialization is needed.

&gt; Tools/TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollingDoesNotPauseMedia.mm:42
&gt; +static bool gotMainFrame = false;

Ditto

&gt; Tools/TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollingDoesNotPauseMedia.mm:45
&gt; +static bool readyToTest = false;

Ditto for this line and 2 more below.

&gt; Tools/TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollingDoesNotPauseMedia.mm:46
&gt; +static bool didReceivePause  = false;

Ok as is. No change needed. Look like extra space after before =

&gt; Tools/TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollingDoesNotPauseMedia.mm:79
&gt; +    RetainPtr&lt;WebPreferences&gt; preferences = [WebPreferences standardPreferences];

Ok as is. No change needed. The optimal solution stores into raw pointer because function returns process global singleton.

&gt; Tools/TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollingDoesNotPauseMedia.mm:80
&gt; +    preferences.get().mediaDataLoadsAutomatically = YES;

Ok as is. No change needed. The optimal solution is to not use .get() and switch to [preferences serX:....] notation because it aesthetically  more pleasing to read and idiomatic. Same remarks for next two lines below

&gt; Tools/TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollingDoesNotPauseMedia.mm:91
&gt; +    [uiWebView loadRequest:[NSURLRequest requestWithURL:[NSBundle.mainBundle URLForResource:@&quot;one-video&quot; withExtension:@&quot;html&quot; subdirectory:@&quot;TestWebKitAPI.resources&quot;]]];

Ok as is. No change needed. There may be an existing helper method that returns the resource URL relative to the bundle or a test function that does that + load it (at least there is one on TestWKWebView$.

&gt; Tools/TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollingDoesNotPauseMedia.mm:99
&gt; +        DOMHTMLMediaElement* video = (DOMHTMLMediaElement*)[[mainFrame DOMDocument] querySelector:@&quot;video&quot;];

Ok as is. No change needed. The optimal solution uses RetainPtr because future proofs this code should in the future is added that causes document destruction.

&gt; Tools/TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollingDoesNotPauseMedia.mm:113
&gt; +        DOMHTMLMediaElement* video = (DOMHTMLMediaElement*)[[mainFrame DOMDocument] querySelector:@&quot;video&quot;];

Ok as is. No change needed. The optimal  solution uses retainptr</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638433</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-04-06 20:39:45 -0700</bug_when>
    <thetext>Committed r259622: &lt;https://trac.webkit.org/changeset/259622&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 395634.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638445</commentid>
    <comment_count>7</comment_count>
      <attachid>395634</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-04-06 21:21:26 -0700</bug_when>
    <thetext>Comment on attachment 395634
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=395634&amp;action=review

&gt;&gt; Tools/TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollingDoesNotPauseMedia.mm:99
&gt;&gt; +        DOMHTMLMediaElement* video = (DOMHTMLMediaElement*)[[mainFrame DOMDocument] querySelector:@&quot;video&quot;];
&gt; 
&gt; Ok as is. No change needed. The optimal solution uses RetainPtr because future proofs this code should in the future is added that causes document destruction.

Optimal solution is right, but the reason for it is wrong (since the DOMNode refs the WebCore::Node). The real reason is to future proof against future code that may drain the autorelease pool.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395634</attachid>
            <date>2020-04-06 17:08:49 -0700</date>
            <delta_ts>2020-04-06 20:39:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210013-20200406170849.patch</filename>
            <type>text/plain</type>
            <size>10188</size>
            <attacher name="Peng Liu">peng.liu6</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NTY0CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNmI1NjQ4NWU4YThkYjBlMTk3YjM0OTBmYWY0YWNiNGU4
ZGM0MjI3Ny4uYmMzNzFmOWU4ZjRmMDAzMzMzYjhjNzFiNDQ0NWZjOGY0OTEzMWFiOCAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4
IEBACisyMDIwLTA0LTA2ICBQZW5nIExpdSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CisKKyAgICAg
ICAgUkVHUkVTU0lPTiAocjI1OTUzMT8pOiBbaU9TXSBUZXN0V2ViS2l0QVBJLldlYktpdExlZ2Fj
eS5TY3JvbGxpbmdEb2VzTm90UGF1c2VNZWRpYSBpcyB0aW1pbmcgb3V0CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTAwMTMKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGaXggbWlzdGFrZXMgaW4gdGhlIHRl
c3QgYW5kIG1ha2UgaXQgbW9yZSByZWxpYWJsZS4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkv
VGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIFRlc3RX
ZWJLaXRBUEkvVGVzdHMvV2ViS2l0TGVnYWN5L2lvcy9TY3JvbGxpbmdEb2VzTm90UGF1c2VNZWRp
YS5tbToKKyAgICAgICAgKC1bU2Nyb2xsaW5nRG9lc05vdFBhdXNlTWVkaWFEZWxlZ2F0ZSBoYW5k
bGVFdmVudDpdKToKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OlRFU1QpOgorICAgICAgICAqIFRl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0TGVnYWN5L2lvcy9vbmUtdmlkZW8uaHRtbDogQWRkZWQu
CisKIDIwMjAtMDQtMDUgIERvbiBPbG1zdGVhZCAgPGRvbi5vbG1zdGVhZEBzb255LmNvbT4KIAog
ICAgICAgICBbQ01ha2VdIFVzZSBXRUJLSVRfRVhFQ1VUQUJMRSBpbiBNaW5pQnJvd3NlcgpkaWZm
IC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2ogYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagppbmRleCA5NjVkODFhNzA2NGJkNzk0MjMyOThhOThmYzA3OGE1OTM0
MTI5NDQzLi5kZGY5MzI2ZDQ0ODE0YjJjY2UxMTBhMmZlNGIyZWIxYmMyNTRkNTA3IDEwMDY0NAot
LS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagpAQCAtMTE1LDYgKzExNSw3IEBACiAJCTFDRjU5QUU1MjFFNjk3N0Qw
MDZFMzdFQyAvKiBkYXJrLW1vZGUuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQ0Y1OUFFNDIxRTY5NkZCMDA2RTM3RUMgLyogZGFyay1t
b2RlLmh0bWwgKi87IH07CiAJCTFENjdCRkRDMjQzM0UwQTcwMDZCNTA0NyAvKiBQcmVlbXB0Vmlk
ZW9GdWxsc2NyZWVuLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMUQ2N0JGREIyNDMzRTBBNzAwNkI1MDQ3IC8qIFByZWVtcHRWaWRlb0Z1bGxzY3JlZW4u
bW0gKi87IH07CiAJCTFENjdCRkREMjQzM0VFNjYwMDZCNTA0NyAvKiB0d28tdmlkZW9zLmh0bWwg
aW4gQ29weSBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUQ2
N0JGRDkyNDMzREZEODAwNkI1MDQ3IC8qIHR3by12aWRlb3MuaHRtbCAqLzsgfTsKKwkJMURBQTUy
Q0MyNDNCRTgwNTAwMUEzMTU5IC8qIG9uZS12aWRlby5odG1sIGluIENvcHkgUmVzb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFEQUE1MkNCMjQzQkU2MjEwMDFBMzE1
OSAvKiBvbmUtdmlkZW8uaHRtbCAqLzsgfTsKIAkJMUY4MzU3MUIxRDNGRkIyMzAwRTM5NjdCIC8q
IFdLQmFja0ZvcndhcmRMaXN0Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMUY4MzU3MUExRDNGRkIwRTAwRTM5NjdCIC8qIFdLQmFja0ZvcndhcmRMaXN0
Lm1tICovOyB9OwogCQkyNkRGNUE2MzE1QTJBMjdFMDAzNjg5QzIgLyogQ2FuY2VsTG9hZEZyb21S
ZXNvdXJjZUxvYWREZWxlZ2F0ZS5odG1sIGluIENvcHkgUmVzb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI2REY1QTYxMTVBMkEyMkIwMDM2ODlDMiAvKiBDYW5jZWxM
b2FkRnJvbVJlc291cmNlTG9hZERlbGVnYXRlLmh0bWwgKi87IH07CiAJCTI2RjUyRUFEMTgyODgy
N0IwMDIzRDQxMiAvKiBnZW9sb2NhdGlvbkdldEN1cnJlbnRQb3NpdGlvbi5odG1sIGluIENvcHkg
UmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI2RjUyRUFDMTgy
ODgyMEUwMDIzRDQxMiAvKiBnZW9sb2NhdGlvbkdldEN1cnJlbnRQb3NpdGlvbi5odG1sICovOyB9
OwpAQCAtMTQ1NCw2ICsxNDU1LDcgQEAKIAkJCQlDREI1REZGRjIxMzYxMEZBMDBEM0UxODkgLyog
bm93LXBsYXlpbmcuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKIAkJCQk5M0UyRDI3NjFFRDdE
NTMyMDBGQTc2RjYgLyogb2Zmc2NyZWVuLWlmcmFtZS1vZi1tZWRpYS1kb2N1bWVudC5odG1sIGlu
IENvcHkgUmVzb3VyY2VzICovLAogCQkJCTA3NDk5NDQyMUVBNTAzNEIwMDBEQTQ0RiAvKiBvbmRl
dmljZWNoYW5nZS5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLAorCQkJCTFEQUE1MkNDMjQzQkU4
MDUwMDFBMzE1OSAvKiBvbmUtdmlkZW8uaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKIAkJCQlD
RUE2Q0YyODE5Q0NGNjlEMDA2NEY1QTcgLyogb3Blbi1hbmQtY2xvc2Utd2luZG93Lmh0bWwgaW4g
Q29weSBSZXNvdXJjZXMgKi8sCiAJCQkJN0NDQjk5MjMxRDNCNEE0NjAwMzkyMkY2IC8qIG9wZW4t
bXVsdGlwbGUtZXh0ZXJuYWwtdXJsLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8sCiAJCQkJNDY4
QkM0NTUyMjY1M0ExMDAwQTM2Qzk2IC8qIG9wZW4td2luZG93LXRoZW4td3JpdGUtdG8taXQuaHRt
bCBpbiBDb3B5IFJlc291cmNlcyAqLywKQEAgLTE2NjksNiArMTY3MSw3IEBACiAJCTFDRjU5QUU0
MjFFNjk2RkIwMDZFMzdFQyAvKiBkYXJrLW1vZGUuaHRtbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuaHRtbDsg
cGF0aCA9ICJkYXJrLW1vZGUuaHRtbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFE
NjdCRkQ5MjQzM0RGRDgwMDZCNTA0NyAvKiB0d28tdmlkZW9zLmh0bWwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
Lmh0bWw7IHBhdGggPSAidHdvLXZpZGVvcy5odG1sIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJMUQ2N0JGREIyNDMzRTBBNzAwNkI1MDQ3IC8qIFByZWVtcHRWaWRlb0Z1bGxzY3JlZW4u
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQcmVlbXB0VmlkZW9GdWxsc2NyZWVuLm1tOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxREFBNTJDQjI0M0JFNjIxMDAxQTMxNTkgLyogb25l
LXZpZGVvLmh0bWwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lmh0bWw7IHBhdGggPSAib25lLXZpZGVvLmh0bWwi
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxRjgzNTcxQTFEM0ZGQjBFMDBFMzk2N0Ig
LyogV0tCYWNrRm9yd2FyZExpc3QubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7
IG5hbWUgPSBXS0JhY2tGb3J3YXJkTGlzdC5tbTsgcGF0aCA9IFRlc3RzL1dlYktpdC9XS0JhY2tG
b3J3YXJkTGlzdC5tbTsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OwogCQkyNjBCQTU3ODFC
MUQyRTdCMDA0RkEwN0MgLyogREZBQ29tYmluZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gREZBQ29tYmluZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQkyNjBCQTU3QTFCMUQyRUUyMDA0RkEwN0MgLyogREZBSGVscGVycy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBERkFIZWxwZXJzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CkBAIC00MzQzLDYgKzQzNDYsNyBAQAogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGls
ZHJlbiA9ICgKIAkJCQlDRDlFMjkyRDFDOTBDMUJBMDAwQkI4MDAgLyogYXVkaW8tb25seS5odG1s
ICovLAorCQkJCTFEQUE1MkNCMjQzQkU2MjEwMDFBMzE1OSAvKiBvbmUtdmlkZW8uaHRtbCAqLywK
IAkJCQkxRDY3QkZEOTI0MzNERkQ4MDA2QjUwNDcgLyogdHdvLXZpZGVvcy5odG1sICovLAogCQkJ
CUNEQzhFNDg5MUJDNUM5NjIwMDU5NEZFQyAvKiB2aWRlby13aXRoLWF1ZGlvLmh0bWwgKi8sCiAJ
CQkJQ0RDOEU0OEExQkM1Qzk2MjAwNTk0RkVDIC8qIHZpZGVvLXdpdGgtYXVkaW8ubXA0ICovLApk
aWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRMZWdhY3kvaW9zL1Nj
cm9sbGluZ0RvZXNOb3RQYXVzZU1lZGlhLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXRMZWdhY3kvaW9zL1Njcm9sbGluZ0RvZXNOb3RQYXVzZU1lZGlhLm1tCmluZGV4IDdmNDk1
YWE1OTFmNGUwNmVkZTc2ZmY4MWUxOTY5ODAxOTJkNDM0OGUuLjc4M2JhODgwYzllOTQ2OThjZDJl
Y2Q2OTMyN2I3OTY5MjUwZTExMzUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0TGVnYWN5L2lvcy9TY3JvbGxpbmdEb2VzTm90UGF1c2VNZWRpYS5tbQorKysgYi9U
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdExlZ2FjeS9pb3MvU2Nyb2xsaW5nRG9lc05v
dFBhdXNlTWVkaWEubW0KQEAgLTMwLDYgKzMwLDcgQEAKICNpbXBvcnQgIlBsYXRmb3JtVXRpbGl0
aWVzLmgiCiAjaW1wb3J0IDxXZWJLaXQvRE9NSFRNTE1lZGlhRWxlbWVudC5oPgogI2ltcG9ydCA8
V2ViS2l0L1dlYkZyYW1lUHJpdmF0ZS5oPgorI2ltcG9ydCA8V2ViS2l0TGVnYWN5L1dlYlByZWZl
cmVuY2VzUHJpdmF0ZS5oPgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4KICNpbXBvcnQgPHd0
Zi9SZXRhaW5QdHIuaD4KIApAQCAtMzcsOSArMzgsMTMgQEAgQGludGVyZmFjZSBTY3JvbGxpbmdE
b2VzTm90UGF1c2VNZWRpYURlbGVnYXRlIDogTlNPYmplY3QgPFVJV2ViVmlld0RlbGVnYXRlLCBE
T00KIH0KIEBlbmQKIAotc3RhdGljIGJvb2wgZGlkRmluaXNoTG9hZDsKLXN0YXRpYyBib29sIGdv
dE1haW5GcmFtZTsKLXN0YXRpYyBXZWJGcmFtZSogbWFpbkZyYW1lOworc3RhdGljIGJvb2wgZGlk
RmluaXNoTG9hZCA9IGZhbHNlOworc3RhdGljIGJvb2wgZ290TWFpbkZyYW1lID0gZmFsc2U7Citz
dGF0aWMgUmV0YWluUHRyPFdlYkZyYW1lPiBtYWluRnJhbWU7CisKK3N0YXRpYyBib29sIHJlYWR5
VG9UZXN0ID0gZmFsc2U7CitzdGF0aWMgYm9vbCBkaWRSZWNlaXZlUGF1c2UgID0gZmFsc2U7Citz
dGF0aWMgYm9vbCBkaWRSZWNlaXZlUGxheWluZyA9IGZhbHNlOwogCiBAaW1wbGVtZW50YXRpb24g
U2Nyb2xsaW5nRG9lc05vdFBhdXNlTWVkaWFEZWxlZ2F0ZQogCkBAIC01NiwxMiArNjEsMTEgQEAg
LSAodm9pZCl1aVdlYlZpZXc6KFVJV2ViVmlldyAqKXNlbmRlciBkaWRDb21taXRMb2FkRm9yRnJh
bWU6KFdlYkZyYW1lICopZnJhbWUKICAgICBnb3RNYWluRnJhbWUgPSB0cnVlOwogfQogCi1zdGF0
aWMgYm9vbCBkaWRSZWNlaXZlUGF1c2U7Ci1zdGF0aWMgYm9vbCBkaWRSZWNlaXZlUGxheWluZzsK
LQogLSAodm9pZCloYW5kbGVFdmVudDooRE9NRXZlbnQgKilldmVudAogewotICAgIGlmIChbZXZl
bnQudHlwZSBpc0VxdWFsVG9TdHJpbmc6QCJwYXVzZSJdKQorICAgIGlmIChbZXZlbnQudHlwZSBp
c0VxdWFsVG9TdHJpbmc6QCJjYW5wbGF5dGhyb3VnaCJdKQorICAgICAgICByZWFkeVRvVGVzdCA9
IHRydWU7CisgICAgZWxzZSBpZiAoW2V2ZW50LnR5cGUgaXNFcXVhbFRvU3RyaW5nOkAicGF1c2Ui
XSkKICAgICAgICAgZGlkUmVjZWl2ZVBhdXNlID0gdHJ1ZTsKICAgICBlbHNlIGlmIChbZXZlbnQu
dHlwZSBpc0VxdWFsVG9TdHJpbmc6QCJwbGF5aW5nIl0pCiAgICAgICAgIGRpZFJlY2VpdmVQbGF5
aW5nID0gdHJ1ZTsKQEAgLTcyLDIxICs3NiwxOSBAQCBuYW1lc3BhY2UgVGVzdFdlYktpdEFQSSB7
CiAKIFRFU1QoV2ViS2l0TGVnYWN5LCBTY3JvbGxpbmdEb2VzTm90UGF1c2VNZWRpYSkKIHsKKyAg
ICBSZXRhaW5QdHI8V2ViUHJlZmVyZW5jZXM+IHByZWZlcmVuY2VzID0gW1dlYlByZWZlcmVuY2Vz
IHN0YW5kYXJkUHJlZmVyZW5jZXNdOworICAgIHByZWZlcmVuY2VzLmdldCgpLm1lZGlhRGF0YUxv
YWRzQXV0b21hdGljYWxseSA9IFlFUzsKKyAgICBwcmVmZXJlbmNlcy5nZXQoKS5tZWRpYVBsYXli
YWNrQWxsb3dzSW5saW5lID0gWUVTOworICAgIHByZWZlcmVuY2VzLmdldCgpLm1lZGlhUGxheWJh
Y2tSZXF1aXJlc1VzZXJHZXN0dXJlID0gTk87CisKICAgICBSZXRhaW5QdHI8VUlXaW5kb3c+IHVp
V2luZG93ID0gYWRvcHROUyhbW1VJV2luZG93IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJl
Y3QoMCwgMCwgODAwLCA2MDApXSk7CiAgICAgUmV0YWluUHRyPFVJV2ViVmlldz4gdWlXZWJWaWV3
ID0gYWRvcHROUyhbW1VJV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAs
IDAsIDgwMCwgNjAwKV0pOwogICAgIFt1aVdpbmRvdyBhZGRTdWJ2aWV3OnVpV2ViVmlldy5nZXQo
KV07CiAKLSAgICB1aVdlYlZpZXcuZ2V0KCkubWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckFjdGlv
biA9IE5POwotICAgIHVpV2ViVmlldy5nZXQoKS5hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrID0g
WUVTOwotCiAgICAgUmV0YWluUHRyPFNjcm9sbGluZ0RvZXNOb3RQYXVzZU1lZGlhRGVsZWdhdGU+
IHRlc3RDb250cm9sbGVyID0gYWRvcHROUyhbU2Nyb2xsaW5nRG9lc05vdFBhdXNlTWVkaWFEZWxl
Z2F0ZSBuZXddKTsKICAgICB1aVdlYlZpZXcuZ2V0KCkuZGVsZWdhdGUgPSB0ZXN0Q29udHJvbGxl
ci5nZXQoKTsKIAotICAgIGRpZEZpbmlzaExvYWQgPSBmYWxzZTsKLSAgICBnb3RNYWluRnJhbWUg
PSBmYWxzZTsKLSAgICBtYWluRnJhbWUgPSBuaWw7Ci0KLSAgICBbdWlXZWJWaWV3IGxvYWRSZXF1
ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6W05TQnVuZGxlLm1haW5CdW5kbGUgVVJM
Rm9yUmVzb3VyY2U6QCJ2aWRlby13aXRoLWF1ZGlvIiB3aXRoRXh0ZW5zaW9uOkAiaHRtbCIgc3Vi
ZGlyZWN0b3J5OkAiVGVzdFdlYktpdEFQSS5yZXNvdXJjZXMiXV1dOworICAgIFt1aVdlYlZpZXcg
bG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDpbTlNCdW5kbGUubWFpbkJ1
bmRsZSBVUkxGb3JSZXNvdXJjZTpAIm9uZS12aWRlbyIgd2l0aEV4dGVuc2lvbjpAImh0bWwiIHN1
YmRpcmVjdG9yeTpAIlRlc3RXZWJLaXRBUEkucmVzb3VyY2VzIl1dXTsKIAogICAgIFV0aWw6OnJ1
bigmZGlkRmluaXNoTG9hZCk7CiAgICAgVXRpbDo6cnVuKCZnb3RNYWluRnJhbWUpOwpAQCAtOTQs
MjkgKzk2LDMzIEBAIFRFU1QoV2ViS2l0TGVnYWN5LCBTY3JvbGxpbmdEb2VzTm90UGF1c2VNZWRp
YSkKICAgICBjYWxsT25NYWluVGhyZWFkQW5kV2FpdChbJl0gKCkgbXV0YWJsZSB7CiAgICAgICAg
IFttYWluRnJhbWUgc2V0VGltZW91dHNQYXVzZWQ6WUVTXTsKIAotICAgICAgICBET01IVE1MTWVk
aWFFbGVtZW50KiB2aWRlbyA9IChET01IVE1MTWVkaWFFbGVtZW50KilbbWFpbkZyYW1lLkRPTURv
Y3VtZW50IHF1ZXJ5U2VsZWN0b3I6QCJ2aWRlbyJdOworICAgICAgICBET01IVE1MTWVkaWFFbGVt
ZW50KiB2aWRlbyA9IChET01IVE1MTWVkaWFFbGVtZW50KilbW21haW5GcmFtZSBET01Eb2N1bWVu
dF0gcXVlcnlTZWxlY3RvcjpAInZpZGVvIl07CiAgICAgICAgIEFTU0VSVF9UUlVFKFt2aWRlbyBp
c0tpbmRPZkNsYXNzOltET01IVE1MTWVkaWFFbGVtZW50IGNsYXNzXV0pOwogCisgICAgICAgIFt2
aWRlbyBhZGRFdmVudExpc3RlbmVyOkAiY2FucGxheXRocm91Z2giIGxpc3RlbmVyOnRlc3RDb250
cm9sbGVyLmdldCgpIHVzZUNhcHR1cmU6Tk9dOwogICAgICAgICBbdmlkZW8gYWRkRXZlbnRMaXN0
ZW5lcjpAInBsYXlpbmciIGxpc3RlbmVyOnRlc3RDb250cm9sbGVyLmdldCgpIHVzZUNhcHR1cmU6
Tk9dOwotICAgICAgICBkaWRSZWNlaXZlUGxheWluZyA9IGZhbHNlOwotICAgICAgICBbdmlkZW8g
cGxheV07CisgICAgICAgIFt2aWRlbyBhZGRFdmVudExpc3RlbmVyOkAicGF1c2UiIGxpc3RlbmVy
OnRlc3RDb250cm9sbGVyLmdldCgpIHVzZUNhcHR1cmU6Tk9dOworICAgICAgICBbdmlkZW8gc2V0
U3JjOkAidmlkZW8td2l0aC1hdWRpby5tcDQiXTsKIAogICAgICAgICBbbWFpbkZyYW1lIHNldFRp
bWVvdXRzUGF1c2VkOk5PXTsKICAgICB9KTsKIAotICAgIFV0aWw6OnJ1bigmZGlkUmVjZWl2ZVBs
YXlpbmcpOworICAgIFV0aWw6OnJ1bigmcmVhZHlUb1Rlc3QpOwogCiAgICAgY2FsbE9uTWFpblRo
cmVhZEFuZFdhaXQoWyZdICgpIG11dGFibGUgewotICAgICAgICBbbWFpbkZyYW1lIHNldFRpbWVv
dXRzUGF1c2VkOllFU107CisgICAgICAgIERPTUhUTUxNZWRpYUVsZW1lbnQqIHZpZGVvID0gKERP
TUhUTUxNZWRpYUVsZW1lbnQqKVtbbWFpbkZyYW1lIERPTURvY3VtZW50XSBxdWVyeVNlbGVjdG9y
OkAidmlkZW8iXTsKKyAgICAgICAgQVNTRVJUX1RSVUUoW3ZpZGVvIGlzS2luZE9mQ2xhc3M6W0RP
TUhUTUxNZWRpYUVsZW1lbnQgY2xhc3NdXSk7CiAKLSAgICAgICAgRE9NSFRNTE1lZGlhRWxlbWVu
dCogdmlkZW8gPSAoRE9NSFRNTE1lZGlhRWxlbWVudCopW21haW5GcmFtZS5ET01Eb2N1bWVudCBx
dWVyeVNlbGVjdG9yOkAidmlkZW8iXTsKKyAgICAgICAgW3ZpZGVvIHBsYXldOworICAgIH0pOwor
CisgICAgVXRpbDo6cnVuKCZkaWRSZWNlaXZlUGxheWluZyk7CisKKyAgICBjYWxsT25NYWluVGhy
ZWFkQW5kV2FpdChbJl0gKCkgbXV0YWJsZSB7CisgICAgICAgIERPTUhUTUxNZWRpYUVsZW1lbnQq
IHZpZGVvID0gKERPTUhUTUxNZWRpYUVsZW1lbnQqKVtbbWFpbkZyYW1lIERPTURvY3VtZW50XSBx
dWVyeVNlbGVjdG9yOkAidmlkZW8iXTsKICAgICAgICAgQVNTRVJUX1RSVUUoW3ZpZGVvIGlzS2lu
ZE9mQ2xhc3M6W0RPTUhUTUxNZWRpYUVsZW1lbnQgY2xhc3NdXSk7CiAKLSAgICAgICAgW3ZpZGVv
IGFkZEV2ZW50TGlzdGVuZXI6QCJwYXVzZSIgbGlzdGVuZXI6dGVzdENvbnRyb2xsZXIuZ2V0KCkg
dXNlQ2FwdHVyZTpOT107Ci0gICAgICAgIGRpZFJlY2VpdmVQYXVzZSA9IGZhbHNlOwogICAgICAg
ICBbdmlkZW8gcGF1c2VdOwotCi0gICAgICAgIFttYWluRnJhbWUgc2V0VGltZW91dHNQYXVzZWQ6
Tk9dOwogICAgIH0pOwogCiAgICAgVXRpbDo6cnVuKCZkaWRSZWNlaXZlUGF1c2UpOwpkaWZmIC0t
Z2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRMZWdhY3kvaW9zL29uZS12aWRl
by5odG1sIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRMZWdhY3kvaW9zL29uZS12
aWRlby5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY3NjQzN2UwMDdmN2VmZGFkZTFlNTVmZDljNDkzMDUwOGUz
ZmM4ZDkKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktp
dExlZ2FjeS9pb3Mvb25lLXZpZGVvLmh0bWwKQEAgLTAsMCArMSw4IEBACis8IURPQ1RZUEUgaHRt
bD4KKzxodG1sPgorPGhlYWQ+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgICA8dmlkZW8gd2Via2l0LXBs
YXlzaW5saW5lIGxvb3A+PC92aWRlbz4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>