<?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>135517</bug_id>
          
          <creation_ts>2014-08-01 12:09:47 -0700</creation_ts>
          <short_desc>Web Inspector: breakpoint resolved state should not depend on all breakpoints being enabled</short_desc>
          <delta_ts>2014-08-06 23:23:30 -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>Web Inspector</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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="Brian Burg">burg</reporter>
          <assigned_to name="Brian Burg">burg</assigned_to>
          <cc>graouts</cc>
    
    <cc>joepeck</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1026308</commentid>
    <comment_count>0</comment_count>
    <who name="Brian Burg">burg</who>
    <bug_when>2014-08-01 12:09:47 -0700</bug_when>
    <thetext>The breakpoint model consults WebInspector.debuggerManager.breakpointsEnabled, which prevents this invariant from being true.

Breakpoint.resolved should not be used as a crutch for styling breakpoint widgets.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1026309</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2014-08-01 12:10:36 -0700</bug_when>
    <thetext>&lt;rdar://problem/17887540&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1027263</commentid>
    <comment_count>2</comment_count>
    <who name="Brian Burg">burg</who>
    <bug_when>2014-08-06 12:55:51 -0700</bug_when>
    <thetext>Even with fixing breakpoint.resolved digging into DebuggerManager, this is stil not true.

There are several places where we set breakpoint.resolved = true|false temporarily, but don&apos;t detach or reattach a sourceCode to the location.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1027350</commentid>
    <comment_count>3</comment_count>
      <attachid>236153</attachid>
    <who name="Brian Burg">burg</who>
    <bug_when>2014-08-06 17:05:48 -0700</bug_when>
    <thetext>Created attachment 236153
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1027362</commentid>
    <comment_count>4</comment_count>
      <attachid>236153</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2014-08-06 17:26:33 -0700</bug_when>
    <thetext>Comment on attachment 236153
Patch

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

r=me assuming those lines just need to be swapped. If not, then this probably needs another patch.

&gt; Source/WebInspectorUI/UserInterface/Controllers/DebuggerManager.js:310
&gt; +            breakpoint.sourceCodeLocation.sourceCode = sourceCodeLocation.sourceCode;
&gt; +            var sourceCodeLocation = this._sourceCodeLocationFromPayload(location);

Err, something seems aloof here. Did the lines get swapped or is &quot;sourceCodeLocation&quot; coming from somewhere else in line 309 making line 310 unnecessary?

&gt; Source/WebInspectorUI/UserInterface/Views/SourceCodeTextEditor.js:389
&gt; +        for (breakpoint of breakpoints)

Needs &quot;var breakpoint&quot; or you&apos;ll leak a global.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1027363</commentid>
    <comment_count>5</comment_count>
      <attachid>236153</attachid>
    <who name="Brian Burg">burg</who>
    <bug_when>2014-08-06 17:32:18 -0700</bug_when>
    <thetext>Comment on attachment 236153
Patch

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

&gt;&gt; Source/WebInspectorUI/UserInterface/Controllers/DebuggerManager.js:310
&gt;&gt; +            var sourceCodeLocation = this._sourceCodeLocationFromPayload(location);
&gt; 
&gt; Err, something seems aloof here. Did the lines get swapped or is &quot;sourceCodeLocation&quot; coming from somewhere else in line 309 making line 310 unnecessary?

oops, you are right. It used to be hoisted outside the if.

&gt;&gt; Source/WebInspectorUI/UserInterface/Views/SourceCodeTextEditor.js:389
&gt;&gt; +        for (breakpoint of breakpoints)
&gt; 
&gt; Needs &quot;var breakpoint&quot; or you&apos;ll leak a global.

I &lt;3 JavaScript. Maybe.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1027428</commentid>
    <comment_count>6</comment_count>
    <who name="Brian Burg">burg</who>
    <bug_when>2014-08-06 23:23:30 -0700</bug_when>
    <thetext>Committed r172204: &lt;http://trac.webkit.org/changeset/172204&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>236153</attachid>
            <date>2014-08-06 17:05:48 -0700</date>
            <delta_ts>2014-08-06 17:32:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-135517-20140806170544.patch</filename>
            <type>text/plain</type>
            <size>16095</size>
            <attacher name="Brian Burg">burg</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTcyMTYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZwppbmRleCA5
ZjQwMjFjMDM4NDFiNGNkYTUxNDU2ZTk5NjFkOWUyMWI5Njg4OTQyLi5kZDMyNjQ3YzM3NTBkZDUy
Njc1OTk5MmY4NTc4MjdmZTM4NjgwZmIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKQEAgLTEs
NSArMSw1MiBAQAogMjAxNC0wOC0wNiAgQnJpYW4gSi4gQnVyZyAgPGJ1cmdAY3Mud2FzaGluZ3Rv
bi5lZHU+CiAKKyAgICAgICAgV2ViIEluc3BlY3RvcjogYnJlYWtwb2ludCByZXNvbHZlZCBzdGF0
ZSBzaG91bGQgbm90IGRlcGVuZCBvbiBhbGwgYnJlYWtwb2ludHMgYmVpbmcgZW5hYmxlZAorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM1NTE3CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUHJldmlvdXNseSwg
QnJlYWtwb2ludC5yZXNvbHZlZCByZXR1cm5lZCBmYWxzZSBpZiBhbGwgYnJlYWtwb2ludHMgd2Vy
ZSBkaXNhYmxlZCwgZXZlbiBpZgorICAgICAgICB0aGUgYnJlYWtwb2ludCBoYWQgYW4gYXNzb2Np
YXRlZCBTb3VyY2VDb2RlLiBUaGlzIHdhcyBhIHdlaXJkIGhhY2sgdG8gbWFrZSBpdCBlYXNpZXIg
dG8KKyAgICAgICAgc3R5bGUgYnJlYWtwb2ludCB3aWRnZXRzLiBUaGlzIG1hZGUgaXQgaGFyZCBm
b3Igb3RoZXIgY29kZSB0byBkZWFsIHdpdGggcmVzb2x2ZWQKKyAgICAgICAgYnJlYWtwb2ludHMg
dGhhdCB3ZXJlIGFsc28gZGlzYWJsZWQsIG9yIFNvdXJjZUNvZGVMb2NhdGlvbnMgdGhhdCByZXNv
bHZlIGFuZCB1bnJlc29sdmUuCisgICAgICAgIFRoaXMgcGF0Y2ggcmVtb3ZlcyB0aGF0IGNvbnNp
ZGVyYXRpb24gYW5kIGZpeGVzIHN0eWxlIHVwZGF0ZSBjb2RlIHRvIG1hbnVhbGx5IGNoZWNrIGlm
IGFsbAorICAgICAgICBicmVha3BvaW50cyBhcmUgYmVpbmcgc3VwcHJlc3NlZC4KKworICAgICAg
ICBUaGUgY29kZSBub3cgZW5mb3JjZXMgdGhhdCBhIEJyZWFrcG9pbnQgbXVzdCBoYXZlIGEgU291
cmNlQ29kZSBiZWZvcmUgaXQgY2FuIGJlIHJlc29sdmVkLgorICAgICAgICAoQXMgYSBwZXJmb3Jt
YW5jZSBvcHRpbWl6YXRpb24gd2hlbiBsb2FkaW5nIHRoZSBpbml0aWFsIGZyYW1lIHRyZWUsIHdl
IHNvbWV0aW1lcyB3ZSBnaXZlCisgICAgICAgIEJyZWFrcG9pbnRzIGEgU291cmNlQ29kZSBiZWZv
cmUgdGhlIGRlYnVnZ2VyIG9mZmljaWFsbHkgc2F5cyB0aGF0IHRoZSBicmVha3BvaW50IGhhcyBi
ZWVuCisgICAgICAgIHJlc29sdmVkLiBUaHVzLCBpdCdzIHBvc3NpYmxlIHRvIGJlIHVucmVzb2x2
ZWQgd2l0aCBhIFNvdXJjZUNvZGUsIGJ1dCBub3QgdmljZS12ZXJzYS4pCisKKyAgICAgICAgVGhp
cyBwYXRjaCBhbHNvIGFkZHMgYSBmZXcgZ3VhcmRzIHdoZXJlIHdlIGFzc3VtZWQgYSBTb3VyY2VD
b2RlTG9jYXRpb24gaGFkIGEgU291cmNlQ29kZS4KKworICAgICAgICAqIFVzZXJJbnRlcmZhY2Uv
Q29udHJvbGxlcnMvRGVidWdnZXJNYW5hZ2VyLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRl
YnVnZ2VyTWFuYWdlci5wcm90b3R5cGUuc2V0IGJyZWFrcG9pbnRzRW5hYmxlZCk6IFJlbW92ZSBz
cHVyaW91cworICAgICAgICBSZXNvbHZlZFN0YXRlRGlkQ2hhbmdlIGV2ZW50cy4KKworICAgICAg
ICAoV2ViSW5zcGVjdG9yLkRlYnVnZ2VyTWFuYWdlci5wcm90b3R5cGUuYnJlYWtwb2ludFJlc29s
dmVkKTogU2V0IHRoZSBicmVha3BvaW50J3MgU291cmNlQ29kZQorICAgICAgICBpZiBpdCBoYXMg
bm90IGJlZW4gc2V0IGFscmVhZHkgYnkgRGVidWdnZXJNYW5hZ2VyLmFzc29jaWF0ZUJyZWFrcG9p
bnRzV2l0aFNvdXJjZUNvZGUuCisKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL01vZGVscy9CcmVh
a3BvaW50LmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnQucHJvdG90eXBlLmdl
dCByZXNvbHZlZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQnJlYWtwb2ludC5wcm90b3R5cGUu
c2V0IHJlc29sdmVkLmlzU3BlY2lhbEJyZWFrcG9pbnQpOgorICAgICAgICAoV2ViSW5zcGVjdG9y
LkJyZWFrcG9pbnQucHJvdG90eXBlLnNldCByZXNvbHZlZCk6IEFkZCBhbiBhc3NlcnRpb24uCisg
ICAgICAgICogVXNlckludGVyZmFjZS9Nb2RlbHMvU291cmNlQ29kZUxvY2F0aW9uLmpzOiBBZGQg
Z3VhcmRzIGZvciAhU291cmNlQ29kZS4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5Tb3VyY2VDb2Rl
TG9jYXRpb24ucHJvdG90eXBlLnBvcHVsYXRlTGl2ZURpc3BsYXlMb2NhdGlvblRvb2x0aXApOgor
ICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvQnJlYWtwb2ludFRyZWVFbGVtZW50LmpzOiBB
Y2NvdW50IGZvciBEZWJ1Z2dlck1hbmFnZXIuYnJlYWtwb2ludHNFbmFibGVkLgorICAgICAgICAo
V2ViSW5zcGVjdG9yLkJyZWFrcG9pbnRUcmVlRWxlbWVudCk6CisgICAgICAgIChXZWJJbnNwZWN0
b3IuQnJlYWtwb2ludFRyZWVFbGVtZW50LnByb3RvdHlwZS5fdXBkYXRlU3RhdHVzKToKKyAgICAg
ICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL1Byb2JlU2V0RGV0YWlsc1NlY3Rpb24uanM6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuUHJvYmVTZXREZXRhaWxzU2VjdGlvbi5wcm90b3R5cGUuX3VwZGF0
ZUxpbmtFbGVtZW50KTogTG9vc2VuIHRoZSBhc3NlcnRpb24uCisgICAgICAgICogVXNlckludGVy
ZmFjZS9WaWV3cy9Tb3VyY2VDb2RlVGV4dEVkaXRvci5qczogQWNjb3VudCBmb3IgRGVidWdnZXJN
YW5hZ2VyLmJyZWFrcG9pbnRzRW5hYmxlZC4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5Tb3VyY2VD
b2RlVGV4dEVkaXRvcik6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU291cmNlQ29kZVRleHRFZGl0
b3IucHJvdG90eXBlLmNsb3NlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Tb3VyY2VDb2RlVGV4
dEVkaXRvci5wcm90b3R5cGUuX2JyZWFrcG9pbnRTdGF0dXNEaWRDaGFuZ2UpOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLlNvdXJjZUNvZGVUZXh0RWRpdG9yLnByb3RvdHlwZS5fYnJlYWtwb2ludHNF
bmFibGVkRGlkQ2hhbmdlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Tb3VyY2VDb2RlVGV4dEVk
aXRvci5wcm90b3R5cGUuX3VwZGF0ZUJyZWFrcG9pbnRTdGF0dXMpOgorICAgICAgICAqIFVzZXJJ
bnRlcmZhY2UvVmlld3MvVGV4dEVkaXRvci5qczogQWNjb3VudCBmb3IgRGVidWdnZXJNYW5hZ2Vy
LmJyZWFrcG9pbnRzRW5hYmxlZC4KKworMjAxNC0wOC0wNiAgQnJpYW4gSi4gQnVyZyAgPGJ1cmdA
Y3Mud2FzaGluZ3Rvbi5lZHU+CisKICAgICAgICAgUkVHUkVTU0lPTihyMTcyMDk0KTogdGVzdHMg
ZmFpbCBiZWNhdXNlIEluc3BlY3RvciB0ZXN0IGhhcm5lc3MgZG9lcyBub3QgaW5jbHVkZSBVSVN0
cmluZwogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM1
NjU4CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Nv
bnRyb2xsZXJzL0RlYnVnZ2VyTWFuYWdlci5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL0NvbnRyb2xsZXJzL0RlYnVnZ2VyTWFuYWdlci5qcwppbmRleCBkYmQxZjFkNGQ0
N2IwZWRkMWI5ZGQ0M2M4ODFhNGI0ZmIzM2JmOTg3Li5hM2MzYTcxYjNmNWMyNWUyOGFiMTQ0ZWNh
MzU5ZDkzZGVjNzlmYjRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9Db250cm9sbGVycy9EZWJ1Z2dlck1hbmFnZXIuanMKKysrIGIvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMvRGVidWdnZXJNYW5hZ2VyLmpzCkBA
IC0xMDgsMTIgKzEwOCw2IEBAIFdlYkluc3BlY3Rvci5EZWJ1Z2dlck1hbmFnZXIucHJvdG90eXBl
ID0gewogCiAgICAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudFRvTGlzdGVuZXJzKFdlYkluc3BlY3Rv
ci5EZWJ1Z2dlck1hbmFnZXIuRXZlbnQuQnJlYWtwb2ludHNFbmFibGVkRGlkQ2hhbmdlKTsKIAot
ICAgICAgICB0aGlzLl9hbGxFeGNlcHRpb25zQnJlYWtwb2ludC5kaXNwYXRjaEV2ZW50VG9MaXN0
ZW5lcnMoV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnQuRXZlbnQuUmVzb2x2ZWRTdGF0ZURpZENoYW5n
ZSk7Ci0gICAgICAgIHRoaXMuX2FsbFVuY2F1Z2h0RXhjZXB0aW9uc0JyZWFrcG9pbnQuZGlzcGF0
Y2hFdmVudFRvTGlzdGVuZXJzKFdlYkluc3BlY3Rvci5CcmVha3BvaW50LkV2ZW50LlJlc29sdmVk
U3RhdGVEaWRDaGFuZ2UpOwotCi0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5fYnJl
YWtwb2ludHMubGVuZ3RoOyArK2kpCi0gICAgICAgICAgICB0aGlzLl9icmVha3BvaW50c1tpXS5k
aXNwYXRjaEV2ZW50VG9MaXN0ZW5lcnMoV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnQuRXZlbnQuUmVz
b2x2ZWRTdGF0ZURpZENoYW5nZSk7Ci0KICAgICAgICAgRGVidWdnZXJBZ2VudC5zZXRCcmVha3Bv
aW50c0FjdGl2ZShlbmFibGVkKTsKIAogICAgICAgICB0aGlzLl91cGRhdGVCcmVha09uRXhjZXB0
aW9uc1N0YXRlKCk7CkBAIC0zMTEsNiArMzA1LDExIEBAIFdlYkluc3BlY3Rvci5EZWJ1Z2dlck1h
bmFnZXIucHJvdG90eXBlID0gewogCiAgICAgICAgIGNvbnNvbGUuYXNzZXJ0KGJyZWFrcG9pbnQu
aWRlbnRpZmllciA9PT0gYnJlYWtwb2ludElkZW50aWZpZXIpOwogCisgICAgICAgIGlmICghYnJl
YWtwb2ludC5zb3VyY2VDb2RlTG9jYXRpb24uc291cmNlQ29kZSkgeworICAgICAgICAgICAgYnJl
YWtwb2ludC5zb3VyY2VDb2RlTG9jYXRpb24uc291cmNlQ29kZSA9IHNvdXJjZUNvZGVMb2NhdGlv
bi5zb3VyY2VDb2RlOworICAgICAgICAgICAgdmFyIHNvdXJjZUNvZGVMb2NhdGlvbiA9IHRoaXMu
X3NvdXJjZUNvZGVMb2NhdGlvbkZyb21QYXlsb2FkKGxvY2F0aW9uKTsKKyAgICAgICAgfQorCiAg
ICAgICAgIGJyZWFrcG9pbnQucmVzb2x2ZWQgPSB0cnVlOwogICAgIH0sCiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9CcmVha3BvaW50Lmpz
IGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL0JyZWFrcG9pbnQu
anMKaW5kZXggYzNjZmRmZGY5NGE5MWRiZTI5NDFhMTMxY2UwMGIwNTY4MzVhMjQ0YS4uZmY0ODEx
ZjMyZTJmNzhjYWM1OGY1Yjk5MWFhOGFjNDA2NzI2MGI4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL0JyZWFrcG9pbnQuanMKKysrIGIvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL0JyZWFrcG9pbnQuanMKQEAg
LTExNyw3ICsxMTcsNyBAQCBXZWJJbnNwZWN0b3IuQnJlYWtwb2ludC5wcm90b3R5cGUgPSB7CiAK
ICAgICBnZXQgcmVzb2x2ZWQoKQogICAgIHsKLSAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc29sdmVk
ICYmIFdlYkluc3BlY3Rvci5kZWJ1Z2dlck1hbmFnZXIuYnJlYWtwb2ludHNFbmFibGVkOworICAg
ICAgICByZXR1cm4gdGhpcy5fcmVzb2x2ZWQ7CiAgICAgfSwKIAogICAgIHNldCByZXNvbHZlZChy
ZXNvbHZlZCkKQEAgLTEyNSw2ICsxMjUsMTMgQEAgV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnQucHJv
dG90eXBlID0gewogICAgICAgICBpZiAodGhpcy5fcmVzb2x2ZWQgPT09IHJlc29sdmVkKQogICAg
ICAgICAgICAgcmV0dXJuOwogCisgICAgICAgIGZ1bmN0aW9uIGlzU3BlY2lhbEJyZWFrcG9pbnQo
KQorICAgICAgICB7CisgICAgICAgICAgICByZXR1cm4gdGhpcy5fc291cmNlQ29kZUxvY2F0aW9u
LmlzRXF1YWwobmV3IFdlYkluc3BlY3Rvci5Tb3VyY2VDb2RlTG9jYXRpb24obnVsbCwgSW5maW5p
dHksIEluZmluaXR5KSk7CisgICAgICAgIH0KKworICAgICAgICBjb25zb2xlLmFzc2VydCghcmVz
b2x2ZWQgfHwgdGhpcy5fc291cmNlQ29kZUxvY2F0aW9uLnNvdXJjZUNvZGUgfHwgaXNTcGVjaWFs
QnJlYWtwb2ludC5jYWxsKHRoaXMpLCAiQnJlYWtwb2ludHMgbXVzdCBoYXZlIGEgU291cmNlQ29k
ZSB0byBiZSByZXNvbHZlZC4iLCB0aGlzKTsKKwogICAgICAgICB0aGlzLl9yZXNvbHZlZCA9IHJl
c29sdmVkIHx8IGZhbHNlOwogCiAgICAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudFRvTGlzdGVuZXJz
KFdlYkluc3BlY3Rvci5CcmVha3BvaW50LkV2ZW50LlJlc29sdmVkU3RhdGVEaWRDaGFuZ2UpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL1Nv
dXJjZUNvZGVMb2NhdGlvbi5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNl
L01vZGVscy9Tb3VyY2VDb2RlTG9jYXRpb24uanMKaW5kZXggMjY4YzJlYmJjZTgzYWFlZGI0OGM0
YTM4YzVjYjVjZTQxOTc2MzA4Zi4uZWUzN2IyNmNmZDUyNTc1MDg1NGRlNzUyOWFlYmE2MDYwYWE4
ZWI2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9k
ZWxzL1NvdXJjZUNvZGVMb2NhdGlvbi5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9Nb2RlbHMvU291cmNlQ29kZUxvY2F0aW9uLmpzCkBAIC0yMjYsNyArMjI2LDgg
QEAgV2ViSW5zcGVjdG9yLlNvdXJjZUNvZGVMb2NhdGlvbi5wcm90b3R5cGUgPSB7CiAgICAgICAg
IGVsZW1lbnQudGl0bGUgPSBwcmVmaXggKyB0aGlzLnRvb2x0aXBTdHJpbmcoKTsKIAogICAgICAg
ICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLlNvdXJjZUNvZGVMb2NhdGlvbi5F
dmVudC5EaXNwbGF5TG9jYXRpb25DaGFuZ2VkLCBmdW5jdGlvbihldmVudCkgewotICAgICAgICAg
ICAgZWxlbWVudC50aXRsZSA9IHByZWZpeCArIHRoaXMudG9vbHRpcFN0cmluZygpOworICAgICAg
ICAgICAgaWYgKHRoaXMuc291cmNlQ29kZSkKKyAgICAgICAgICAgICAgICBlbGVtZW50LnRpdGxl
ID0gcHJlZml4ICsgdGhpcy50b29sdGlwU3RyaW5nKCk7CiAgICAgICAgIH0sIHRoaXMpOwogICAg
IH0sCiAKQEAgLTI1OCw3ICsyNTksOCBAQCBXZWJJbnNwZWN0b3IuU291cmNlQ29kZUxvY2F0aW9u
LnByb3RvdHlwZSA9IHsKICAgICAgICAgdXBkYXRlRGlzcGxheVN0cmluZy5jYWxsKHRoaXMsIGZh
bHNlKTsKIAogICAgICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLlNvdXJj
ZUNvZGVMb2NhdGlvbi5FdmVudC5EaXNwbGF5TG9jYXRpb25DaGFuZ2VkLCBmdW5jdGlvbihldmVu
dCkgewotICAgICAgICAgICAgdXBkYXRlRGlzcGxheVN0cmluZy5jYWxsKHRoaXMsIGN1cnJlbnRE
aXNwbGF5LCB0cnVlKTsKKyAgICAgICAgICAgIGlmICh0aGlzLnNvdXJjZUNvZGUpCisgICAgICAg
ICAgICAgICAgdXBkYXRlRGlzcGxheVN0cmluZy5jYWxsKHRoaXMsIGN1cnJlbnREaXNwbGF5LCB0
cnVlKTsKICAgICAgICAgfSwgdGhpcyk7CiAKICAgICAgICAgdmFyIGJvdW5kTW91c2VPdmVyT3JN
b3ZlID0gbW91c2VPdmVyT3JNb3ZlLmJpbmQodGhpcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9CcmVha3BvaW50VHJlZUVsZW1lbnQuanMg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9CcmVha3BvaW50VHJl
ZUVsZW1lbnQuanMKaW5kZXggZjg4OTRhY2I4NGQyMTk0NGViODU3NGVjYzUxZmJiMmQwZTI1M2Y5
OS4uMDJmMGMxZTU0NTRkOTQ4MmRiY2JmYmJjZTIzN2FmYTk4YzMzODYyMCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQnJlYWtwb2ludFRyZWVF
bGVtZW50LmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdz
L0JyZWFrcG9pbnRUcmVlRWxlbWVudC5qcwpAQCAtNDAsNiArNDAsNyBAQCBXZWJJbnNwZWN0b3Iu
QnJlYWtwb2ludFRyZWVFbGVtZW50ID0gZnVuY3Rpb24oYnJlYWtwb2ludCwgY2xhc3NOYW1lLCB0
aXRsZSkKICAgICB0aGlzLl9saXN0ZW5lcnMucmVnaXN0ZXIoYnJlYWtwb2ludCwgV2ViSW5zcGVj
dG9yLkJyZWFrcG9pbnQuRXZlbnQuRGlzYWJsZWRTdGF0ZURpZENoYW5nZSwgdGhpcy5fdXBkYXRl
U3RhdHVzKTsKICAgICB0aGlzLl9saXN0ZW5lcnMucmVnaXN0ZXIoYnJlYWtwb2ludCwgV2ViSW5z
cGVjdG9yLkJyZWFrcG9pbnQuRXZlbnQuQXV0b0NvbnRpbnVlRGlkQ2hhbmdlLCB0aGlzLl91cGRh
dGVTdGF0dXMpOwogICAgIHRoaXMuX2xpc3RlbmVycy5yZWdpc3RlcihicmVha3BvaW50LCBXZWJJ
bnNwZWN0b3IuQnJlYWtwb2ludC5FdmVudC5SZXNvbHZlZFN0YXRlRGlkQ2hhbmdlLCB0aGlzLl91
cGRhdGVTdGF0dXMpOworICAgIHRoaXMuX2xpc3RlbmVycy5yZWdpc3RlcihXZWJJbnNwZWN0b3Iu
ZGVidWdnZXJNYW5hZ2VyLCBXZWJJbnNwZWN0b3IuRGVidWdnZXJNYW5hZ2VyLkV2ZW50LkJyZWFr
cG9pbnRzRW5hYmxlZERpZENoYW5nZSwgdGhpcy5fdXBkYXRlU3RhdHVzKTsKIAogICAgIHRoaXMu
X2xpc3RlbmVycy5yZWdpc3RlcihXZWJJbnNwZWN0b3IucHJvYmVNYW5hZ2VyLCBXZWJJbnNwZWN0
b3IuUHJvYmVNYW5hZ2VyLkV2ZW50LlByb2JlU2V0QWRkZWQsIHRoaXMuX3Byb2JlU2V0QWRkZWQp
OwogICAgIHRoaXMuX2xpc3RlbmVycy5yZWdpc3RlcihXZWJJbnNwZWN0b3IucHJvYmVNYW5hZ2Vy
LCBXZWJJbnNwZWN0b3IuUHJvYmVNYW5hZ2VyLkV2ZW50LlByb2JlU2V0UmVtb3ZlZCwgdGhpcy5f
cHJvYmVTZXRSZW1vdmVkKTsKQEAgLTE2OCw3ICsxNjksNyBAQCBXZWJJbnNwZWN0b3IuQnJlYWtw
b2ludFRyZWVFbGVtZW50LnByb3RvdHlwZSA9IHsKICAgICAgICAgZWxzZQogICAgICAgICAgICAg
dGhpcy5fc3RhdHVzSW1hZ2VFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoV2ViSW5zcGVjdG9yLkJy
ZWFrcG9pbnRUcmVlRWxlbWVudC5TdGF0dXNJbWFnZUF1dG9Db250aW51ZVN0eWxlQ2xhc3NOYW1l
KTsKIAotICAgICAgICBpZiAodGhpcy5fYnJlYWtwb2ludC5yZXNvbHZlZCkKKyAgICAgICAgaWYg
KHRoaXMuX2JyZWFrcG9pbnQucmVzb2x2ZWQgJiYgV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTWFuYWdl
ci5icmVha3BvaW50c0VuYWJsZWQpCiAgICAgICAgICAgICB0aGlzLl9zdGF0dXNJbWFnZUVsZW1l
bnQuY2xhc3NMaXN0LmFkZChXZWJJbnNwZWN0b3IuQnJlYWtwb2ludFRyZWVFbGVtZW50LlN0YXR1
c0ltYWdlUmVzb2x2ZWRTdHlsZUNsYXNzTmFtZSk7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAg
IHRoaXMuX3N0YXR1c0ltYWdlRWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKFdlYkluc3BlY3Rvci5C
cmVha3BvaW50VHJlZUVsZW1lbnQuU3RhdHVzSW1hZ2VSZXNvbHZlZFN0eWxlQ2xhc3NOYW1lKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1By
b2JlU2V0RGV0YWlsc1NlY3Rpb24uanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9WaWV3cy9Qcm9iZVNldERldGFpbHNTZWN0aW9uLmpzCmluZGV4IGVjODc1ODViNjVlOTQ3
MGUzZWQ2M2I4MWVlZGQ5NzczZDg1M2MzNGYuLjU4NzM1ZmY1MzdiYTliZDNjZjk4YzdjNDI1MTUy
OTQxNjlhOGVkMTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL1Byb2JlU2V0RGV0YWlsc1NlY3Rpb24uanMKKysrIGIvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvUHJvYmVTZXREZXRhaWxzU2VjdGlvbi5qcwpAQCAt
OTEsMTEgKzkxLDExIEBAIFdlYkluc3BlY3Rvci5Qcm9iZVNldERldGFpbHNTZWN0aW9uLnByb3Rv
dHlwZSA9IHsKICAgICB7CiAgICAgICAgIHZhciBicmVha3BvaW50ID0gdGhpcy5fcHJvYmVTZXQu
YnJlYWtwb2ludDsKICAgICAgICAgdmFyIHRpdGxlRWxlbWVudCA9IG51bGw7Ci0gICAgICAgIGlm
IChicmVha3BvaW50LnJlc29sdmVkKQorICAgICAgICBpZiAoYnJlYWtwb2ludC5zb3VyY2VDb2Rl
TG9jYXRpb24uc291cmNlQ29kZSkKICAgICAgICAgICAgIHRpdGxlRWxlbWVudCA9IFdlYkluc3Bl
Y3Rvci5jcmVhdGVTb3VyY2VDb2RlTG9jYXRpb25MaW5rKGJyZWFrcG9pbnQuc291cmNlQ29kZUxv
Y2F0aW9uKTsKICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAvLyBGYWxsYmFjayBmb3Igd2hl
biB3ZSBjYW4ndCBjcmVhdGUgYSBsaXZlIHNvdXJjZSBsaW5rLgotICAgICAgICAgICAgY29uc29s
ZS5hc3NlcnQoIWJyZWFrcG9pbnQuc291cmNlQ29kZUxvY2F0aW9uLnNvdXJjZUNvZGUpOworICAg
ICAgICAgICAgY29uc29sZS5hc3NlcnQoIWJyZWFrcG9pbnQucmVzb2x2ZWQpOwogCiAgICAgICAg
ICAgICB2YXIgbG9jYXRpb24gPSBicmVha3BvaW50LnNvdXJjZUNvZGVMb2NhdGlvbjsKICAgICAg
ICAgICAgIHRpdGxlRWxlbWVudCA9IFdlYkluc3BlY3Rvci5saW5raWZ5TG9jYXRpb24oYnJlYWtw
b2ludC51cmwsIGxvY2F0aW9uLmRpc3BsYXlMaW5lTnVtYmVyLCBsb2NhdGlvbi5kaXNwbGF5Q29s
dW1uTnVtYmVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL1NvdXJjZUNvZGVUZXh0RWRpdG9yLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvVmlld3MvU291cmNlQ29kZVRleHRFZGl0b3IuanMKaW5kZXggYTlmYjcx
ZDMxMDUyZDUyNmEzNDExNzNhZGY1ZTljMzk3ODY5YjRiMy4uZGE3NTY3ZWI1NDI5M2U3NDQxN2E3
MTgxNTRkYmYxZDYxYjQ2NzEwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvVmlld3MvU291cmNlQ29kZVRleHRFZGl0b3IuanMKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU291cmNlQ29kZVRleHRFZGl0b3IuanMK
QEAgLTQyLDExICs0MiwxMiBAQCBXZWJJbnNwZWN0b3IuU291cmNlQ29kZVRleHRFZGl0b3IgPSBm
dW5jdGlvbihzb3VyY2VDb2RlKQogICAgIHRoaXMuZWxlbWVudC5jbGFzc0xpc3QuYWRkKFdlYklu
c3BlY3Rvci5Tb3VyY2VDb2RlVGV4dEVkaXRvci5TdHlsZUNsYXNzTmFtZSk7CiAKICAgICBpZiAo
dGhpcy5fc3VwcG9ydHNEZWJ1Z2dpbmcpIHsKLSAgICAgICAgV2ViSW5zcGVjdG9yLkJyZWFrcG9p
bnQuYWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuQnJlYWtwb2ludC5FdmVudC5EaXNhYmxl
ZFN0YXRlRGlkQ2hhbmdlLCB0aGlzLl91cGRhdGVCcmVha3BvaW50U3RhdHVzLCB0aGlzKTsKLSAg
ICAgICAgV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnQuYWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0
b3IuQnJlYWtwb2ludC5FdmVudC5BdXRvQ29udGludWVEaWRDaGFuZ2UsIHRoaXMuX3VwZGF0ZUJy
ZWFrcG9pbnRTdGF0dXMsIHRoaXMpOwotICAgICAgICBXZWJJbnNwZWN0b3IuQnJlYWtwb2ludC5h
ZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5CcmVha3BvaW50LkV2ZW50LlJlc29sdmVkU3Rh
dGVEaWRDaGFuZ2UsIHRoaXMuX3VwZGF0ZUJyZWFrcG9pbnRTdGF0dXMsIHRoaXMpOworICAgICAg
ICBXZWJJbnNwZWN0b3IuQnJlYWtwb2ludC5hZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5C
cmVha3BvaW50LkV2ZW50LkRpc2FibGVkU3RhdGVEaWRDaGFuZ2UsIHRoaXMuX2JyZWFrcG9pbnRT
dGF0dXNEaWRDaGFuZ2UsIHRoaXMpOworICAgICAgICBXZWJJbnNwZWN0b3IuQnJlYWtwb2ludC5h
ZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5CcmVha3BvaW50LkV2ZW50LkF1dG9Db250aW51
ZURpZENoYW5nZSwgdGhpcy5fYnJlYWtwb2ludFN0YXR1c0RpZENoYW5nZSwgdGhpcyk7CisgICAg
ICAgIFdlYkluc3BlY3Rvci5CcmVha3BvaW50LmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9y
LkJyZWFrcG9pbnQuRXZlbnQuUmVzb2x2ZWRTdGF0ZURpZENoYW5nZSwgdGhpcy5fYnJlYWtwb2lu
dFN0YXR1c0RpZENoYW5nZSwgdGhpcyk7CiAgICAgICAgIFdlYkluc3BlY3Rvci5CcmVha3BvaW50
LmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnQuRXZlbnQuTG9jYXRpb25E
aWRDaGFuZ2UsIHRoaXMuX3VwZGF0ZUJyZWFrcG9pbnRMb2NhdGlvbiwgdGhpcyk7CiAKKyAgICAg
ICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTWFuYWdlci5hZGRFdmVudExpc3RlbmVyKFdlYkluc3Bl
Y3Rvci5EZWJ1Z2dlck1hbmFnZXIuRXZlbnQuQnJlYWtwb2ludHNFbmFibGVkRGlkQ2hhbmdlLCB0
aGlzLl9icmVha3BvaW50c0VuYWJsZWREaWRDaGFuZ2UsIHRoaXMpOwogICAgICAgICBXZWJJbnNw
ZWN0b3IuZGVidWdnZXJNYW5hZ2VyLmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkRlYnVn
Z2VyTWFuYWdlci5FdmVudC5CcmVha3BvaW50QWRkZWQsIHRoaXMuX2JyZWFrcG9pbnRBZGRlZCwg
dGhpcyk7CiAgICAgICAgIFdlYkluc3BlY3Rvci5kZWJ1Z2dlck1hbmFnZXIuYWRkRXZlbnRMaXN0
ZW5lcihXZWJJbnNwZWN0b3IuRGVidWdnZXJNYW5hZ2VyLkV2ZW50LkJyZWFrcG9pbnRSZW1vdmVk
LCB0aGlzLl9icmVha3BvaW50UmVtb3ZlZCwgdGhpcyk7CiAgICAgICAgIFdlYkluc3BlY3Rvci5k
ZWJ1Z2dlck1hbmFnZXIuYWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuRGVidWdnZXJNYW5h
Z2VyLkV2ZW50LkFjdGl2ZUNhbGxGcmFtZURpZENoYW5nZSwgdGhpcy5fYWN0aXZlQ2FsbEZyYW1l
RGlkQ2hhbmdlLCB0aGlzKTsKQEAgLTExNCwxMSArMTE1LDEyIEBAIFdlYkluc3BlY3Rvci5Tb3Vy
Y2VDb2RlVGV4dEVkaXRvci5wcm90b3R5cGUgPSB7CiAgICAgY2xvc2U6IGZ1bmN0aW9uKCkKICAg
ICB7CiAgICAgICAgIGlmICh0aGlzLl9zdXBwb3J0c0RlYnVnZ2luZykgewotICAgICAgICAgICAg
V2ViSW5zcGVjdG9yLkJyZWFrcG9pbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3Iu
QnJlYWtwb2ludC5FdmVudC5EaXNhYmxlZFN0YXRlRGlkQ2hhbmdlLCB0aGlzLl91cGRhdGVCcmVh
a3BvaW50U3RhdHVzLCB0aGlzKTsKLSAgICAgICAgICAgIFdlYkluc3BlY3Rvci5CcmVha3BvaW50
LnJlbW92ZUV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnQuRXZlbnQuQXV0b0Nv
bnRpbnVlRGlkQ2hhbmdlLCB0aGlzLl91cGRhdGVCcmVha3BvaW50U3RhdHVzLCB0aGlzKTsKLSAg
ICAgICAgICAgIFdlYkluc3BlY3Rvci5CcmVha3BvaW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoV2Vi
SW5zcGVjdG9yLkJyZWFrcG9pbnQuRXZlbnQuUmVzb2x2ZWRTdGF0ZURpZENoYW5nZSwgdGhpcy5f
dXBkYXRlQnJlYWtwb2ludFN0YXR1cywgdGhpcyk7CisgICAgICAgICAgICBXZWJJbnNwZWN0b3Iu
QnJlYWtwb2ludC5yZW1vdmVFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5CcmVha3BvaW50LkV2
ZW50LkRpc2FibGVkU3RhdGVEaWRDaGFuZ2UsIHRoaXMuX2JyZWFrcG9pbnRTdGF0dXNEaWRDaGFu
Z2UsIHRoaXMpOworICAgICAgICAgICAgV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnQucmVtb3ZlRXZl
bnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuQnJlYWtwb2ludC5FdmVudC5BdXRvQ29udGludWVEaWRD
aGFuZ2UsIHRoaXMuX2JyZWFrcG9pbnRTdGF0dXNEaWRDaGFuZ2UsIHRoaXMpOworICAgICAgICAg
ICAgV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0
b3IuQnJlYWtwb2ludC5FdmVudC5SZXNvbHZlZFN0YXRlRGlkQ2hhbmdlLCB0aGlzLl9icmVha3Bv
aW50U3RhdHVzRGlkQ2hhbmdlLCB0aGlzKTsKICAgICAgICAgICAgIFdlYkluc3BlY3Rvci5CcmVh
a3BvaW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnQuRXZlbnQu
TG9jYXRpb25EaWRDaGFuZ2UsIHRoaXMuX3VwZGF0ZUJyZWFrcG9pbnRMb2NhdGlvbiwgdGhpcyk7
CiAKKyAgICAgICAgICAgIFdlYkluc3BlY3Rvci5kZWJ1Z2dlck1hbmFnZXIucmVtb3ZlRXZlbnRM
aXN0ZW5lcihXZWJJbnNwZWN0b3IuRGVidWdnZXJNYW5hZ2VyLkV2ZW50LkJyZWFrcG9pbnRzRW5h
YmxlZERpZENoYW5nZSwgdGhpcy5fYnJlYWtwb2ludHNFbmFibGVkRGlkQ2hhbmdlLCB0aGlzKTsK
ICAgICAgICAgICAgIFdlYkluc3BlY3Rvci5kZWJ1Z2dlck1hbmFnZXIucmVtb3ZlRXZlbnRMaXN0
ZW5lcihXZWJJbnNwZWN0b3IuRGVidWdnZXJNYW5hZ2VyLkV2ZW50LkJyZWFrcG9pbnRBZGRlZCwg
dGhpcy5fYnJlYWtwb2ludEFkZGVkLCB0aGlzKTsKICAgICAgICAgICAgIFdlYkluc3BlY3Rvci5k
ZWJ1Z2dlck1hbmFnZXIucmVtb3ZlRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuRGVidWdnZXJN
YW5hZ2VyLkV2ZW50LkJyZWFrcG9pbnRSZW1vdmVkLCB0aGlzLl9icmVha3BvaW50UmVtb3ZlZCwg
dGhpcyk7CiAgICAgICAgICAgICBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLnJlbW92ZUV2
ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkRlYnVnZ2VyTWFuYWdlci5FdmVudC5BY3RpdmVDYWxs
RnJhbWVEaWRDaGFuZ2UsIHRoaXMuX2FjdGl2ZUNhbGxGcmFtZURpZENoYW5nZSwgdGhpcyk7CkBA
IC0zNzQsMTQgKzM3NiwyNyBAQCBXZWJJbnNwZWN0b3IuU291cmNlQ29kZVRleHRFZGl0b3IucHJv
dG90eXBlID0gewogICAgICAgICB0aGlzLl9wb3B1bGF0ZVdpdGhDb250ZW50KGNvbnRlbnQpOwog
ICAgIH0sCiAKLSAgICBfdXBkYXRlQnJlYWtwb2ludFN0YXR1czogZnVuY3Rpb24oZXZlbnQpCisg
ICAgX2JyZWFrcG9pbnRTdGF0dXNEaWRDaGFuZ2U6IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAg
ICAgICAgdGhpcy5fdXBkYXRlQnJlYWtwb2ludFN0YXR1cyhldmVudC50YXJnZXQpOworICAgIH0s
CisKKyAgICBfYnJlYWtwb2ludHNFbmFibGVkRGlkQ2hhbmdlOiBmdW5jdGlvbigpCisgICAgewor
ICAgICAgICBjb25zb2xlLmFzc2VydCh0aGlzLl9zdXBwb3J0c0RlYnVnZ2luZyk7CisKKyAgICAg
ICAgdmFyIGJyZWFrcG9pbnRzID0gV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTWFuYWdlci5icmVha3Bv
aW50c0ZvclNvdXJjZUNvZGUodGhpcy5fc291cmNlQ29kZSk7CisgICAgICAgIGZvciAoYnJlYWtw
b2ludCBvZiBicmVha3BvaW50cykKKyAgICAgICAgICAgIHRoaXMuX3VwZGF0ZUJyZWFrcG9pbnRT
dGF0dXMoYnJlYWtwb2ludCk7CisgICAgfSwKKworICAgIF91cGRhdGVCcmVha3BvaW50U3RhdHVz
OiBmdW5jdGlvbihicmVha3BvaW50KQogICAgIHsKICAgICAgICAgY29uc29sZS5hc3NlcnQodGhp
cy5fc3VwcG9ydHNEZWJ1Z2dpbmcpOwogCiAgICAgICAgIGlmICghdGhpcy5fY29udGVudFBvcHVs
YXRlZCkKICAgICAgICAgICAgIHJldHVybjsKIAotICAgICAgICB2YXIgYnJlYWtwb2ludCA9IGV2
ZW50LnRhcmdldDsKICAgICAgICAgaWYgKCF0aGlzLl9tYXRjaGVzQnJlYWtwb2ludChicmVha3Bv
aW50KSkKICAgICAgICAgICAgIHJldHVybjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvVGV4dEVkaXRvci5qcyBiL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1RleHRFZGl0b3IuanMKaW5kZXggMzhlNjA2YTFl
YTA3NzZjY2FhYzkzNDRmMWY2Y2UxNzQyN2YyNjE2Mi4uMGVlNTdjYjgxOTViZDg5ZGQ4ZTM1N2Ni
ZTU0MjUxZDhkOTAzMGNjOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvVmlld3MvVGV4dEVkaXRvci5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9WaWV3cy9UZXh0RWRpdG9yLmpzCkBAIC05MzIsNiArOTMyLDggQEAgV2Vi
SW5zcGVjdG9yLlRleHRFZGl0b3IucHJvdG90eXBlID0gewogICAgICAgICAgICAgICAgIGFsbEF1
dG9Db250aW51ZSA9IGZhbHNlOwogICAgICAgICB9CiAKKyAgICAgICAgYWxsUmVzb2x2ZWQgPSBh
bGxSZXNvbHZlZCAmJiBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLmJyZWFrcG9pbnRzRW5h
YmxlZDsKKwogICAgICAgICBmdW5jdGlvbiB1cGRhdGVTdHlsZXMoKQogICAgICAgICB7CiAgICAg
ICAgICAgICAvLyBXZSBtaWdodCBub3QgaGF2ZSBhIGxpbmUgaWYgdGhlIGNvbnRlbnQgaXNuJ3Qg
ZnVsbHkgcG9wdWxhdGVkIHlldC4K
</data>
<flag name="review"
          id="260742"
          type_id="1"
          status="+"
          setter="joepeck"
    />
          </attachment>
      

    </bug>

</bugzilla>