<?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>211297</bug_id>
          
          <creation_ts>2020-05-01 09:53:57 -0700</creation_ts>
          <short_desc>[iOS] ProcessThrottler fails to re-take ProcessAssertion if the previous one was invalidated</short_desc>
          <delta_ts>2020-05-18 03:58:54 -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>WebKit2</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>bfulgham</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ggaren</cc>
    
    <cc>jer.noble</cc>
    
    <cc>kevin.godell</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1647880</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-05-01 09:53:57 -0700</bug_when>
    <thetext>Our ProcessAssertions may get invalidated upon backgrounding of the app. When the app becomes foreground and the ProcessThrottler tries to take a Foreground assertion as a result, it would incorrectly think it already had such assertion and not do anything, even though the previous one is no longer valid. As a result, the child processes would stay suspended even though the app was foregrounded.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1647881</commentid>
    <comment_count>1</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-05-01 09:54:08 -0700</bug_when>
    <thetext>&lt;rdar://problem/62542463&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1647884</commentid>
    <comment_count>2</comment_count>
      <attachid>398194</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-05-01 09:57:24 -0700</bug_when>
    <thetext>Created attachment 398194
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1648120</commentid>
    <comment_count>3</comment_count>
      <attachid>398194</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-05-01 15:57:05 -0700</bug_when>
    <thetext>Comment on attachment 398194
Patch

Clearing flags on attachment: 398194

Committed r261034: &lt;https://trac.webkit.org/changeset/261034&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1648121</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-05-01 15:57:07 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1648126</commentid>
    <comment_count>5</comment_count>
      <attachid>398194</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-05-01 15:59:59 -0700</bug_when>
    <thetext>Comment on attachment 398194
Patch

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

&gt; Source/WebKit/ChangeLog:15
&gt; +        To address the issue, add a isValid() method to ProcessAssertion() and check it in

&quot;add an isValid() ...&quot;

&gt; Source/WebKit/UIProcess/ios/ProcessAssertionIOS.mm:462
&gt; +    bool shouldHoldBackgroundTask = isValid() &amp;&amp; type() != ProcessAssertionType::Suspended;

It seems like this might be the only use of validity(). Should it be removed?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1648127</commentid>
    <comment_count>6</comment_count>
      <attachid>398194</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-05-01 16:01:58 -0700</bug_when>
    <thetext>Comment on attachment 398194
Patch

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

&gt; Source/WebKit/UIProcess/ProcessAssertion.h:-77
&gt; -    Validity validity() const { return m_validity; }

See removal here.

&gt;&gt; Source/WebKit/UIProcess/ios/ProcessAssertionIOS.mm:462
&gt;&gt; +    bool shouldHoldBackgroundTask = isValid() &amp;&amp; type() != ProcessAssertionType::Suspended;
&gt; 
&gt; It seems like this might be the only use of validity(). Should it be removed?

It was removed.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>398194</attachid>
            <date>2020-05-01 09:57:24 -0700</date>
            <delta_ts>2020-05-01 15:57:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211297-20200501095723.patch</filename>
            <type>text/plain</type>
            <size>8846</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwOTc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDA5NjVjNWQwMGUzZDY1ODYw
YmY5NDRiYzFmZTQyOTNiZTBhYmNkOTguLjZlYzZiOTk3MTdhYjJlODE0M2ZhOTJhN2E2N2RiZGE5
NTE2NTBlNGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzggQEAKKzIwMjAtMDUtMDEgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBQcm9jZXNzVGhyb3R0bGVy
IGZhaWxzIHRvIHJlLXRha2UgUHJvY2Vzc0Fzc2VydGlvbiBpZiB0aGUgcHJldmlvdXMgb25lIHdh
cyBpbnZhbGlkYXRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjExMjk3CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82MjU0MjQ2Mz4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBPdXIgUHJvY2Vzc0Fzc2Vy
dGlvbnMgbWF5IGdldCBpbnZhbGlkYXRlZCB1cG9uIGJhY2tncm91bmRpbmcgb2YgdGhlIGFwcC4g
V2hlbiB0aGUgYXBwIGJlY29tZXMKKyAgICAgICAgZm9yZWdyb3VuZCBhbmQgdGhlIFByb2Nlc3NU
aHJvdHRsZXIgdHJpZXMgdG8gdGFrZSBhIEZvcmVncm91bmQgYXNzZXJ0aW9uIGFzIGEgcmVzdWx0
LCBpdCB3b3VsZAorICAgICAgICBpbmNvcnJlY3RseSB0aGluayBpdCBhbHJlYWR5IGhhZCBzdWNo
IGFzc2VydGlvbiBhbmQgbm90IGRvIGFueXRoaW5nLCBldmVuIHRob3VnaCB0aGUgcHJldmlvdXMK
KyAgICAgICAgb25lIGlzIG5vIGxvbmdlciB2YWxpZC4gQXMgYSByZXN1bHQsIHRoZSBjaGlsZCBw
cm9jZXNzZXMgd291bGQgc3RheSBzdXNwZW5kZWQgZXZlbiB0aG91Z2ggdGhlCisgICAgICAgIGFw
cCB3YXMgZm9yZWdyb3VuZGVkLgorCisgICAgICAgIFRvIGFkZHJlc3MgdGhlIGlzc3VlLCBhZGQg
YSBpc1ZhbGlkKCkgbWV0aG9kIHRvIFByb2Nlc3NBc3NlcnRpb24oKSBhbmQgY2hlY2sgaXQgaW4K
KyAgICAgICAgUHJvY2Vzc1Rocm90dGxlcjo6c2V0QXNzZXJ0aW9uVHlwZSgpIHRvIGRldGVybWlu
ZSBpZiB3ZSBuZWVkIHRvIHJlLXRha2UgYW4gYXNzZXJ0aW9uIG9yIG5vdC4KKyAgICAgICAgV2Ug
YWxzbyBpbnZhbGlkYXRlIGFsbCBwZW5kaW5nIFByb2Nlc3NUaHJvdHRsZXIgYWN0aXZpdGllcyB1
cG9uIFByb2Nlc3NBc3NlcnRpb24gaW52YWxpZGF0aW9uCisgICAgICAgIGZvciBnb29kIG1lYXN1
cmUuIFRoaXMgd2F5LCB0aGUgaG9sZGVycyBvZiB0aGVzZSBhY3Rpdml0aWVzIHdpbGwgYmUgYWJs
ZSB0byByZWx5IG9uCisgICAgICAgIEFjdGl2aXR5Ojppc1ZhbGlkKCkgdG8gZGV0ZXJtaW5lIGlm
IHRoZXkgbmVlZCB0byByZS10YWtlIHRoZWlyIGFjdGl2aXRpZXMgb3Igbm90LgorCisgICAgICAg
ICogUGxhdGZvcm0vc3BpL2lvcy9Bc3NlcnRpb25TZXJ2aWNlc1NQSS5oOgorICAgICAgICAqIFBs
YXRmb3JtL3NwaS9pb3MvUnVubmluZ0JvYXJkU2VydmljZXNTUEkuaDoKKyAgICAgICAgKiBVSVBy
b2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NBc3Nl
cnRpb246OmlzVmFsaWQgY29uc3QpOgorICAgICAgICAqIFVJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0
aW9uLmg6CisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NBc3NlcnRpb246OnZhbGlkaXR5IGNvbnN0
KTogRGVsZXRlZC4KKyAgICAgICAgKiBVSVByb2Nlc3MvUHJvY2Vzc1Rocm90dGxlci5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6OlByb2Nlc3NUaHJvdHRsZXI6OnNldEFzc2VydGlvblR5cGUpOgorICAg
ICAgICAoV2ViS2l0OjpQcm9jZXNzVGhyb3R0bGVyOjphc3NlcnRpb25XYXNJbnZhbGlkYXRlZCk6
CisgICAgICAgICogVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXIuaDoKKyAgICAgICAgKiBVSVBy
b2Nlc3MvaW9zL1Byb2Nlc3NBc3NlcnRpb25JT1MubW06CisgICAgICAgIChXZWJLaXQ6OlByb2Nl
c3NBc3NlcnRpb246OnByb2Nlc3NBc3NlcnRpb25XYXNJbnZhbGlkYXRlZCk6CisgICAgICAgIChX
ZWJLaXQ6OlByb2Nlc3NBc3NlcnRpb246OmlzVmFsaWQgY29uc3QpOgorICAgICAgICAoV2ViS2l0
OjpQcm9jZXNzQW5kVUlBc3NlcnRpb246OnVwZGF0ZVJ1bkluQmFja2dyb3VuZENvdW50KToKKwog
MjAyMC0wNC0zMCAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAogICAgICAg
ICBSRUdSRVNTSU9OIChyMjYwOTMyKTogQVNTRVJUSU9OIEZBSUxFRDogb2sgaW4gd2Via2l0OjpT
YW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHkgZm9yIDMgdGVzdHMKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vc3BpL2lvcy9Bc3NlcnRpb25TZXJ2aWNlc1NQSS5o
IGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9zcGkvaW9zL0Fzc2VydGlvblNlcnZpY2VzU1BJLmgK
aW5kZXggYTY3ZjQxZmY5NTc1MWJiZjk4MzQxZTE0NDQ5OTY5ZmYzMjBmYjg3MS4uNTc1ZTg4MDJm
YTg2NTIzM2NmNzE2NDA5Zjc0MjI2Y2UwNzdmMjIyOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9QbGF0Zm9ybS9zcGkvaW9zL0Fzc2VydGlvblNlcnZpY2VzU1BJLmgKKysrIGIvU291cmNlL1dl
YktpdC9QbGF0Zm9ybS9zcGkvaW9zL0Fzc2VydGlvblNlcnZpY2VzU1BJLmgKQEAgLTg2LDYgKzg2
LDcgQEAgdHlwZWRlZiB2b2lkICheQktTUHJvY2Vzc0Fzc2VydGlvbkFjcXVpc2l0aW9uSGFuZGxl
cikoQk9PTCBhY3F1aXJlZCk7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgYXNzaWduKSBCS1NQcm9j
ZXNzQXNzZXJ0aW9uRmxhZ3MgZmxhZ3M7CiAtIChpZClpbml0V2l0aFBJRDoocGlkX3QpcGlkIGZs
YWdzOihCS1NQcm9jZXNzQXNzZXJ0aW9uRmxhZ3MpZmxhZ3MgcmVhc29uOihCS1NQcm9jZXNzQXNz
ZXJ0aW9uUmVhc29uKXJlYXNvbiBuYW1lOihOU1N0cmluZyAqKW5hbWUgd2l0aEhhbmRsZXI6KEJL
U1Byb2Nlc3NBc3NlcnRpb25BY3F1aXNpdGlvbkhhbmRsZXIpaGFuZGxlcjsKIAorQHByb3BlcnR5
IChub25hdG9taWMsIHJlYWRvbmx5KSBCT09MIHZhbGlkOwogQHByb3BlcnR5IChub25hdG9taWMs
IGNvcHkpIEJLU1Byb2Nlc3NBc3NlcnRpb25JbnZhbGlkYXRpb25IYW5kbGVyIGludmFsaWRhdGlv
bkhhbmRsZXI7CiAtICh2b2lkKWludmFsaWRhdGU7CiBAZW5kCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1BsYXRmb3JtL3NwaS9pb3MvUnVubmluZ0JvYXJkU2VydmljZXNTUEkuaCBiL1NvdXJj
ZS9XZWJLaXQvUGxhdGZvcm0vc3BpL2lvcy9SdW5uaW5nQm9hcmRTZXJ2aWNlc1NQSS5oCmluZGV4
IDFhMDM4NDM0NzZhYzUyNGI2OGFlY2I0MGI0YWQxMzA1MTNhZTZhNTIuLmMyNDlkN2YwZjYyNzNm
NzQyODg2NDU2Mjk3ZWRlODU3MDk5OWUyZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvUGxh
dGZvcm0vc3BpL2lvcy9SdW5uaW5nQm9hcmRTZXJ2aWNlc1NQSS5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvUGxhdGZvcm0vc3BpL2lvcy9SdW5uaW5nQm9hcmRTZXJ2aWNlc1NQSS5oCkBAIC01MCw2ICs1
MCw4IEBACiAtICh2b2lkKWludmFsaWRhdGU7CiAtICh2b2lkKWFkZE9ic2VydmVyOihpZCA8UkJT
QXNzZXJ0aW9uT2JzZXJ2aW5nPilvYnNlcnZlcjsKIC0gKHZvaWQpcmVtb3ZlT2JzZXJ2ZXI6KGlk
IDxSQlNBc3NlcnRpb25PYnNlcnZpbmc+KW9ic2VydmVyOworCitAcHJvcGVydHkgKG5vbmF0b21p
YywgcmVhZG9ubHksIGFzc2lnbiwgZ2V0dGVyPWlzVmFsaWQpIEJPT0wgdmFsaWQ7CiBAZW5kCiAK
IEBwcm90b2NvbCBSQlNBc3NlcnRpb25PYnNlcnZpbmcgPE5TT2JqZWN0PgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmNwcAppbmRleCBlYzZkMjllODViOTU0Mzhj
ZWJlNmU0NmU4ZWNhM2Y3YjYwOGUwYWIzLi44MzBhYWYwZGQxMTUwZDQzOGJjYjVhN2YzMzRlYWFh
ZDUyN2Q3MjE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNz
ZXJ0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9u
LmNwcApAQCAtNDAsNiArNDAsMTEgQEAgUHJvY2Vzc0Fzc2VydGlvbjo6UHJvY2Vzc0Fzc2VydGlv
bihQcm9jZXNzSUQgcGlkLCBjb25zdCBTdHJpbmcmLCBQcm9jZXNzQXNzZXJ0aW8KIAogUHJvY2Vz
c0Fzc2VydGlvbjo6flByb2Nlc3NBc3NlcnRpb24oKSA9IGRlZmF1bHQ7CiAKK2Jvb2wgUHJvY2Vz
c0Fzc2VydGlvbjo6aXNWYWxpZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIHRydWU7Cit9CisKIH0g
Ly8gbmFtZXNwYWNlIFdlYktpdAogCiAjZW5kaWYgLy8gIVBMQVRGT1JNKElPU19GQU1JTFkpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmggYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmgKaW5kZXggNGIwYjdmYjM1
YTIyOGFjNWZmYTZhODgzZmRiNmQxZTJkMDE4NzYxMS4uMDdlMjk1YmJmMGFmNWE3ODljZWNmNjAz
ZjNhZjM1OGYxODBjNGRlMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJv
Y2Vzc0Fzc2VydGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3Nl
cnRpb24uaApAQCAtNTksNyArNTksOSBAQCBwdWJsaWM6CiAgICAgY2xhc3MgQ2xpZW50IHsKICAg
ICBwdWJsaWM6CiAgICAgICAgIHZpcnR1YWwgfkNsaWVudCgpIHsgfQorCiAgICAgICAgIHZpcnR1
YWwgdm9pZCB1aUFzc2VydGlvbldpbGxFeHBpcmVJbW1pbmVudGx5KCkgPSAwOworICAgICAgICB2
aXJ0dWFsIHZvaWQgYXNzZXJ0aW9uV2FzSW52YWxpZGF0ZWQoKSA9IDA7CiAgICAgfTsKIAogICAg
IFByb2Nlc3NBc3NlcnRpb24oUHJvY2Vzc0lELCBjb25zdCBTdHJpbmcmIHJlYXNvbiwgUHJvY2Vz
c0Fzc2VydGlvblR5cGUpOwpAQCAtNzEsMTEgKzczLDEwIEBAIHB1YmxpYzoKICAgICBQcm9jZXNz
QXNzZXJ0aW9uVHlwZSB0eXBlKCkgY29uc3QgeyByZXR1cm4gbV9hc3NlcnRpb25UeXBlOyB9CiAg
ICAgUHJvY2Vzc0lEIHBpZCgpIGNvbnN0IHsgcmV0dXJuIG1fcGlkOyB9CiAKKyAgICBib29sIGlz
VmFsaWQoKSBjb25zdDsKKwogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiBwcm90ZWN0ZWQ6Ci0g
ICAgZW51bSBjbGFzcyBWYWxpZGl0eSB7IE5vLCBZZXMsIFVuc2V0IH07Ci0gICAgVmFsaWRpdHkg
dmFsaWRpdHkoKSBjb25zdCB7IHJldHVybiBtX3ZhbGlkaXR5OyB9Ci0KICAgICB2aXJ0dWFsIHZv
aWQgcHJvY2Vzc0Fzc2VydGlvbldhc0ludmFsaWRhdGVkKCk7CiAjZW5kaWYKIApAQCAtODYsNyAr
ODcsNiBAQCBwcml2YXRlOgogICAgIFJldGFpblB0cjxSQlNBc3NlcnRpb24+IG1fcmJzQXNzZXJ0
aW9uOwogICAgIFJldGFpblB0cjxXS1JCU0Fzc2VydGlvbkRlbGVnYXRlPiBtX2RlbGVnYXRlOwog
ICAgIFJldGFpblB0cjxCS1NQcm9jZXNzQXNzZXJ0aW9uPiBtX2Jrc0Fzc2VydGlvbjsgLy8gTGVn
YWN5LgotICAgIFZhbGlkaXR5IG1fdmFsaWRpdHkgeyBWYWxpZGl0eTo6VW5zZXQgfTsKICNlbmRp
ZgogICAgIENsaWVudCogbV9jbGllbnQgeyBudWxscHRyIH07CiB9OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc1Rocm90dGxlci5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9Qcm9jZXNzVGhyb3R0bGVyLmNwcAppbmRleCA5OGQ0MDIyODhjZmVkZTQ3OWY0
NTEzZDdlYTJlNGY1NzY4ZjE4NGFhLi5kMWE5MGU2YTdiY2I1ODhiMzdhYzc4YTJjNGYyZTkxNjUz
NWIwODdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzVGhyb3R0
bGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzVGhyb3R0bGVyLmNw
cApAQCAtMTI0LDcgKzEyNCw3IEBAIFN0cmluZyBQcm9jZXNzVGhyb3R0bGVyOjphc3NlcnRpb25O
YW1lKFByb2Nlc3NBc3NlcnRpb25UeXBlIHR5cGUpIGNvbnN0CiAKIHZvaWQgUHJvY2Vzc1Rocm90
dGxlcjo6c2V0QXNzZXJ0aW9uVHlwZShQcm9jZXNzQXNzZXJ0aW9uVHlwZSBuZXdUeXBlKQogewot
ICAgIGlmIChtX2Fzc2VydGlvbiAmJiBtX2Fzc2VydGlvbi0+dHlwZSgpID09IG5ld1R5cGUpCisg
ICAgaWYgKG1fYXNzZXJ0aW9uICYmIG1fYXNzZXJ0aW9uLT5pc1ZhbGlkKCkgJiYgbV9hc3NlcnRp
b24tPnR5cGUoKSA9PSBuZXdUeXBlKQogICAgICAgICByZXR1cm47CiAKICAgICBQUk9DRVNTVEhS
T1RUTEVSX1JFTEVBU0VfTE9HKCJzZXRBc3NlcnRpb25UeXBlOiBVcGRhdGluZyBwcm9jZXNzIGFz
c2VydGlvbiB0eXBlIHRvICV1IChmb3JlZ3JvdW5kQWN0aXZpdGllczogJXUsIGJhY2tncm91bmRB
Y3Rpdml0aWVzOiAldSkiLCBuZXdUeXBlLCBtX2ZvcmVncm91bmRBY3Rpdml0aWVzLnNpemUoKSwg
bV9iYWNrZ3JvdW5kQWN0aXZpdGllcy5zaXplKCkpOwpAQCAtMjI1LDYgKzIyNSwxMiBAQCB2b2lk
IFByb2Nlc3NUaHJvdHRsZXI6OnVpQXNzZXJ0aW9uV2lsbEV4cGlyZUltbWluZW50bHkoKQogICAg
IG1fcHJlcGFyZVRvU3VzcGVuZFRpbWVvdXRUaW1lci5zdG9wKCk7CiB9CiAKK3ZvaWQgUHJvY2Vz
c1Rocm90dGxlcjo6YXNzZXJ0aW9uV2FzSW52YWxpZGF0ZWQoKQoreworICAgIFBST0NFU1NUSFJP
VFRMRVJfUkVMRUFTRV9MT0coImFzc2VydGlvbldhc0ludmFsaWRhdGVkOiIpOworICAgIGludmFs
aWRhdGVBbGxBY3Rpdml0aWVzKCk7Cit9CisKIGJvb2wgUHJvY2Vzc1Rocm90dGxlcjo6aXNWYWxp
ZEJhY2tncm91bmRBY3Rpdml0eShjb25zdCBQcm9jZXNzVGhyb3R0bGVyOjpBY3Rpdml0eVZhcmlh
bnQmIGFjdGl2aXR5KQogewogICAgIGlmICghV1RGOjpob2xkc19hbHRlcm5hdGl2ZTxVbmlxdWVS
ZWY8UHJvY2Vzc1Rocm90dGxlcjo6QmFja2dyb3VuZEFjdGl2aXR5Pj4oYWN0aXZpdHkpKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc1Rocm90dGxlci5oIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc1Rocm90dGxlci5oCmluZGV4IDk2YmU1MzZmZjlh
MGQzNmE4MWE0ZmJkNGFkMmRjOTk0ODgwYTA2MTkuLjhhMjEyZTUwNzU1ZjRlY2M4NWYxNDI3ZTIz
MTFmN2I2MzYyNGI2ZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nl
c3NUaHJvdHRsZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzVGhyb3R0
bGVyLmgKQEAgLTEzNyw3ICsxMzcsOCBAQCBwcml2YXRlOgogICAgIFN0cmluZyBhc3NlcnRpb25O
YW1lKFByb2Nlc3NBc3NlcnRpb25UeXBlKSBjb25zdDsKIAogICAgIC8vIFByb2Nlc3NBc3NlcnRp
b25DbGllbnQKLSAgICB2b2lkIHVpQXNzZXJ0aW9uV2lsbEV4cGlyZUltbWluZW50bHkoKSBvdmVy
cmlkZTsKKyAgICB2b2lkIHVpQXNzZXJ0aW9uV2lsbEV4cGlyZUltbWluZW50bHkoKSBmaW5hbDsK
KyAgICB2b2lkIGFzc2VydGlvbldhc0ludmFsaWRhdGVkKCkgZmluYWw7CiAKICAgICB2b2lkIGNs
ZWFyUGVuZGluZ1JlcXVlc3RUb1N1c3BlbmQoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvaW9zL1Byb2Nlc3NBc3NlcnRpb25JT1MubW0gYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9pb3MvUHJvY2Vzc0Fzc2VydGlvbklPUy5tbQppbmRleCA1YTRmZTViZWQwZTQ4M2Fm
MTdlYzZiNDE4MDNjNzgyZTM1NDczZjk3Li5lZjljY2Q5YWJiODEyMTQ3NmM1MjdlOGQ3YTRiMGI1
Y2UwNWUxMjczIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUHJvY2Vz
c0Fzc2VydGlvbklPUy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUHJvY2Vz
c0Fzc2VydGlvbklPUy5tbQpAQCAtNDQyLDEyICs0NDIsMjQgQEAgdm9pZCBQcm9jZXNzQXNzZXJ0
aW9uOjpwcm9jZXNzQXNzZXJ0aW9uV2FzSW52YWxpZGF0ZWQoKQogICAgIEFTU0VSVChSdW5Mb29w
Ojppc01haW4oKSk7CiAgICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIFBy
b2Nlc3NBc3NlcnRpb246OnByb2Nlc3NBc3NlcnRpb25XYXNJbnZhbGlkYXRlZCgpIFBJRDogJWQi
LCB0aGlzLCBtX3BpZCk7CiAKLSAgICBtX3ZhbGlkaXR5ID0gVmFsaWRpdHk6Ok5vOworICAgIGlm
IChhdXRvKiBjbGllbnQgPSB0aGlzLT5jbGllbnQoKSkKKyAgICAgICAgY2xpZW50LT5hc3NlcnRp
b25XYXNJbnZhbGlkYXRlZCgpOworfQorCitib29sIFByb2Nlc3NBc3NlcnRpb246OmlzVmFsaWQo
KSBjb25zdAoreworICAgIGlmIChtX3Jic0Fzc2VydGlvbikKKyAgICAgICAgcmV0dXJuIG1fcmJz
QXNzZXJ0aW9uLmdldCgpLnZhbGlkOworCisgICAgaWYgKG1fYmtzQXNzZXJ0aW9uKQorICAgICAg
ICByZXR1cm4gbV9ia3NBc3NlcnRpb24uZ2V0KCkudmFsaWQ7CisKKyAgICByZXR1cm4gZmFsc2U7
CiB9CiAKIHZvaWQgUHJvY2Vzc0FuZFVJQXNzZXJ0aW9uOjp1cGRhdGVSdW5JbkJhY2tncm91bmRD
b3VudCgpCiB7Ci0gICAgYm9vbCBzaG91bGRIb2xkQmFja2dyb3VuZFRhc2sgPSB2YWxpZGl0eSgp
ICE9IFZhbGlkaXR5OjpObyAmJiB0eXBlKCkgIT0gUHJvY2Vzc0Fzc2VydGlvblR5cGU6OlN1c3Bl
bmRlZDsKKyAgICBib29sIHNob3VsZEhvbGRCYWNrZ3JvdW5kVGFzayA9IGlzVmFsaWQoKSAmJiB0
eXBlKCkgIT0gUHJvY2Vzc0Fzc2VydGlvblR5cGU6OlN1c3BlbmRlZDsKICAgICBpZiAobV9pc0hv
bGRpbmdCYWNrZ3JvdW5kVGFzayA9PSBzaG91bGRIb2xkQmFja2dyb3VuZFRhc2spCiAgICAgICAg
IHJldHVybjsKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>