<?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>159284</bug_id>
          
          <creation_ts>2016-06-29 16:29:02 -0700</creation_ts>
          <short_desc>ProcessAssertion shouldn&apos;t keep UI app runnable if BKSProcessAssertion is invalid</short_desc>
          <delta_ts>2016-06-30 11:16:19 -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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>159280</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Gavin Barraclough">barraclough</reporter>
          <assigned_to name="Gavin Barraclough">barraclough</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1206553</commentid>
    <comment_count>0</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2016-06-29 16:29:02 -0700</bug_when>
    <thetext>First cut of this will only handle the case where the assertion is invalid from the start; Chris is going to add code to listen for the assertion becoming invalid.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1206555</commentid>
    <comment_count>1</comment_count>
      <attachid>282391</attachid>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2016-06-29 16:36:41 -0700</bug_when>
    <thetext>Created attachment 282391
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1206556</commentid>
    <comment_count>2</comment_count>
      <attachid>282391</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-29 16:42:13 -0700</bug_when>
    <thetext>Comment on attachment 282391
WIP

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

&gt; Source/WebKit2/UIProcess/ProcessAssertion.h:61
&gt; +    bool isValid();

Could be const?

&gt; Source/WebKit2/UIProcess/ProcessAssertion.h:85
&gt; +    bool m_isHoldingBackgroundAssertionOnApp : false;

{ false }

Also, do we need the &quot;OnApp&quot; suffix?

&gt; Source/WebKit2/UIProcess/ios/ProcessAssertionIOS.mm:177
&gt; +    return m_assertion-&gt;valid;

m_assertion.get().valid</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1206560</commentid>
    <comment_count>3</comment_count>
      <attachid>282391</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-29 16:54:58 -0700</bug_when>
    <thetext>Comment on attachment 282391
WIP

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

&gt;&gt; Source/WebKit2/UIProcess/ios/ProcessAssertionIOS.mm:177
&gt;&gt; +    return m_assertion-&gt;valid;
&gt; 
&gt; m_assertion.get().valid

Also, for this to build with public SDK,  I think we&apos;ll need to add the following to BKSProcessAssertion @interface in ApplicationServicesSPI.h:
@property (nonatomic, readonly) BOOL valid;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1206597</commentid>
    <comment_count>4</comment_count>
      <attachid>282391</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-29 18:49:55 -0700</bug_when>
    <thetext>Comment on attachment 282391
WIP

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

&gt;&gt;&gt; Source/WebKit2/UIProcess/ios/ProcessAssertionIOS.mm:177
&gt;&gt;&gt; +    return m_assertion-&gt;valid;
&gt;&gt; 
&gt;&gt; m_assertion.get().valid
&gt; 
&gt; Also, for this to build with public SDK,  I think we&apos;ll need to add the following to BKSProcessAssertion @interface in ApplicationServicesSPI.h:
&gt; @property (nonatomic, readonly) BOOL valid;

Unfortunately, this causes some problems because valid is false until the assertion is actually acquired.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1206603</commentid>
    <comment_count>5</comment_count>
      <attachid>282391</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-29 18:54:56 -0700</bug_when>
    <thetext>Comment on attachment 282391
WIP

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

&gt;&gt;&gt;&gt; Source/WebKit2/UIProcess/ios/ProcessAssertionIOS.mm:177
&gt;&gt;&gt;&gt; +    return m_assertion-&gt;valid;
&gt;&gt;&gt; 
&gt;&gt;&gt; m_assertion.get().valid
&gt;&gt; 
&gt;&gt; Also, for this to build with public SDK,  I think we&apos;ll need to add the following to BKSProcessAssertion @interface in ApplicationServicesSPI.h:
&gt;&gt; @property (nonatomic, readonly) BOOL valid;
&gt; 
&gt; Unfortunately, this causes some problems because valid is false until the assertion is actually acquired.

In particular, isValid() always returns false when updateRunInBackgroundCount() is called from the ProcessAndUIAssertion() constructor.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1206772</commentid>
    <comment_count>6</comment_count>
      <attachid>282450</attachid>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2016-06-30 10:34:25 -0700</bug_when>
    <thetext>Created attachment 282450
Fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1206775</commentid>
    <comment_count>7</comment_count>
      <attachid>282450</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-30 10:43:22 -0700</bug_when>
    <thetext>Comment on attachment 282450
Fix

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

r=me

&gt; Source/WebKit2/ChangeLog:3
&gt; +        ProcessAssertion shouldn&apos;t keep UI app runnable if BKSProcessAssertion is invalid

Maybe we want to update the title given the smaller scope of the change now?

&gt; Source/WebKit2/UIProcess/ios/ProcessAssertionIOS.mm:181
&gt; +    if (m_isHoldingBackgroundAssertion &amp;&amp; !shouldHoldBackgroundAssertion)

else if ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1206784</commentid>
    <comment_count>8</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2016-06-30 11:16:19 -0700</bug_when>
    <thetext>Committed revision 202690.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>282391</attachid>
            <date>2016-06-29 16:36:41 -0700</date>
            <delta_ts>2016-06-30 10:34:25 -0700</delta_ts>
            <desc>WIP</desc>
            <filename>159284.1.patch</filename>
            <type>text/plain</type>
            <size>4865</size>
            <attacher name="Gavin Barraclough">barraclough</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDIwMjY1OCkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMxIEBACisyMDE2LTA2LTI5ICBHYXZpbiBC
YXJyYWNsb3VnaCAgPGJhcnJhY2xvdWdoQGFwcGxlLmNvbT4KKworICAgICAgICBQcm9jZXNzQXNz
ZXJ0aW9uIHNob3VsZG4ndCBrZWVwIFVJIGFwcCBydW5uYWJsZSBpZiBCS1NQcm9jZXNzQXNzZXJ0
aW9uIGlzIGludmFsaWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE1OTI4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEZhY3RvciBvdXQgY29kZSB0aGF0IGhhbmRsZXMgdGFraW5nIGEgYmFja2dyb3VuZCBh
c3NlcnRpb24gb24gdGhlIFVJIGFwcCBpbnRvCisgICAgICAgIFByb2Nlc3NBbmRVSUFzc2VydGlv
bjo6dXBkYXRlUnVuSW5CYWNrZ3JvdW5kQ291bnQgaGVscGVyLCB0aGVuIG1ha2UgdGhpcyBhbHNv
CisgICAgICAgIGNoZWNrIHdoZXRoZXIgdGhlIGFzc2VydGlvbiBpcyB2YWxpZC4KKworICAgICAg
ICAqIFVJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmg6CisgICAgICAgIChXZWJLaXQ6OlByb2Nl
c3NBc3NlcnRpb246OnN0YXRlKToKKyAgICAgICAgICAgIC0gQWRkZWQgUHJvY2Vzc0Fzc2VydGlv
bjo6aXNWYWxpZAorICAgICAgICAgICAgLSBBZGRlZCBQcm9jZXNzQW5kVUlBc3NlcnRpb246OnVw
ZGF0ZVJ1bkluQmFja2dyb3VuZENvdW50CisgICAgICAgICAgICAtIEFkZGVkIFByb2Nlc3NBbmRV
SUFzc2VydGlvbjo6bV9pc0hvbGRpbmdCYWNrZ3JvdW5kQXNzZXJ0aW9uT25BcHAKKyAgICAgICAg
KiBVSVByb2Nlc3MvaW9zL1Byb2Nlc3NBc3NlcnRpb25JT1MubW06CisgICAgICAgIChXZWJLaXQ6
OlByb2Nlc3NBc3NlcnRpb246OmlzVmFsaWQpOgorICAgICAgICAgICAgLSBhZGRlZCBhY2Nlc3Nv
ciB0byBjaGVjayB0aGUgdmFsaWQgYml0IGZyb20gQktTUHJvY2Vzc0Fzc2VydGlvbgorICAgICAg
ICAoV2ViS2l0OjpQcm9jZXNzQW5kVUlBc3NlcnRpb246OnVwZGF0ZVJ1bkluQmFja2dyb3VuZENv
dW50KToKKyAgICAgICAgICAgIC0gaGVscGVyIHRvIG1hbmFnZSBjYWxscyB0byBpbmNyZW1lbnRO
ZWVkc1RvUnVuSW5CYWNrZ3JvdW5kQ291bnQvZGVjcmVtZW50TmVlZHNUb1J1bkluQmFja2dyb3Vu
ZENvdW50CisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NBbmRVSUFzc2VydGlvbjo6UHJvY2Vzc0Fu
ZFVJQXNzZXJ0aW9uKToKKyAgICAgICAgICAgIC0gY2FsbCB1cGRhdGVSdW5JbkJhY2tncm91bmRD
b3VudAorICAgICAgICAoV2ViS2l0OjpQcm9jZXNzQW5kVUlBc3NlcnRpb246On5Qcm9jZXNzQW5k
VUlBc3NlcnRpb24pOgorICAgICAgICAgICAgY2hhbmdlZCB0byB1c2UgbV9pc0hvbGRpbmdCYWNr
Z3JvdW5kQXNzZXJ0aW9uT25BcHAKKyAgICAgICAgKFdlYktpdDo6UHJvY2Vzc0FuZFVJQXNzZXJ0
aW9uOjpzZXRTdGF0ZSk6CisgICAgICAgICAgICAtIGNhbGwgdXBkYXRlUnVuSW5CYWNrZ3JvdW5k
Q291bnQKKwogMjAxNi0wNi0yOSAgQmV0aCBEYWtpbiAgPGJkYWtpbkBhcHBsZS5jb20+CiAKICAg
ICAgICAgQWRkIG1lZGlhX2ljb24gdG8gV2ViS2l0MgpJbmRleDogU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5oCShyZXZpc2lvbiAyMDI2NTMpCisrKyBTb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC01
Niw2ICs1NiwxMSBAQCBwdWJsaWM6CiAgICAgQXNzZXJ0aW9uU3RhdGUgc3RhdGUoKSBjb25zdCB7
IHJldHVybiBtX2Fzc2VydGlvblN0YXRlOyB9CiAgICAgdm9pZCBzZXRTdGF0ZShBc3NlcnRpb25T
dGF0ZSk7CiAKKyNpZiBQTEFURk9STShJT1MpICYmICFQTEFURk9STShJT1NfU0lNVUxBVE9SKQor
cHJvdGVjdGVkOgorICAgIGJvb2wgaXNWYWxpZCgpOworI2VuZGlmCisKIHByaXZhdGU6CiAjaWYg
UExBVEZPUk0oSU9TKSAmJiAhUExBVEZPUk0oSU9TX1NJTVVMQVRPUikKICAgICBSZXRhaW5QdHI8
QktTUHJvY2Vzc0Fzc2VydGlvbj4gbV9hc3NlcnRpb247CkBAIC03Miw2ICs3NywxMyBAQCBwdWJs
aWM6CiAgICAgdm9pZCBzZXRDbGllbnQoUHJvY2Vzc0Fzc2VydGlvbkNsaWVudCYpOwogCiAgICAg
dm9pZCBzZXRTdGF0ZShBc3NlcnRpb25TdGF0ZSk7CisKKyNpZiBQTEFURk9STShJT1MpCitwcml2
YXRlOgorICAgIHZvaWQgdXBkYXRlUnVuSW5CYWNrZ3JvdW5kQ291bnQoKTsKKworICAgIGJvb2wg
bV9pc0hvbGRpbmdCYWNrZ3JvdW5kQXNzZXJ0aW9uT25BcHAgOiBmYWxzZTsKKyNlbmRpZgogfTsK
ICAgICAKIH0KSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvUHJvY2Vzc0Fzc2Vy
dGlvbklPUy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1By
b2Nlc3NBc3NlcnRpb25JT1MubW0JKHJldmlzaW9uIDIwMjY1MykKKysrIFNvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9pb3MvUHJvY2Vzc0Fzc2VydGlvbklPUy5tbQkod29ya2luZyBjb3B5KQpAQCAt
MTcyLDI3ICsxNzIsMzkgQEAgdm9pZCBQcm9jZXNzQXNzZXJ0aW9uOjpzZXRTdGF0ZShBc3NlcnRp
bwogICAgIFttX2Fzc2VydGlvbiBzZXRGbGFnczpmbGFnc0ZvclN0YXRlKGFzc2VydGlvblN0YXRl
KV07CiB9CiAKK2Jvb2wgUHJvY2Vzc0Fzc2VydGlvbjo6aXNWYWxpZCgpCit7CisgICAgcmV0dXJu
IG1fYXNzZXJ0aW9uLT52YWxpZDsKK30KKwordm9pZCBQcm9jZXNzQW5kVUlBc3NlcnRpb246OnVw
ZGF0ZVJ1bkluQmFja2dyb3VuZENvdW50KCkKK3sKKyAgICBib29sIHNob3VsZEhvbGRCYWNrZ3Jv
dW5kQXNzZXJ0aW9uT25BcHAgPSBzdGF0ZSgpICE9IEFzc2VydGlvblN0YXRlOjpTdXNwZW5kZWQg
JiYgaXNWYWxpZCgpOworCisgICAgaWYgKCFtX2lzSG9sZGluZ0JhY2tncm91bmRBc3NlcnRpb25P
bkFwcCAmJiBzaG91bGRIb2xkQmFja2dyb3VuZEFzc2VydGlvbk9uQXBwKQorICAgICAgICBbW1dL
UHJvY2Vzc0Fzc2VydGlvbkJhY2tncm91bmRUYXNrTWFuYWdlciBzaGFyZWRdIGluY3JlbWVudE5l
ZWRzVG9SdW5JbkJhY2tncm91bmRDb3VudF07CisgICAgaWYgKG1faXNIb2xkaW5nQmFja2dyb3Vu
ZEFzc2VydGlvbk9uQXBwICYmICFzaG91bGRIb2xkQmFja2dyb3VuZEFzc2VydGlvbk9uQXBwKQor
ICAgICAgICBbW1dLUHJvY2Vzc0Fzc2VydGlvbkJhY2tncm91bmRUYXNrTWFuYWdlciBzaGFyZWRd
IGRlY3JlbWVudE5lZWRzVG9SdW5JbkJhY2tncm91bmRDb3VudF07CisKKyAgICBtX2lzSG9sZGlu
Z0JhY2tncm91bmRBc3NlcnRpb25PbkFwcCA9IHNob3VsZEhvbGRCYWNrZ3JvdW5kQXNzZXJ0aW9u
T25BcHA7Cit9CisKIFByb2Nlc3NBbmRVSUFzc2VydGlvbjo6UHJvY2Vzc0FuZFVJQXNzZXJ0aW9u
KHBpZF90IHBpZCwgQXNzZXJ0aW9uU3RhdGUgYXNzZXJ0aW9uU3RhdGUpCiAgICAgOiBQcm9jZXNz
QXNzZXJ0aW9uKHBpZCwgYXNzZXJ0aW9uU3RhdGUpCiB7Ci0gICAgaWYgKGFzc2VydGlvblN0YXRl
ICE9IEFzc2VydGlvblN0YXRlOjpTdXNwZW5kZWQpCi0gICAgICAgIFtbV0tQcm9jZXNzQXNzZXJ0
aW9uQmFja2dyb3VuZFRhc2tNYW5hZ2VyIHNoYXJlZF0gaW5jcmVtZW50TmVlZHNUb1J1bkluQmFj
a2dyb3VuZENvdW50XTsKKyAgICB1cGRhdGVSdW5JbkJhY2tncm91bmRDb3VudCgpOwogfQogCiBQ
cm9jZXNzQW5kVUlBc3NlcnRpb246On5Qcm9jZXNzQW5kVUlBc3NlcnRpb24oKQogewotICAgIGlm
IChzdGF0ZSgpICE9IEFzc2VydGlvblN0YXRlOjpTdXNwZW5kZWQpCisgICAgaWYgKG1faXNIb2xk
aW5nQmFja2dyb3VuZEFzc2VydGlvbk9uQXBwKQogICAgICAgICBbW1dLUHJvY2Vzc0Fzc2VydGlv
bkJhY2tncm91bmRUYXNrTWFuYWdlciBzaGFyZWRdIGRlY3JlbWVudE5lZWRzVG9SdW5JbkJhY2tn
cm91bmRDb3VudF07CiB9CiAKIHZvaWQgUHJvY2Vzc0FuZFVJQXNzZXJ0aW9uOjpzZXRTdGF0ZShB
c3NlcnRpb25TdGF0ZSBhc3NlcnRpb25TdGF0ZSkKIHsKLSAgICBpZiAoKHN0YXRlKCkgPT0gQXNz
ZXJ0aW9uU3RhdGU6OlN1c3BlbmRlZCkgJiYgKGFzc2VydGlvblN0YXRlICE9IEFzc2VydGlvblN0
YXRlOjpTdXNwZW5kZWQpKQotICAgICAgICBbW1dLUHJvY2Vzc0Fzc2VydGlvbkJhY2tncm91bmRU
YXNrTWFuYWdlciBzaGFyZWRdIGluY3JlbWVudE5lZWRzVG9SdW5JbkJhY2tncm91bmRDb3VudF07
Ci0gICAgaWYgKChzdGF0ZSgpICE9IEFzc2VydGlvblN0YXRlOjpTdXNwZW5kZWQpICYmIChhc3Nl
cnRpb25TdGF0ZSA9PSBBc3NlcnRpb25TdGF0ZTo6U3VzcGVuZGVkKSkKLSAgICAgICAgW1tXS1By
b2Nlc3NBc3NlcnRpb25CYWNrZ3JvdW5kVGFza01hbmFnZXIgc2hhcmVkXSBkZWNyZW1lbnROZWVk
c1RvUnVuSW5CYWNrZ3JvdW5kQ291bnRdOwotCiAgICAgUHJvY2Vzc0Fzc2VydGlvbjo6c2V0U3Rh
dGUoYXNzZXJ0aW9uU3RhdGUpOworICAgIHVwZGF0ZVJ1bkluQmFja2dyb3VuZENvdW50KCk7CiB9
CiAKIHZvaWQgUHJvY2Vzc0FuZFVJQXNzZXJ0aW9uOjpzZXRDbGllbnQoUHJvY2Vzc0Fzc2VydGlv
bkNsaWVudCYgbmV3Q2xpZW50KQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>282450</attachid>
            <date>2016-06-30 10:34:25 -0700</date>
            <delta_ts>2016-06-30 10:43:22 -0700</delta_ts>
            <desc>Fix</desc>
            <filename>159284.2.patch</filename>
            <type>text/plain</type>
            <size>4260</size>
            <attacher name="Gavin Barraclough">barraclough</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDIwMjY1OCkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI5IEBACisyMDE2LTA2LTI5ICBHYXZpbiBC
YXJyYWNsb3VnaCAgPGJhcnJhY2xvdWdoQGFwcGxlLmNvbT4KKworICAgICAgICBQcm9jZXNzQXNz
ZXJ0aW9uIHNob3VsZG4ndCBrZWVwIFVJIGFwcCBydW5uYWJsZSBpZiBCS1NQcm9jZXNzQXNzZXJ0
aW9uIGlzIGludmFsaWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE1OTI4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEZhY3RvciBvdXQgY29kZSB0aGF0IGhhbmRsZXMgdGFraW5nIGEgYmFja2dyb3VuZCBh
c3NlcnRpb24gb24gdGhlIFVJIGFwcCBpbnRvCisgICAgICAgIFByb2Nlc3NBbmRVSUFzc2VydGlv
bjo6dXBkYXRlUnVuSW5CYWNrZ3JvdW5kQ291bnQgaGVscGVyLgorCisgICAgICAgIFRoaXMgcGF0
Y2gganVzdCBjbGVhbnVwIHRvIGVuYWJsZSBhIGZ1dGhlciBmaXguCisKKyAgICAgICAgKiBVSVBy
b2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5oOgorICAgICAgICAoV2ViS2l0OjpQcm9jZXNzQXNzZXJ0
aW9uOjpzdGF0ZSk6CisgICAgICAgICAgICAtIEFkZGVkIFByb2Nlc3NBbmRVSUFzc2VydGlvbjo6
dXBkYXRlUnVuSW5CYWNrZ3JvdW5kQ291bnQKKyAgICAgICAgICAgIC0gQWRkZWQgUHJvY2Vzc0Fu
ZFVJQXNzZXJ0aW9uOjptX2lzSG9sZGluZ0JhY2tncm91bmRBc3NlcnRpb25PbkFwcAorICAgICAg
ICAqIFVJUHJvY2Vzcy9pb3MvUHJvY2Vzc0Fzc2VydGlvbklPUy5tbToKKyAgICAgICAgKFdlYktp
dDo6UHJvY2Vzc0FuZFVJQXNzZXJ0aW9uOjp1cGRhdGVSdW5JbkJhY2tncm91bmRDb3VudCk6Cisg
ICAgICAgICAgICAtIGhlbHBlciB0byBtYW5hZ2UgY2FsbHMgdG8gaW5jcmVtZW50TmVlZHNUb1J1
bkluQmFja2dyb3VuZENvdW50L2RlY3JlbWVudE5lZWRzVG9SdW5JbkJhY2tncm91bmRDb3VudAor
ICAgICAgICAoV2ViS2l0OjpQcm9jZXNzQW5kVUlBc3NlcnRpb246OlByb2Nlc3NBbmRVSUFzc2Vy
dGlvbik6CisgICAgICAgICAgICAtIGNhbGwgdXBkYXRlUnVuSW5CYWNrZ3JvdW5kQ291bnQKKyAg
ICAgICAgKFdlYktpdDo6UHJvY2Vzc0FuZFVJQXNzZXJ0aW9uOjp+UHJvY2Vzc0FuZFVJQXNzZXJ0
aW9uKToKKyAgICAgICAgICAgIGNoYW5nZWQgdG8gdXNlIG1faXNIb2xkaW5nQmFja2dyb3VuZEFz
c2VydGlvbk9uQXBwCisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NBbmRVSUFzc2VydGlvbjo6c2V0
U3RhdGUpOgorICAgICAgICAgICAgLSBjYWxsIHVwZGF0ZVJ1bkluQmFja2dyb3VuZENvdW50CisK
IDIwMTYtMDYtMjkgIEJldGggRGFraW4gIDxiZGFraW5AYXBwbGUuY29tPgogCiAgICAgICAgIEFk
ZCBtZWRpYV9pY29uIHRvIFdlYktpdDIKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Q
cm9jZXNzQXNzZXJ0aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L1Byb2Nlc3NBc3NlcnRpb24uaAkocmV2aXNpb24gMjAyNjUzKQorKysgU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaAkod29ya2luZyBjb3B5KQpAQCAtNzIsNiArNzIs
MTMgQEAgcHVibGljOgogICAgIHZvaWQgc2V0Q2xpZW50KFByb2Nlc3NBc3NlcnRpb25DbGllbnQm
KTsKIAogICAgIHZvaWQgc2V0U3RhdGUoQXNzZXJ0aW9uU3RhdGUpOworCisjaWYgUExBVEZPUk0o
SU9TKSAmJiAhUExBVEZPUk0oSU9TX1NJTVVMQVRPUikKK3ByaXZhdGU6CisgICAgdm9pZCB1cGRh
dGVSdW5JbkJhY2tncm91bmRDb3VudCgpOworCisgICAgYm9vbCBtX2lzSG9sZGluZ0JhY2tncm91
bmRBc3NlcnRpb24geyBmYWxzZSB9OworI2VuZGlmCiB9OwogICAgIAogfQpJbmRleDogU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL2lvcy9Qcm9jZXNzQXNzZXJ0aW9uSU9TLm1tCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvUHJvY2Vzc0Fzc2VydGlvbklPUy5tbQko
cmV2aXNpb24gMjAyNjUzKQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9Qcm9jZXNz
QXNzZXJ0aW9uSU9TLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xNzIsMjcgKzE3MiwzNCBAQCB2b2lk
IFByb2Nlc3NBc3NlcnRpb246OnNldFN0YXRlKEFzc2VydGlvCiAgICAgW21fYXNzZXJ0aW9uIHNl
dEZsYWdzOmZsYWdzRm9yU3RhdGUoYXNzZXJ0aW9uU3RhdGUpXTsKIH0KIAordm9pZCBQcm9jZXNz
QW5kVUlBc3NlcnRpb246OnVwZGF0ZVJ1bkluQmFja2dyb3VuZENvdW50KCkKK3sKKyAgICBib29s
IHNob3VsZEhvbGRCYWNrZ3JvdW5kQXNzZXJ0aW9uID0gc3RhdGUoKSAhPSBBc3NlcnRpb25TdGF0
ZTo6U3VzcGVuZGVkOworCisgICAgaWYgKCFtX2lzSG9sZGluZ0JhY2tncm91bmRBc3NlcnRpb24g
JiYgc2hvdWxkSG9sZEJhY2tncm91bmRBc3NlcnRpb24pCisgICAgICAgIFtbV0tQcm9jZXNzQXNz
ZXJ0aW9uQmFja2dyb3VuZFRhc2tNYW5hZ2VyIHNoYXJlZF0gaW5jcmVtZW50TmVlZHNUb1J1bklu
QmFja2dyb3VuZENvdW50XTsKKyAgICBpZiAobV9pc0hvbGRpbmdCYWNrZ3JvdW5kQXNzZXJ0aW9u
ICYmICFzaG91bGRIb2xkQmFja2dyb3VuZEFzc2VydGlvbikKKyAgICAgICAgW1tXS1Byb2Nlc3NB
c3NlcnRpb25CYWNrZ3JvdW5kVGFza01hbmFnZXIgc2hhcmVkXSBkZWNyZW1lbnROZWVkc1RvUnVu
SW5CYWNrZ3JvdW5kQ291bnRdOworCisgICAgbV9pc0hvbGRpbmdCYWNrZ3JvdW5kQXNzZXJ0aW9u
ID0gc2hvdWxkSG9sZEJhY2tncm91bmRBc3NlcnRpb247Cit9CisKIFByb2Nlc3NBbmRVSUFzc2Vy
dGlvbjo6UHJvY2Vzc0FuZFVJQXNzZXJ0aW9uKHBpZF90IHBpZCwgQXNzZXJ0aW9uU3RhdGUgYXNz
ZXJ0aW9uU3RhdGUpCiAgICAgOiBQcm9jZXNzQXNzZXJ0aW9uKHBpZCwgYXNzZXJ0aW9uU3RhdGUp
CiB7Ci0gICAgaWYgKGFzc2VydGlvblN0YXRlICE9IEFzc2VydGlvblN0YXRlOjpTdXNwZW5kZWQp
Ci0gICAgICAgIFtbV0tQcm9jZXNzQXNzZXJ0aW9uQmFja2dyb3VuZFRhc2tNYW5hZ2VyIHNoYXJl
ZF0gaW5jcmVtZW50TmVlZHNUb1J1bkluQmFja2dyb3VuZENvdW50XTsKKyAgICB1cGRhdGVSdW5J
bkJhY2tncm91bmRDb3VudCgpOwogfQogCiBQcm9jZXNzQW5kVUlBc3NlcnRpb246On5Qcm9jZXNz
QW5kVUlBc3NlcnRpb24oKQogewotICAgIGlmIChzdGF0ZSgpICE9IEFzc2VydGlvblN0YXRlOjpT
dXNwZW5kZWQpCisgICAgaWYgKG1faXNIb2xkaW5nQmFja2dyb3VuZEFzc2VydGlvbikKICAgICAg
ICAgW1tXS1Byb2Nlc3NBc3NlcnRpb25CYWNrZ3JvdW5kVGFza01hbmFnZXIgc2hhcmVkXSBkZWNy
ZW1lbnROZWVkc1RvUnVuSW5CYWNrZ3JvdW5kQ291bnRdOwogfQogCiB2b2lkIFByb2Nlc3NBbmRV
SUFzc2VydGlvbjo6c2V0U3RhdGUoQXNzZXJ0aW9uU3RhdGUgYXNzZXJ0aW9uU3RhdGUpCiB7Ci0g
ICAgaWYgKChzdGF0ZSgpID09IEFzc2VydGlvblN0YXRlOjpTdXNwZW5kZWQpICYmIChhc3NlcnRp
b25TdGF0ZSAhPSBBc3NlcnRpb25TdGF0ZTo6U3VzcGVuZGVkKSkKLSAgICAgICAgW1tXS1Byb2Nl
c3NBc3NlcnRpb25CYWNrZ3JvdW5kVGFza01hbmFnZXIgc2hhcmVkXSBpbmNyZW1lbnROZWVkc1Rv
UnVuSW5CYWNrZ3JvdW5kQ291bnRdOwotICAgIGlmICgoc3RhdGUoKSAhPSBBc3NlcnRpb25TdGF0
ZTo6U3VzcGVuZGVkKSAmJiAoYXNzZXJ0aW9uU3RhdGUgPT0gQXNzZXJ0aW9uU3RhdGU6OlN1c3Bl
bmRlZCkpCi0gICAgICAgIFtbV0tQcm9jZXNzQXNzZXJ0aW9uQmFja2dyb3VuZFRhc2tNYW5hZ2Vy
IHNoYXJlZF0gZGVjcmVtZW50TmVlZHNUb1J1bkluQmFja2dyb3VuZENvdW50XTsKLQogICAgIFBy
b2Nlc3NBc3NlcnRpb246OnNldFN0YXRlKGFzc2VydGlvblN0YXRlKTsKKyAgICB1cGRhdGVSdW5J
bkJhY2tncm91bmRDb3VudCgpOwogfQogCiB2b2lkIFByb2Nlc3NBbmRVSUFzc2VydGlvbjo6c2V0
Q2xpZW50KFByb2Nlc3NBc3NlcnRpb25DbGllbnQmIG5ld0NsaWVudCkK
</data>
<flag name="review"
          id="306255"
          type_id="1"
          status="+"
          setter="cdumez"
    />
          </attachment>
      

    </bug>

</bugzilla>