<?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>50107</bug_id>
          
          <creation_ts>2010-11-26 05:07:11 -0800</creation_ts>
          <short_desc>Web Inspector: implement &quot;Revert to this revision&quot; in resources panel.</short_desc>
          <delta_ts>2010-11-30 11:17:36 -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>Web Inspector (Deprecated)</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Pavel Feldman">pfeldman</reporter>
          <assigned_to name="Pavel Feldman">pfeldman</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>313969</commentid>
    <comment_count>0</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-11-26 05:07:11 -0800</bug_when>
    <thetext>Patch to follow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>315056</commentid>
    <comment_count>1</comment_count>
      <attachid>75149</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-11-30 08:01:34 -0800</bug_when>
    <thetext>Created attachment 75149
[PATCH] Proposed change</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>315081</commentid>
    <comment_count>2</comment_count>
      <attachid>75149</attachid>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2010-11-30 08:56:13 -0800</bug_when>
    <thetext>Comment on attachment 75149
[PATCH] Proposed change

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

You need to add:
m_pageStyleSheet-&gt;styleSheetChanged();
after
m_pageStyleSheet-&gt;parseString(text, m_pageStyleSheet-&gt;useStrictParsing());
in
InspectorStyleSheet::reparseStyleSheet(const String&amp; text)
for the new stylesheet text to take effect after reparsing.

&gt; WebCore/inspector/front-end/Resource.js:731
&gt; +    }    

trailing whitespace

&gt; WebCore/inspector/front-end/ResourcesPanel.js:1230
&gt; +    var title = revision.timestamp ? revision.timestamp.toLocaleTimeString() : &quot;(original)&quot;;

&quot;(original)&quot; should be localized</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>315088</commentid>
    <comment_count>3</comment_count>
      <attachid>75149</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2010-11-30 09:14:34 -0800</bug_when>
    <thetext>Comment on attachment 75149
[PATCH] Proposed change

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

&gt; WebCore/inspector/front-end/Resource.js:680
&gt; +        function callback(content)

You&apos;re ignoring contentEncoded parameter here, is it intentional?

&gt; WebCore/inspector/front-end/Resource.js:685
&gt; +        this.requestContent(callback.bind(this));

Why do you need this call? if (this._content) this._fireOnRevert(this._content); should work just fine.

&gt; WebCore/inspector/front-end/Resource.js:731
&gt; +    }    

Trailing whitespace.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>315162</commentid>
    <comment_count>4</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-11-30 10:58:28 -0800</bug_when>
    <thetext>Anyways, I am not landing this change unless setStyleSheetText2 is fixed. Currently, it hangs on every other revert on apple.com.

I see this:

dhcp-172-19-1-225:WebKit pfeldman$ run-safari --debug
Starting Safari with DYLD_FRAMEWORK_PATH set to point to built WebKit in /Users/pfeldman/WebKit/WebKitBuild/Debug.
ASSERTION FAILED: m_pendingStylesheets &gt; 0
(/Users/pfeldman/WebKit/WebCore/dom/Document.cpp:2856 void WebCore::Document::removePendingSheet())

and other crashers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>315177</commentid>
    <comment_count>5</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-11-30 11:17:36 -0800</bug_when>
    <thetext>Committing to http://svn.webkit.org/repository/webkit/trunk ...
	M	WebCore/ChangeLog
	M	WebCore/English.lproj/localizedStrings.js
	M	WebCore/inspector/Inspector.idl
	M	WebCore/inspector/InspectorCSSAgent.cpp
	M	WebCore/inspector/InspectorCSSAgent.h
	M	WebCore/inspector/InspectorStyleSheet.cpp
	M	WebCore/inspector/front-end/CSSStyleModel.js
	M	WebCore/inspector/front-end/Resource.js
	M	WebCore/inspector/front-end/ResourcesPanel.js
	M	WebCore/inspector/front-end/ScriptsPanel.js
	M	WebCore/inspector/front-end/SourceView.js
Committed r72938</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>75149</attachid>
            <date>2010-11-30 08:01:34 -0800</date>
            <delta_ts>2010-11-30 09:44:34 -0800</delta_ts>
            <desc>[PATCH] Proposed change</desc>
            <filename>revert_revision</filename>
            <type>text/plain</type>
            <size>18330</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
OTkxYTA5ZC4uNTZiODQyYSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NSBAQAorMjAxMC0xMS0zMCAgUGF2ZWwgRmVsZG1h
biAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBpbXBsZW1lbnQgIlJldmVydCB0byB0
aGlzIHJldmlzaW9uIiBpbiByZXNvdXJjZXMgcGFuZWwuCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MDEwNworCisgICAgICAgICogaW5zcGVjdG9yL0lu
c3BlY3Rvci5pZGw6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckNTU0FnZW50LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNTU0FnZW50OjpzZXRTdHlsZVNoZWV0VGV4dDIp
OgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5oOgorICAgICAgICAqIGlu
c3BlY3Rvci9JbnNwZWN0b3JTdHlsZVNoZWV0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3Bl
Y3RvclN0eWxlU2hlZXQ6OnJlcGFyc2VTdHlsZVNoZWV0KToKKyAgICAgICAgKiBpbnNwZWN0b3Iv
ZnJvbnQtZW5kL0NTU1N0eWxlTW9kZWwuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ1NTU3R5
bGVNb2RlbC5wcm90b3R5cGUuX3N0eWxlU2hlZXRDaGFuZ2VkLmNhbGxiYWNrKToKKyAgICAgICAg
KFdlYkluc3BlY3Rvci5DU1NTdHlsZU1vZGVsLnByb3RvdHlwZS5fc3R5bGVTaGVldENoYW5nZWQp
OgorICAgICAgICAoV2ViSW5zcGVjdG9yLkNTU1N0eWxlTW9kZWwucHJvdG90eXBlLl9vblJldmVy
dCk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9SZXNvdXJjZS5qczoKKyAgICAgICAg
KFdlYkluc3BlY3Rvci5SZXNvdXJjZS5wcm90b3R5cGUuZ2V0IGNvbnRlbnRUaW1lc3RhbXApOgor
ICAgICAgICAoV2ViSW5zcGVjdG9yLlJlc291cmNlLnByb3RvdHlwZS5zZXRJbml0aWFsQ29udGVu
dCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuUmVzb3VyY2UucHJvdG90eXBlLmlzTG9jYWxseU1v
ZGlmaWVkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZS5wcm90b3R5cGUuc2V0Q29u
dGVudC5lbHNlLmZpbmlzaGVkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZS5wcm90
b3R5cGUuc2V0Q29udGVudCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuUmVzb3VyY2UucHJvdG90
eXBlLnJldmVydFRvVGhpcy5jYWxsYmFjayk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuUmVzb3Vy
Y2UucHJvdG90eXBlLnJldmVydFRvVGhpcyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuUmVzb3Vy
Y2UucHJvdG90eXBlLmdldCBiYXNlUmV2aXNpb24pOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlJl
c291cmNlLnByb3RvdHlwZS5faW5uZXJSZXF1ZXN0Q29udGVudCk6CisgICAgICAgICogaW5zcGVj
dG9yL2Zyb250LWVuZC9SZXNvdXJjZXNQYW5lbC5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5S
ZXNvdXJjZXNQYW5lbC5wcm90b3R5cGUuX3Nob3dSZXNvdXJjZVZpZXcpOgorICAgICAgICAoV2Vi
SW5zcGVjdG9yLkZyYW1lUmVzb3VyY2VUcmVlRWxlbWVudC5wcm90b3R5cGUuX2NvbnRlbnRDaGFu
Z2VkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZVJldmlzaW9uVHJlZUVsZW1lbnQp
OgorICAgICAgICAoV2ViSW5zcGVjdG9yLlJlc291cmNlUmV2aXNpb25UcmVlRWxlbWVudC5wcm90
b3R5cGUub25hdHRhY2gpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlJlc291cmNlUmV2aXNpb25U
cmVlRWxlbWVudC5wcm90b3R5cGUuX29uZHJhZ3N0YXJ0KToKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5SZXNvdXJjZVJldmlzaW9uVHJlZUVsZW1lbnQucHJvdG90eXBlLl9oYW5kbGVDb250ZXh0TWVu
dUV2ZW50KToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNQYW5lbC5qczoK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5TY3JpcHRzUGFuZWwucHJvdG90eXBlLmVkaXRTY3JpcHRT
b3VyY2UubXljYWxsYmFjayk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsLnBy
b3RvdHlwZS5lZGl0U2NyaXB0U291cmNlKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5k
L1NvdXJjZVZpZXcuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU291cmNlVmlldy5wcm90b3R5
cGUuX2VkaXRMaW5lKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Tb3VyY2VWaWV3LnByb3RvdHlw
ZS5fZWRpdExpbmVDb21wbGV0ZSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU291cmNlVmlldy5w
cm90b3R5cGUuX3JldmVydEVkaXRMaW5lKToKKwogMjAxMC0xMS0yOSAgUGF0cmljayBHYW5zdGVy
ZXIgIDxwYXJvZ2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBBZGFtIFJvYmVu
LgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yLmlkbCBiL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3Rvci5pZGwKaW5kZXggZTgwODZhNi4uOGU0OGJmZCAxMDA2NDQKLS0t
IGEvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yLmlkbAorKysgYi9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3IuaWRsCkBAIC0yMTQsNyArMjE0LDcgQEAgbW9kdWxlIGNvcmUgewogICAgICAg
ICBbaGFuZGxlcj1DU1NdIHZvaWQgZ2V0QWxsU3R5bGVzMihvdXQgQXJyYXkgc3R5bGVTaGVldElk
cyk7CiAgICAgICAgIFtoYW5kbGVyPUNTU10gdm9pZCBnZXRTdHlsZVNoZWV0MihpbiBTdHJpbmcg
c3R5bGVTaGVldElkLCBvdXQgVmFsdWUgc3R5bGVTaGVldCk7CiAgICAgICAgIFtoYW5kbGVyPUNT
U10gdm9pZCBnZXRTdHlsZVNoZWV0VGV4dDIoaW4gU3RyaW5nIHN0eWxlU2hlZXRJZCwgb3V0IFN0
cmluZyB1cmwsIG91dCBTdHJpbmcgdGV4dCk7Ci0gICAgICAgIFtoYW5kbGVyPUNTU10gdm9pZCBz
ZXRTdHlsZVNoZWV0VGV4dDIoaW4gU3RyaW5nIHN0eWxlU2hlZXRJZCwgaW4gU3RyaW5nIHRleHQp
OworICAgICAgICBbaGFuZGxlcj1DU1NdIHZvaWQgc2V0U3R5bGVTaGVldFRleHQyKGluIFN0cmlu
ZyBzdHlsZVNoZWV0SWQsIGluIFN0cmluZyB0ZXh0LCBvdXQgYm9vbGVhbiBzdWNjZXNzKTsKICAg
ICAgICAgW2hhbmRsZXI9Q1NTXSB2b2lkIHNldFByb3BlcnR5VGV4dDIoaW4gT2JqZWN0IHN0eWxl
SWQsIGluIGxvbmcgcHJvcGVydHlJbmRleCwgaW4gU3RyaW5nIHRleHQsIGluIGJvb2xlYW4gb3Zl
cndyaXRlLCBvdXQgVmFsdWUgc3R5bGUpOwogICAgICAgICBbaGFuZGxlcj1DU1NdIHZvaWQgdG9n
Z2xlUHJvcGVydHkyKGluIE9iamVjdCBzdHlsZUlkLCBpbiBsb25nIHByb3BlcnR5SW5kZXgsIGlu
IGJvb2xlYW4gZGlzYWJsZSwgb3V0IFZhbHVlIHN0eWxlKTsKICAgICAgICAgW2hhbmRsZXI9Q1NT
XSB2b2lkIHNldFJ1bGVTZWxlY3RvcjIoaW4gT2JqZWN0IHJ1bGVJZCwgaW4gU3RyaW5nIHNlbGVj
dG9yLCBvdXQgVmFsdWUgcnVsZSk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3JDU1NBZ2VudC5jcHAgYi9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5j
cHAKaW5kZXggZmQxZGViNS4uMzFkOTUxYSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3Iv
SW5zcGVjdG9yQ1NTQWdlbnQuY3BwCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNT
U0FnZW50LmNwcApAQCAtMjg1LDE0ICsyODUsMTYgQEAgdm9pZCBJbnNwZWN0b3JDU1NBZ2VudDo6
Z2V0U3R5bGVTaGVldFRleHQyKGNvbnN0IFN0cmluZyYgc3R5bGVTaGVldElkLCBTdHJpbmcqIHUK
ICAgICBpbnNwZWN0b3JTdHlsZVNoZWV0LT50ZXh0KHJlc3VsdCk7CiB9CiAKLXZvaWQgSW5zcGVj
dG9yQ1NTQWdlbnQ6OnNldFN0eWxlU2hlZXRUZXh0Mihjb25zdCBTdHJpbmcmIHN0eWxlU2hlZXRJ
ZCwgY29uc3QgU3RyaW5nJiB0ZXh0KQordm9pZCBJbnNwZWN0b3JDU1NBZ2VudDo6c2V0U3R5bGVT
aGVldFRleHQyKGNvbnN0IFN0cmluZyYgc3R5bGVTaGVldElkLCBjb25zdCBTdHJpbmcmIHRleHQs
IGJvb2wqIHN1Y2Nlc3MpCiB7CiAgICAgSW5zcGVjdG9yU3R5bGVTaGVldCogaW5zcGVjdG9yU3R5
bGVTaGVldCA9IHN0eWxlU2hlZXRGb3JJZChzdHlsZVNoZWV0SWQpOwotICAgIGlmICghaW5zcGVj
dG9yU3R5bGVTaGVldCkKKyAgICBpZiAoIWluc3BlY3RvclN0eWxlU2hlZXQpIHsKKyAgICAgICAg
KnN1Y2Nlc3MgPSBmYWxzZTsKICAgICAgICAgcmV0dXJuOworICAgIH0KIAotICAgIGJvb2wgc3Vj
Y2VzcyA9IGluc3BlY3RvclN0eWxlU2hlZXQtPnNldFRleHQodGV4dCk7Ci0gICAgaWYgKHN1Y2Nl
c3MpCisgICAgKnN1Y2Nlc3MgPSBpbnNwZWN0b3JTdHlsZVNoZWV0LT5zZXRUZXh0KHRleHQpOwor
ICAgIGlmICgqc3VjY2VzcykKICAgICAgICAgaW5zcGVjdG9yU3R5bGVTaGVldC0+cmVwYXJzZVN0
eWxlU2hlZXQodGV4dCk7CiB9CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3RvckNTU0FnZW50LmggYi9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5oCmlu
ZGV4IDZlOGYyNDQuLjJkMmVmYjUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3RvckNTU0FnZW50LmgKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ1NTQWdlbnQu
aApAQCAtNjYsNyArNjYsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBnZXRBbGxTdHlsZXMyKFJlZlB0
cjxJbnNwZWN0b3JBcnJheT4qIHN0eWxlcyk7CiAgICAgdm9pZCBnZXRTdHlsZVNoZWV0Mihjb25z
dCBTdHJpbmcmIHN0eWxlU2hlZXRJZCwgUmVmUHRyPEluc3BlY3RvclZhbHVlPiogcmVzdWx0KTsK
ICAgICB2b2lkIGdldFN0eWxlU2hlZXRUZXh0Mihjb25zdCBTdHJpbmcmIHN0eWxlU2hlZXRJZCwg
U3RyaW5nKiB1cmwsIFN0cmluZyogcmVzdWx0KTsKLSAgICB2b2lkIHNldFN0eWxlU2hlZXRUZXh0
Mihjb25zdCBTdHJpbmcmIHN0eWxlU2hlZXRJZCwgY29uc3QgU3RyaW5nJiB0ZXh0KTsKKyAgICB2
b2lkIHNldFN0eWxlU2hlZXRUZXh0Mihjb25zdCBTdHJpbmcmIHN0eWxlU2hlZXRJZCwgY29uc3Qg
U3RyaW5nJiB0ZXh0LCBib29sKiBzdWNjZXNzKTsKICAgICB2b2lkIHNldFByb3BlcnR5VGV4dDIo
Y29uc3QgUmVmUHRyPEluc3BlY3Rvck9iamVjdD4mIHN0eWxlSWQsIGxvbmcgcHJvcGVydHlJbmRl
eCwgY29uc3QgU3RyaW5nJiB0ZXh0LCBib29sIG92ZXJ3cml0ZSwgUmVmUHRyPEluc3BlY3RvclZh
bHVlPiogcmVzdWx0KTsKICAgICB2b2lkIHRvZ2dsZVByb3BlcnR5Mihjb25zdCBSZWZQdHI8SW5z
cGVjdG9yT2JqZWN0PiYgc3R5bGVJZCwgbG9uZyBwcm9wZXJ0eUluZGV4LCBib29sIGRpc2FibGUs
IFJlZlB0cjxJbnNwZWN0b3JWYWx1ZT4qIHJlc3VsdCk7CiAgICAgdm9pZCBzZXRSdWxlU2VsZWN0
b3IyKGNvbnN0IFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+JiBydWxlSWQsIGNvbnN0IFN0cmluZyYg
c2VsZWN0b3IsIFJlZlB0cjxJbnNwZWN0b3JWYWx1ZT4qIHJlc3VsdCk7CmRpZmYgLS1naXQgYS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JTdHlsZVNoZWV0LmNwcCBiL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvclN0eWxlU2hlZXQuY3BwCmluZGV4IDBhZDM4MjEuLjAwOTNkN2EgMTAwNjQ0
Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclN0eWxlU2hlZXQuY3BwCisrKyBiL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclN0eWxlU2hlZXQuY3BwCkBAIC01ODgsNiArNTg4LDcg
QEAgdm9pZCBJbnNwZWN0b3JTdHlsZVNoZWV0OjpyZXBhcnNlU3R5bGVTaGVldChjb25zdCBTdHJp
bmcmIHRleHQpCiAgICAgZm9yICh1bnNpZ25lZCBpID0gMCwgc2l6ZSA9IG1fcGFnZVN0eWxlU2hl
ZXQtPmxlbmd0aCgpOyBpIDwgc2l6ZTsgKytpKQogICAgICAgICBtX3BhZ2VTdHlsZVNoZWV0LT5y
ZW1vdmUoaSk7CiAgICAgbV9wYWdlU3R5bGVTaGVldC0+cGFyc2VTdHJpbmcodGV4dCwgbV9wYWdl
U3R5bGVTaGVldC0+dXNlU3RyaWN0UGFyc2luZygpKTsKKyAgICBtX3BhZ2VTdHlsZVNoZWV0LT5z
dHlsZVNoZWV0Q2hhbmdlZCgpOwogICAgIG1faW5zcGVjdG9yU3R5bGVzLmNsZWFyKCk7CiB9CiAK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9DU1NTdHlsZU1vZGVsLmpz
IGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NTU1N0eWxlTW9kZWwuanMKaW5kZXggYmFm
NDRjOS4uMjNlZDdhOCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NT
U1N0eWxlTW9kZWwuanMKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NTU1N0eWxl
TW9kZWwuanMKQEAgLTE2NCw5ICsxNjQsMTggQEAgV2ViSW5zcGVjdG9yLkNTU1N0eWxlTW9kZWwu
cHJvdG90eXBlID0gewogICAgICAgICB7CiAgICAgICAgICAgICB2YXIgcmVzb3VyY2UgPSBXZWJJ
bnNwZWN0b3IucmVzb3VyY2VNYW5hZ2VyLnJlc291cmNlRm9yVVJMKGhyZWYpOwogICAgICAgICAg
ICAgaWYgKHJlc291cmNlICYmIHJlc291cmNlLnR5cGUgPT09IFdlYkluc3BlY3Rvci5SZXNvdXJj
ZS5UeXBlLlN0eWxlc2hlZXQpCi0gICAgICAgICAgICAgICAgcmVzb3VyY2UuY29udGVudCA9IGNv
bnRlbnQ7CisgICAgICAgICAgICAgICAgcmVzb3VyY2Uuc2V0Q29udGVudChjb250ZW50LCB0aGlz
Ll9vblJldmVydC5iaW5kKHRoaXMsIHN0eWxlU2hlZXRJZCkpOwogICAgICAgICB9Ci0gICAgICAg
IEluc3BlY3RvckJhY2tlbmQuZ2V0U3R5bGVTaGVldFRleHQyKHN0eWxlU2hlZXRJZCwgY2FsbGJh
Y2spOworICAgICAgICBJbnNwZWN0b3JCYWNrZW5kLmdldFN0eWxlU2hlZXRUZXh0MihzdHlsZVNo
ZWV0SWQsIGNhbGxiYWNrLmJpbmQodGhpcykpOworICAgIH0sCisKKyAgICBfb25SZXZlcnQ6IGZ1
bmN0aW9uKHN0eWxlU2hlZXRJZCwgY29udGVudFRvUmV2ZXJ0VG8pCisgICAgeworICAgICAgICBm
dW5jdGlvbiBjYWxsYmFjayhzdWNjZXNzKQorICAgICAgICB7CisgICAgICAgICAgICB0aGlzLl9z
dHlsZVNoZWV0Q2hhbmdlZChzdHlsZVNoZWV0SWQsIHRydWUpOworICAgICAgICB9CisgICAgICAg
IEluc3BlY3RvckJhY2tlbmQuc2V0U3R5bGVTaGVldFRleHQyKHN0eWxlU2hlZXRJZCwgY29udGVu
dFRvUmV2ZXJ0VG8sIGNhbGxiYWNrLmJpbmQodGhpcykpOwogICAgIH0KIH0KIApkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlLmpzIGIvV2ViQ29yZS9pbnNw
ZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlLmpzCmluZGV4IDlkYTdmODIuLmEzMDU1YjEgMTAwNjQ0
Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9SZXNvdXJjZS5qcworKysgYi9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUmVzb3VyY2UuanMKQEAgLTYyNSwyMiArNjI1LDY5IEBA
IFdlYkluc3BlY3Rvci5SZXNvdXJjZS5wcm90b3R5cGUgPSB7CiAgICAgICAgIHJldHVybiB0aGlz
Ll9jb250ZW50OwogICAgIH0sCiAKLSAgICBzZXQgY29udGVudChjb250ZW50KQorICAgIGdldCBj
b250ZW50VGltZXN0YW1wKCkKKyAgICB7CisgICAgICAgIHJldHVybiB0aGlzLl9jb250ZW50VGlt
ZXN0YW1wOworICAgIH0sCisKKyAgICBzZXRJbml0aWFsQ29udGVudDogZnVuY3Rpb24oY29udGVu
dCkKICAgICB7Ci0gICAgICAgIHZhciBkYXRhID0geyBvbGRDb250ZW50OiB0aGlzLl9jb250ZW50
LCBvbGRDb250ZW50VGltZXN0YW1wOiB0aGlzLl9jb250ZW50VGltZXN0YW1wIH07CiAgICAgICAg
IHRoaXMuX2NvbnRlbnQgPSBjb250ZW50OwotICAgICAgICB0aGlzLl9jb250ZW50VGltZXN0YW1w
ID0gbmV3IERhdGUoKTsKKyAgICB9LAorCisgICAgaXNMb2NhbGx5TW9kaWZpZWQ6IGZ1bmN0aW9u
KCkKKyAgICB7CisgICAgICAgIHJldHVybiAhIXRoaXMuX2Jhc2VSZXZpc2lvbjsKKyAgICB9LAor
CisgICAgc2V0Q29udGVudDogZnVuY3Rpb24obmV3Q29udGVudCwgb25SZXZlcnQpCisgICAgewor
ICAgICAgICB2YXIgcmV2aXNpb25SZXNvdXJjZSA9IG5ldyBXZWJJbnNwZWN0b3IuUmVzb3VyY2Uo
bnVsbCwgdGhpcy51cmwpOworICAgICAgICByZXZpc2lvblJlc291cmNlLnR5cGUgPSB0aGlzLnR5
cGU7CisgICAgICAgIHJldmlzaW9uUmVzb3VyY2UubG9hZGVyID0gdGhpcy5sb2FkZXI7CisgICAg
ICAgIHJldmlzaW9uUmVzb3VyY2UudGltZXN0YW1wID0gdGhpcy50aW1lc3RhbXA7CisgICAgICAg
IHJldmlzaW9uUmVzb3VyY2UuX2NvbnRlbnQgPSB0aGlzLl9jb250ZW50OworICAgICAgICByZXZp
c2lvblJlc291cmNlLl9hY3R1YWxSZXNvdXJjZSA9IHRoaXM7CisgICAgICAgIHJldmlzaW9uUmVz
b3VyY2UuX2ZpcmVPblJldmVydCA9IG9uUmV2ZXJ0OworCisgICAgICAgIGlmICh0aGlzLmZpbmlz
aGVkKQorICAgICAgICAgICAgcmV2aXNpb25SZXNvdXJjZS5maW5pc2hlZCA9IHRydWU7CisgICAg
ICAgIGVsc2UgeworICAgICAgICAgICAgZnVuY3Rpb24gZmluaXNoZWQoKQorICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZmluaXNoZWQiLCBm
aW5pc2hlZCk7CisgICAgICAgICAgICAgICAgcmV2aXNpb25SZXNvdXJjZS5maW5pc2hlZCA9IHRy
dWU7CisgICAgICAgICAgICB9CisgICAgICAgICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoImZp
bmlzaGVkIiwgZmluaXNoZWQuYmluZCh0aGlzKSk7CisgICAgICAgIH0KKworICAgICAgICBpZiAo
IXRoaXMuX2Jhc2VSZXZpc2lvbikKKyAgICAgICAgICAgIHRoaXMuX2Jhc2VSZXZpc2lvbiA9IHJl
dmlzaW9uUmVzb3VyY2U7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJldmlzaW9uUmVzb3Vy
Y2UuX2Jhc2VSZXZpc2lvbiA9IHRoaXMuX2Jhc2VSZXZpc2lvbjsKKworICAgICAgICB2YXIgZGF0
YSA9IHsgcmV2aXNpb246IHJldmlzaW9uUmVzb3VyY2UgfTsKKyAgICAgICAgdGhpcy5fY29udGVu
dCA9IG5ld0NvbnRlbnQ7CisgICAgICAgIHRoaXMudGltZXN0YW1wID0gbmV3IERhdGUoKTsKICAg
ICAgICAgdGhpcy5kaXNwYXRjaEV2ZW50VG9MaXN0ZW5lcnMoImNvbnRlbnQtY2hhbmdlZCIsIGRh
dGEpOwogICAgIH0sCiAKLSAgICBnZXQgY29udGVudFRpbWVzdGFtcCgpCisgICAgcmV2ZXJ0VG9U
aGlzOiBmdW5jdGlvbigpCiAgICAgewotICAgICAgICByZXR1cm4gdGhpcy5fY29udGVudFRpbWVz
dGFtcDsKKyAgICAgICAgaWYgKCF0aGlzLl9hY3R1YWxSZXNvdXJjZSB8fCAhdGhpcy5fZmlyZU9u
UmV2ZXJ0KQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIGZ1bmN0aW9uIGNhbGxiYWNr
KGNvbnRlbnQpCisgICAgICAgIHsKKyAgICAgICAgICAgIGlmIChjb250ZW50KQorICAgICAgICAg
ICAgICAgIHRoaXMuX2ZpcmVPblJldmVydChjb250ZW50KTsKKyAgICAgICAgfQorICAgICAgICB0
aGlzLnJlcXVlc3RDb250ZW50KGNhbGxiYWNrLmJpbmQodGhpcykpOwogICAgIH0sCiAKLSAgICBz
ZXRJbml0aWFsQ29udGVudDogZnVuY3Rpb24oY29udGVudCkKKyAgICBnZXQgYmFzZVJldmlzaW9u
KCkKICAgICB7Ci0gICAgICAgIHRoaXMuX2NvbnRlbnQgPSBjb250ZW50OworICAgICAgICByZXR1
cm4gdGhpcy5fYmFzZVJldmlzaW9uOwogICAgIH0sCiAKICAgICByZXF1ZXN0Q29udGVudDogZnVu
Y3Rpb24oY2FsbGJhY2spCkBAIC02ODEsNyArNzI4LDcgQEAgV2ViSW5zcGVjdG9yLlJlc291cmNl
LnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl9jb250ZW50UmVxdWVzdGVk
OwogICAgICAgICB9CiAgICAgICAgIFdlYkluc3BlY3Rvci5SZXNvdXJjZU1hbmFnZXIucmVxdWVz
dENvbnRlbnQodGhpcywgdGhpcy5fY29udGVudEVuY29kZWQsIG9uUmVzb3VyY2VDb250ZW50LmJp
bmQodGhpcykpOwotICAgIH0KKyAgICB9ICAgIAogfQogCiBXZWJJbnNwZWN0b3IuUmVzb3VyY2Uu
cHJvdG90eXBlLl9fcHJvdG9fXyA9IFdlYkluc3BlY3Rvci5PYmplY3QucHJvdG90eXBlOwpkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlc1BhbmVsLmpzIGIv
V2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlc1BhbmVsLmpzCmluZGV4IDVjNWM1
ZDYuLmQ2ZjcxNzIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9SZXNv
dXJjZXNQYW5lbC5qcworKysgYi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUmVzb3VyY2Vz
UGFuZWwuanMKQEAgLTM2OSwxMyArMzY5LDEzIEBAIFdlYkluc3BlY3Rvci5SZXNvdXJjZXNQYW5l
bC5wcm90b3R5cGUgPSB7CiAgICAgICAgIHZhciB2aWV3ID0gV2ViSW5zcGVjdG9yLlJlc291cmNl
TWFuYWdlci5yZXNvdXJjZVZpZXdGb3JSZXNvdXJjZShyZXNvdXJjZSk7CiAKICAgICAgICAgLy8g
Q29uc2lkZXIgcmVuZGVyaW5nIGRpZmYgbWFya3VwIGhlcmUuCi0gICAgICAgIGlmIChyZXNvdXJj
ZS5fYmFzZVJldmlzaW9uICYmIHJlc291cmNlLmNvbnRlbnQgJiYgdmlldyBpbnN0YW5jZW9mIFdl
Ykluc3BlY3Rvci5Tb3VyY2VWaWV3KSB7CisgICAgICAgIGlmIChyZXNvdXJjZS5iYXNlUmV2aXNp
b24gJiYgdmlldyBpbnN0YW5jZW9mIFdlYkluc3BlY3Rvci5Tb3VyY2VWaWV3KSB7CiAgICAgICAg
ICAgICBmdW5jdGlvbiBjYWxsYmFjayhiYXNlQ29udGVudCkKICAgICAgICAgICAgIHsKICAgICAg
ICAgICAgICAgICBpZiAoYmFzZUNvbnRlbnQpCiAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2Fw
cGx5RGlmZk1hcmt1cCh2aWV3LCBiYXNlQ29udGVudCwgcmVzb3VyY2UuY29udGVudCk7CiAgICAg
ICAgICAgICB9Ci0gICAgICAgICAgICByZXNvdXJjZS5fYmFzZVJldmlzaW9uLnJlcXVlc3RDb250
ZW50KGNhbGxiYWNrLmJpbmQodGhpcykpOworICAgICAgICAgICAgcmVzb3VyY2UuYmFzZVJldmlz
aW9uLnJlcXVlc3RDb250ZW50KGNhbGxiYWNrLmJpbmQodGhpcykpOwogICAgICAgICB9CiAgICAg
ICAgIHRoaXMuX2lubmVyU2hvd1ZpZXcodmlldyk7CiAgICAgfSwKQEAgLTEwOTEsMjggKzEwOTEs
NyBAQCBXZWJJbnNwZWN0b3IuRnJhbWVSZXNvdXJjZVRyZWVFbGVtZW50LnByb3RvdHlwZSA9IHsK
IAogICAgIF9jb250ZW50Q2hhbmdlZDogZnVuY3Rpb24oZXZlbnQpCiAgICAgewotICAgICAgICB2
YXIgcmV2aXNpb25SZXNvdXJjZSA9IG5ldyBXZWJJbnNwZWN0b3IuUmVzb3VyY2UobnVsbCwgdGhp
cy5fcmVzb3VyY2UudXJsKTsKLSAgICAgICAgcmV2aXNpb25SZXNvdXJjZS50eXBlID0gdGhpcy5f
cmVzb3VyY2UudHlwZTsKLSAgICAgICAgcmV2aXNpb25SZXNvdXJjZS5sb2FkZXIgPSB0aGlzLl9y
ZXNvdXJjZS5sb2FkZXI7Ci0gICAgICAgIGlmICh0aGlzLl9yZXNvdXJjZS5maW5pc2hlZCkKLSAg
ICAgICAgICAgIHJldmlzaW9uUmVzb3VyY2UuZmluaXNoZWQgPSB0cnVlOwotICAgICAgICBlbHNl
IHsKLSAgICAgICAgICAgIGZ1bmN0aW9uIGZpbmlzaGVkKCkKLSAgICAgICAgICAgIHsKLSAgICAg
ICAgICAgICAgICByZXZpc2lvblJlc291cmNlLmZpbmlzaGVkID0gdHJ1ZTsKLSAgICAgICAgICAg
IH0KLSAgICAgICAgICAgIHRoaXMuX3Jlc291cmNlLmFkZEV2ZW50TGlzdGVuZXIoImZpbmlzaGVk
IiwgZmluaXNoZWQpOwotICAgICAgICB9Ci0KLSAgICAgICAgaWYgKCF0aGlzLl9yZXNvdXJjZS5f
YmFzZVJldmlzaW9uKQotICAgICAgICAgICAgdGhpcy5fcmVzb3VyY2UuX2Jhc2VSZXZpc2lvbiA9
IHJldmlzaW9uUmVzb3VyY2U7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIHJldmlzaW9uUmVz
b3VyY2UuX2Jhc2VSZXZpc2lvbiA9IHRoaXMuX3Jlc291cmNlLl9iYXNlUmV2aXNpb247Ci0KLSAg
ICAgICAgaWYgKGV2ZW50LmRhdGEub2xkQ29udGVudCkKLSAgICAgICAgICAgIHJldmlzaW9uUmVz
b3VyY2Uuc2V0SW5pdGlhbENvbnRlbnQoZXZlbnQuZGF0YS5vbGRDb250ZW50KTsKLSAgICAgICAg
dGhpcy5pbnNlcnRDaGlsZChuZXcgV2ViSW5zcGVjdG9yLlJlc291cmNlUmV2aXNpb25UcmVlRWxl
bWVudCh0aGlzLl9zdG9yYWdlUGFuZWwsIHJldmlzaW9uUmVzb3VyY2UsIGV2ZW50LmRhdGEub2xk
Q29udGVudFRpbWVzdGFtcCksIDApOwotCisgICAgICAgIHRoaXMuaW5zZXJ0Q2hpbGQobmV3IFdl
Ykluc3BlY3Rvci5SZXNvdXJjZVJldmlzaW9uVHJlZUVsZW1lbnQodGhpcy5fc3RvcmFnZVBhbmVs
LCBldmVudC5kYXRhLnJldmlzaW9uKSwgMCk7CiAgICAgICAgIHZhciBvbGRWaWV3ID0gV2ViSW5z
cGVjdG9yLlJlc291cmNlTWFuYWdlci5leGlzdGluZ1Jlc291cmNlVmlld0ZvclJlc291cmNlKHRo
aXMuX3Jlc291cmNlKTsKICAgICAgICAgaWYgKG9sZFZpZXcpIHsKICAgICAgICAgICAgIHZhciBu
ZXdWaWV3ID0gV2ViSW5zcGVjdG9yLlJlc291cmNlTWFuYWdlci5yZWNyZWF0ZVJlc291cmNlVmll
dyh0aGlzLl9yZXNvdXJjZSk7CkBAIC0xMjQ2LDEzICsxMjI1LDEzIEBAIFdlYkluc3BlY3Rvci5B
cHBsaWNhdGlvbkNhY2hlVHJlZUVsZW1lbnQucHJvdG90eXBlID0gewogfQogV2ViSW5zcGVjdG9y
LkFwcGxpY2F0aW9uQ2FjaGVUcmVlRWxlbWVudC5wcm90b3R5cGUuX19wcm90b19fID0gV2ViSW5z
cGVjdG9yLkJhc2VTdG9yYWdlVHJlZUVsZW1lbnQucHJvdG90eXBlOwogCi1XZWJJbnNwZWN0b3Iu
UmVzb3VyY2VSZXZpc2lvblRyZWVFbGVtZW50ID0gZnVuY3Rpb24oc3RvcmFnZVBhbmVsLCByZXNv
dXJjZSwgdGltZXN0YW1wKQorV2ViSW5zcGVjdG9yLlJlc291cmNlUmV2aXNpb25UcmVlRWxlbWVu
dCA9IGZ1bmN0aW9uKHN0b3JhZ2VQYW5lbCwgcmV2aXNpb24pCiB7Ci0gICAgdmFyIHRpdGxlID0g
dGltZXN0YW1wID8gdGltZXN0YW1wLnRvTG9jYWxlVGltZVN0cmluZygpIDogIihvcmlnaW5hbCki
OwotICAgIFdlYkluc3BlY3Rvci5CYXNlU3RvcmFnZVRyZWVFbGVtZW50LmNhbGwodGhpcywgc3Rv
cmFnZVBhbmVsLCBudWxsLCB0aXRsZSwgInJlc291cmNlLXNpZGViYXItdHJlZS1pdGVtIHJlc291
cmNlcy1jYXRlZ29yeS0iICsgcmVzb3VyY2UuY2F0ZWdvcnkubmFtZSk7Ci0gICAgaWYgKHRpbWVz
dGFtcCkKLSAgICAgICAgdGhpcy50b29sdGlwID0gdGltZXN0YW1wLnRvTG9jYWxlU3RyaW5nKCk7
Ci0gICAgdGhpcy5fcmVzb3VyY2UgPSByZXNvdXJjZTsKKyAgICB2YXIgdGl0bGUgPSByZXZpc2lv
bi50aW1lc3RhbXAgPyByZXZpc2lvbi50aW1lc3RhbXAudG9Mb2NhbGVUaW1lU3RyaW5nKCkgOiAi
KG9yaWdpbmFsKSI7CisgICAgV2ViSW5zcGVjdG9yLkJhc2VTdG9yYWdlVHJlZUVsZW1lbnQuY2Fs
bCh0aGlzLCBzdG9yYWdlUGFuZWwsIG51bGwsIHRpdGxlLCAicmVzb3VyY2Utc2lkZWJhci10cmVl
LWl0ZW0gcmVzb3VyY2VzLWNhdGVnb3J5LSIgKyByZXZpc2lvbi5jYXRlZ29yeS5uYW1lKTsKKyAg
ICBpZiAocmV2aXNpb24udGltZXN0YW1wKQorICAgICAgICB0aGlzLnRvb2x0aXAgPSByZXZpc2lv
bi50aW1lc3RhbXAudG9Mb2NhbGVTdHJpbmcoKTsKKyAgICB0aGlzLl9yZXNvdXJjZSA9IHJldmlz
aW9uOwogfQogCiBXZWJJbnNwZWN0b3IuUmVzb3VyY2VSZXZpc2lvblRyZWVFbGVtZW50LnByb3Rv
dHlwZSA9IHsKQEAgLTEyNjEsNiArMTI0MCw3IEBAIFdlYkluc3BlY3Rvci5SZXNvdXJjZVJldmlz
aW9uVHJlZUVsZW1lbnQucHJvdG90eXBlID0gewogICAgICAgICBXZWJJbnNwZWN0b3IuQmFzZVN0
b3JhZ2VUcmVlRWxlbWVudC5wcm90b3R5cGUub25hdHRhY2guY2FsbCh0aGlzKTsKICAgICAgICAg
dGhpcy5saXN0SXRlbUVsZW1lbnQuZHJhZ2dhYmxlID0gdHJ1ZTsKICAgICAgICAgdGhpcy5saXN0
SXRlbUVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZHJhZ3N0YXJ0IiwgdGhpcy5fb25kcmFnc3Rh
cnQuYmluZCh0aGlzKSwgZmFsc2UpOworICAgICAgICB0aGlzLmxpc3RJdGVtRWxlbWVudC5hZGRF
dmVudExpc3RlbmVyKCJjb250ZXh0bWVudSIsIHRoaXMuX2hhbmRsZUNvbnRleHRNZW51RXZlbnQu
YmluZCh0aGlzKSwgdHJ1ZSk7CiAgICAgfSwKIAogICAgIG9uc2VsZWN0OiBmdW5jdGlvbigpCkBA
IC0xMjc0LDYgKzEyNTQsMTMgQEAgV2ViSW5zcGVjdG9yLlJlc291cmNlUmV2aXNpb25UcmVlRWxl
bWVudC5wcm90b3R5cGUgPSB7CiAgICAgICAgIGV2ZW50LmRhdGFUcmFuc2Zlci5zZXREYXRhKCJ0
ZXh0L3BsYWluIiwgdGhpcy5fcmVzb3VyY2UuY29udGVudCk7CiAgICAgICAgIGV2ZW50LmRhdGFU
cmFuc2Zlci5lZmZlY3RBbGxvd2VkID0gImNvcHkiOwogICAgICAgICByZXR1cm4gdHJ1ZTsKKyAg
ICB9LAorCisgICAgX2hhbmRsZUNvbnRleHRNZW51RXZlbnQ6IGZ1bmN0aW9uKGV2ZW50KQorICAg
IHsKKyAgICAgICAgdmFyIGNvbnRleHRNZW51ID0gbmV3IFdlYkluc3BlY3Rvci5Db250ZXh0TWVu
dSgpOworICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdlYkluc3BlY3Rvci5VSVN0cmlu
ZygiUmV2ZXJ0IHRvIHRoaXMgcmV2aXNpb24iKSwgdGhpcy5fcmVzb3VyY2UucmV2ZXJ0VG9UaGlz
LmJpbmQodGhpcy5fcmVzb3VyY2UpKTsKKyAgICAgICAgY29udGV4dE1lbnUuc2hvdyhldmVudCk7
CiAgICAgfQogfQogCmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2Ny
aXB0c1BhbmVsLmpzIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNQYW5lbC5q
cwppbmRleCAwYTNjN2E5Li42MWEyZjI4IDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9m
cm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9TY3JpcHRzUGFuZWwuanMKQEAgLTMwNiw3ICszMDYsNyBAQCBXZWJJbnNwZWN0b3IuU2NyaXB0
c1BhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgcmV0dXJuIFByZWZlcmVuY2VzLmNhbkVkaXRT
Y3JpcHRTb3VyY2U7CiAgICAgfSwKIAotICAgIGVkaXRTY3JpcHRTb3VyY2U6IGZ1bmN0aW9uKHNv
dXJjZUlELCBuZXdDb250ZW50LCBsaW5lLCBsaW5lc0NvdW50VG9TaGlmdCwgY29tbWl0RWRpdGlu
Z0NhbGxiYWNrLCBjYW5jZWxFZGl0aW5nQ2FsbGJhY2spCisgICAgZWRpdFNjcmlwdFNvdXJjZTog
ZnVuY3Rpb24oZWRpdERhdGEsIGNvbW1pdEVkaXRpbmdDYWxsYmFjaywgY2FuY2VsRWRpdGluZ0Nh
bGxiYWNrKQogICAgIHsKICAgICAgICAgaWYgKCF0aGlzLmNhbkVkaXRTY3JpcHRzKCkpCiAgICAg
ICAgICAgICByZXR1cm47CkBAIC0zMjMsMTggKzMyMywxOSBAQCBXZWJJbnNwZWN0b3IuU2NyaXB0
c1BhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgICAgICBpZiAoY2FsbEZyYW1lcyAmJiBj
YWxsRnJhbWVzLmxlbmd0aCkKICAgICAgICAgICAgICAgICAgICAgdGhpcy5kZWJ1Z2dlclBhdXNl
ZChjYWxsRnJhbWVzKTsKICAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgICAgY2Fu
Y2VsRWRpdGluZ0NhbGxiYWNrKCk7CisgICAgICAgICAgICAgICAgaWYgKGNhbmNlbEVkaXRpbmdD
YWxsYmFjaykKKyAgICAgICAgICAgICAgICAgICAgY2FuY2VsRWRpdGluZ0NhbGxiYWNrKCk7CiAg
ICAgICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmxvZyhuZXdCb2R5T3JFcnJvck1lc3NhZ2UsIFdl
Ykluc3BlY3Rvci5Db25zb2xlTWVzc2FnZS5NZXNzYWdlTGV2ZWwuV2FybmluZyk7CiAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGJyZWFrcG9pbnRzLmxlbmd0
aDsgKytpKSB7CiAgICAgICAgICAgICAgICAgdmFyIGJyZWFrcG9pbnQgPSBicmVha3BvaW50c1tp
XTsKICAgICAgICAgICAgICAgICB2YXIgbmV3TGluZSA9IGJyZWFrcG9pbnQubGluZTsKLSAgICAg
ICAgICAgICAgICBpZiAoc3VjY2VzcyAmJiBicmVha3BvaW50LmxpbmUgPj0gbGluZSkKLSAgICAg
ICAgICAgICAgICAgICAgbmV3TGluZSArPSBsaW5lc0NvdW50VG9TaGlmdDsKLSAgICAgICAgICAg
ICAgICBXZWJJbnNwZWN0b3IuYnJlYWtwb2ludE1hbmFnZXIuc2V0QnJlYWtwb2ludChzb3VyY2VJ
RCwgYnJlYWtwb2ludC51cmwsIG5ld0xpbmUsIGJyZWFrcG9pbnQuZW5hYmxlZCwgYnJlYWtwb2lu
dC5jb25kaXRpb24pOworICAgICAgICAgICAgICAgIGlmIChzdWNjZXNzICYmIGJyZWFrcG9pbnQu
bGluZSA+PSBlZGl0RGF0YS5saW5lKQorICAgICAgICAgICAgICAgICAgICBuZXdMaW5lICs9IGVk
aXREYXRhLmxpbmVzQ291bnRUb1NoaWZ0OworICAgICAgICAgICAgICAgIFdlYkluc3BlY3Rvci5i
cmVha3BvaW50TWFuYWdlci5zZXRCcmVha3BvaW50KGVkaXREYXRhLnNvdXJjZUlELCBicmVha3Bv
aW50LnVybCwgbmV3TGluZSwgYnJlYWtwb2ludC5lbmFibGVkLCBicmVha3BvaW50LmNvbmRpdGlv
bik7CiAgICAgICAgICAgICB9CiAgICAgICAgIH07Ci0gICAgICAgIEluc3BlY3RvckJhY2tlbmQu
ZWRpdFNjcmlwdFNvdXJjZShzb3VyY2VJRCwgbmV3Q29udGVudCwgbXljYWxsYmFjay5iaW5kKHRo
aXMpKTsKKyAgICAgICAgSW5zcGVjdG9yQmFja2VuZC5lZGl0U2NyaXB0U291cmNlKGVkaXREYXRh
LnNvdXJjZUlELCBlZGl0RGF0YS5jb250ZW50LCBteWNhbGxiYWNrLmJpbmQodGhpcykpOwogICAg
IH0sCiAKICAgICBzZWxlY3RlZENhbGxGcmFtZUlkOiBmdW5jdGlvbigpCmRpZmYgLS1naXQgYS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU291cmNlVmlldy5qcyBiL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9Tb3VyY2VWaWV3LmpzCmluZGV4IGU3NjRjZjguLjk2MTYzMjEgMTAwNjQ0
Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Tb3VyY2VWaWV3LmpzCisrKyBiL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Tb3VyY2VWaWV3LmpzCkBAIC0xNDcsMTQgKzE0Nywy
OCBAQCBXZWJJbnNwZWN0b3IuU291cmNlVmlldy5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICAg
ICAgbGluZXMucHVzaCh0ZXh0TW9kZWwubGluZShpKSk7CiAgICAgICAgIH0KIAotICAgICAgICB2
YXIgbGluZXNDb3VudFRvU2hpZnQgPSBuZXdDb250ZW50LnNwbGl0KCJcbiIpLmxlbmd0aCAtIDE7
Ci0gICAgICAgIHZhciBuZXdDb250ZW50ID0gbGluZXMuam9pbigiXG4iKTsKLSAgICAgICAgV2Vi
SW5zcGVjdG9yLnBhbmVscy5zY3JpcHRzLmVkaXRTY3JpcHRTb3VyY2UodGhpcy5fc291cmNlSURG
b3JMaW5lKGxpbmUpLCBuZXdDb250ZW50LCBsaW5lLCBsaW5lc0NvdW50VG9TaGlmdCwgdGhpcy5f
ZWRpdExpbmVDb21wbGV0ZS5iaW5kKHRoaXMsIG5ld0NvbnRlbnQpLCBjYW5jZWxFZGl0aW5nQ2Fs
bGJhY2spOworICAgICAgICB2YXIgZWRpdERhdGEgPSB7fTsKKyAgICAgICAgZWRpdERhdGEuc291
cmNlSUQgPSB0aGlzLl9zb3VyY2VJREZvckxpbmUobGluZSk7CisgICAgICAgIGVkaXREYXRhLmNv
bnRlbnQgPSBsaW5lcy5qb2luKCJcbiIpOworICAgICAgICBlZGl0RGF0YS5saW5lID0gbGluZTsK
KyAgICAgICAgZWRpdERhdGEubGluZXNDb3VudFRvU2hpZnQgPSBuZXdDb250ZW50LnNwbGl0KCJc
biIpLmxlbmd0aCAtIDE7CisKKyAgICAgICAgV2ViSW5zcGVjdG9yLnBhbmVscy5zY3JpcHRzLmVk
aXRTY3JpcHRTb3VyY2UoZWRpdERhdGEsIHRoaXMuX2VkaXRMaW5lQ29tcGxldGUuYmluZCh0aGlz
LCBlZGl0RGF0YSksIGNhbmNlbEVkaXRpbmdDYWxsYmFjayk7CisgICAgfSwKKworICAgIF9lZGl0
TGluZUNvbXBsZXRlOiBmdW5jdGlvbihlZGl0RGF0YSwgbmV3Q29udGVudCkKKyAgICB7CisgICAg
ICAgIHRoaXMucmVzb3VyY2Uuc2V0Q29udGVudChuZXdDb250ZW50LCB0aGlzLl9yZXZlcnRFZGl0
TGluZS5iaW5kKHRoaXMsIGVkaXREYXRhKSk7CiAgICAgfSwKIAotICAgIF9lZGl0TGluZUNvbXBs
ZXRlOiBmdW5jdGlvbihuZXdDb250ZW50KQorICAgIF9yZXZlcnRFZGl0TGluZTogZnVuY3Rpb24o
ZWRpdERhdGEsIGNvbnRlbnRUb1JldmVydFRvKQogICAgIHsKLSAgICAgICAgdGhpcy5yZXNvdXJj
ZS5jb250ZW50ID0gbmV3Q29udGVudDsKKyAgICAgICAgdmFyIG5ld0VkaXREYXRhID0ge307Cisg
ICAgICAgIG5ld0VkaXREYXRhLnNvdXJjZUlEID0gZWRpdERhdGEuc291cmNlSUQ7CisgICAgICAg
IG5ld0VkaXREYXRhLmNvbnRlbnQgPSBlZGl0RGF0YS5jb250ZW50OworICAgICAgICBuZXdFZGl0
RGF0YS5saW5lID0gZWRpdERhdGEubGluZTsKKyAgICAgICAgbmV3RWRpdERhdGEubGluZXNDb3Vu
dFRvU2hpZnQgPSAtZWRpdERhdGEubGluZXNDb3VudFRvU2hpZnQ7CisgICAgICAgIFdlYkluc3Bl
Y3Rvci5wYW5lbHMuc2NyaXB0cy5lZGl0U2NyaXB0U291cmNlKG5ld0VkaXREYXRhLCB0aGlzLl9l
ZGl0TGluZUNvbXBsZXRlLmJpbmQodGhpcywgbmV3RWRpdERhdGEpKTsKICAgICB9LAogCiAgICAg
X3NvdXJjZUlERm9yTGluZTogZnVuY3Rpb24obGluZSkK
</data>
<flag name="review"
          id="65895"
          type_id="1"
          status="+"
          setter="yurys"
    />
          </attachment>
      

    </bug>

</bugzilla>