<?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>43854</bug_id>
          
          <creation_ts>2010-08-11 08:41:31 -0700</creation_ts>
          <short_desc>Web Inspector: remove openInInspectorWindow and evaluateAndStringify from InjectedScript.</short_desc>
          <delta_ts>2010-08-13 05:08:56 -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 (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>bweinstein</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>263262</commentid>
    <comment_count>0</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-08-11 08:41:31 -0700</bug_when>
    <thetext>Patch to follow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>263263</commentid>
    <comment_count>1</comment_count>
      <attachid>64118</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-08-11 08:42:42 -0700</bug_when>
    <thetext>Created attachment 64118
[PATCH] Proposed change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>263266</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-08-11 08:47:14 -0700</bug_when>
    <thetext>Attachment 64118 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;]&quot; exit_code: 1
WebCore/inspector/InspectorController.cpp:50:  Alphabetical sorting problem.  [build/include_order] [4]
WebCore/inspector/InspectorController.cpp:1930:  An else statement can be removed when the prior &quot;if&quot; concludes with a return, break, continue or goto statement.  [readability/control_flow] [4]
Total errors found: 2 in 8 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>263617</commentid>
    <comment_count>3</comment_count>
      <attachid>64118</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2010-08-11 23:22:50 -0700</bug_when>
    <thetext>Comment on attachment 64118
[PATCH] Proposed change.

WebCore/inspector/InspectorController.cpp:1884
 +      newFrame-&gt;loader()-&gt;setOpener(mainFrame);
We may want to break this link for security reasons(to avoid possibility for the inspected page to open an arbitrary URL by means of the web inspector and have an access to it).

WebCore/inspector/InspectorController.cpp:1925
 +  InjectedScript InspectorController::injectedScriptForId(long id)
It&apos;s not used anywhere, please remove.

WebCore/inspector/front-end/InjectedScriptAccess.js: 
 +  InjectedScriptAccess._installHandler(&quot;evaluateAndStringify&quot;);
Please fix the callers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264286</commentid>
    <comment_count>4</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-08-13 04:55:56 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 64118 [details])
&gt; WebCore/inspector/InspectorController.cpp:1884
&gt;  +      newFrame-&gt;loader()-&gt;setOpener(mainFrame);
&gt; We may want to break this link for security reasons(to avoid possibility for the inspected page to open an arbitrary URL by means of the web inspector and have an access to it).
&gt; 

It is not worse than it used to be + I don&apos;t think it is exploitable.

&gt; WebCore/inspector/InspectorController.cpp:1925
&gt;  +  InjectedScript InspectorController::injectedScriptForId(long id)
&gt; It&apos;s not used anywhere, please remove.
&gt; 

Done.

&gt; WebCore/inspector/front-end/InjectedScriptAccess.js: 
&gt;  +  InjectedScriptAccess._installHandler(&quot;evaluateAndStringify&quot;);
&gt; Please fix the callers.


Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264287</commentid>
    <comment_count>5</comment_count>
      <attachid>64320</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-08-13 04:56:43 -0700</bug_when>
    <thetext>Created attachment 64320
[PATCH] Proposed change</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264294</commentid>
    <comment_count>6</comment_count>
      <attachid>64320</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-08-13 05:08:46 -0700</bug_when>
    <thetext>Comment on attachment 64320
[PATCH] Proposed change

Clearing flags on attachment: 64320

Committed r65314: &lt;http://trac.webkit.org/changeset/65314&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264295</commentid>
    <comment_count>7</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-08-13 05:08:56 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>64118</attachid>
            <date>2010-08-11 08:42:42 -0700</date>
            <delta_ts>2010-08-13 04:56:43 -0700</delta_ts>
            <desc>[PATCH] Proposed change.</desc>
            <filename>move_open_and_eval</filename>
            <type>text/plain</type>
            <size>9942</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
OTBiMmI4NS4uM2JiMDUyZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNSBAQAorMjAxMC0wOC0xMSAgUGF2ZWwgRmVsZG1h
biAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiByZW1vdmUgb3BlbkluSW5zcGVjdG9y
V2luZG93IGFuZCBldmFsdWF0ZUFuZFN0cmluZ2lmeSBmcm9tIEluamVjdGVkU2NyaXB0LgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDM4NTQKKworICAg
ICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3IuaWRsOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNw
ZWN0b3JDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xs
ZXI6Om9wZW5Jbkluc3BlY3RlZFdpbmRvdyk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JD
b250cm9sbGVyOjppbmplY3RlZFNjcmlwdEZvcklkKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5z
cGVjdG9yQ29udHJvbGxlci5oOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvRXh0ZW5z
aW9uU2VydmVyLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkV4dGVuc2lvblNlcnZlci5wcm90
b3R5cGUuX29uRXZhbHVhdGVPbkluc3BlY3RlZFBhZ2UpOgorICAgICAgICAqIGluc3BlY3Rvci9m
cm9udC1lbmQvSW5qZWN0ZWRTY3JpcHQuanM6CisgICAgICAgIChpbmplY3RlZFNjcmlwdENvbnN0
cnVjdG9yKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0luamVjdGVkU2NyaXB0QWNj
ZXNzLmpzOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvSW5zcGVjdG9yQmFja2VuZFN0
dWIuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSW5zcGVjdG9yQmFja2VuZFN0dWIpOgorICAg
ICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvUmVzb3VyY2VzUGFuZWwuanM6CisgICAgICAgIChX
ZWJJbnNwZWN0b3IuUmVzb3VyY2VTaWRlYmFyVHJlZUVsZW1lbnQucHJvdG90eXBlLm9uZGJsY2xp
Y2spOgorCiAyMDEwLTA4LTExICBJbHlhIFRpa2hvbm92c2t5ICA8bG9pc2xvQGNocm9taXVtLm9y
Zz4KIAogICAgICAgICBSZXZpZXdlZCBieSBQYXZlbCBGZWxkbWFuLgpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yLmlkbCBiL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ci5pZGwKaW5kZXggOWQzZDEwMi4uMmUxNDMxMCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9yLmlkbAorKysgYi9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3IuaWRsCkBA
IC0xODAsNiArMTgwLDcgQEAgbW9kdWxlIGNvcmUgewogCiAgICAgICAgIFtoYW5kbGVyPUNvbnRy
b2xsZXJdIHZvaWQgaGlnaGxpZ2h0RE9NTm9kZShpbiBsb25nIG5vZGVJZCk7CiAgICAgICAgIFto
YW5kbGVyPUNvbnRyb2xsZXJdIHZvaWQgaGlkZURPTU5vZGVIaWdobGlnaHQoKTsKKyAgICAgICAg
W2hhbmRsZXI9Q29udHJvbGxlcl0gdm9pZCBvcGVuSW5JbnNwZWN0ZWRXaW5kb3coaW4gU3RyaW5n
IHVybCk7CiAKICAgICAgICAgW2hhbmRsZXI9RE9NXSB2b2lkIGdldFN0eWxlcyhpbiBsb25nIGNh
bGxJZCwgaW4gbG9uZyBub2RlSWQsIGluIGJvb2xlYW4gYXV0aE9ubHksIG91dCBWYWx1ZSBzdHls
ZXMpOwogICAgICAgICBbaGFuZGxlcj1ET01dIHZvaWQgZ2V0QWxsU3R5bGVzKGluIGxvbmcgY2Fs
bElkLCBvdXQgQXJyYXkgc3R5bGVzKTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvckNvbnRyb2xsZXIuY3BwIGIvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJv
bGxlci5jcHAKaW5kZXggOTkzZmVkNC4uNDc3YTg0YyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNw
ZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvSW5z
cGVjdG9yQ29udHJvbGxlci5jcHAKQEAgLTQ3LDYgKzQ3LDcgQEAKICNpbmNsdWRlICJGbG9hdFJl
Y3QuaCIKICNpbmNsdWRlICJGcmFtZS5oIgogI2luY2x1ZGUgIkZyYW1lTG9hZGVyLmgiCisjaW5j
bHVkZSAiRnJhbWVMb2FkUmVxdWVzdC5oIgogI2luY2x1ZGUgIkZyYW1lVHJlZS5oIgogI2luY2x1
ZGUgIkZyYW1lVmlldy5oIgogI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dC5oIgpAQCAtODYsNiAr
ODcsNyBAQAogI2luY2x1ZGUgIlNoYXJlZEJ1ZmZlci5oIgogI2luY2x1ZGUgIlRleHRFbmNvZGlu
Zy5oIgogI2luY2x1ZGUgIlRleHRJdGVyYXRvci5oIgorI2luY2x1ZGUgIldpbmRvd0ZlYXR1cmVz
LmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi9DdXJyZW50
VGltZS5oPgogI2luY2x1ZGUgPHd0Zi9MaXN0SGFzaFNldC5oPgpAQCAtMTg2OCw2ICsxODcwLDIy
IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6ZHJhd05vZGVIaWdobGlnaHQoR3JhcGhpY3ND
b250ZXh0JiBjb250ZXh0KSBjb25zdAogICAgIH0KIH0KIAordm9pZCBJbnNwZWN0b3JDb250cm9s
bGVyOjpvcGVuSW5JbnNwZWN0ZWRXaW5kb3coY29uc3QgU3RyaW5nJiB1cmwpCit7CisgICAgUmVz
b3VyY2VSZXF1ZXN0IHJlcXVlc3Q7CisgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZVJlcXVlc3Qo
cmVxdWVzdCwgIl9ibGFuayIpOworICAgIGJvb2wgY3JlYXRlZDsKKyAgICBGcmFtZSogbWFpbkZy
YW1lID0gbV9pbnNwZWN0ZWRQYWdlLT5tYWluRnJhbWUoKTsKKyAgICBXaW5kb3dGZWF0dXJlcyB3
aW5kb3dGZWF0dXJlczsKKyAgICBGcmFtZSogbmV3RnJhbWUgPSBtYWluRnJhbWUtPmxvYWRlcigp
LT5jcmVhdGVXaW5kb3cobWFpbkZyYW1lLT5sb2FkZXIoKSwgZnJhbWVSZXF1ZXN0LCB3aW5kb3dG
ZWF0dXJlcywgY3JlYXRlZCk7CisgICAgaWYgKCFuZXdGcmFtZSkKKyAgICAgICAgcmV0dXJuOwor
CisgICAgbmV3RnJhbWUtPmxvYWRlcigpLT5zZXRPcGVuZXIobWFpbkZyYW1lKTsKKyAgICBuZXdG
cmFtZS0+cGFnZSgpLT5zZXRPcGVuZWRCeURPTSgpOworICAgIG5ld0ZyYW1lLT5sb2FkZXIoKS0+
Y2hhbmdlTG9jYXRpb24obmV3RnJhbWUtPmxvYWRlcigpLT5jb21wbGV0ZVVSTCh1cmwpLCAiIiwg
ZmFsc2UsIGZhbHNlLCB0cnVlKTsKK30KKwogdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjpjb3Vu
dChjb25zdCBTdHJpbmcmIHRpdGxlLCB1bnNpZ25lZCBsaW5lTnVtYmVyLCBjb25zdCBTdHJpbmcm
IHNvdXJjZUlEKQogewogICAgIFN0cmluZyBpZGVudGlmaWVyID0gdGl0bGUgKyBTdHJpbmc6OmZv
cm1hdCgiQCVzOiVkIiwgc291cmNlSUQudXRmOCgpLmRhdGEoKSwgbGluZU51bWJlcik7CkBAIC0x
OTA0LDYgKzE5MjIsMTcgQEAgYm9vbCBJbnNwZWN0b3JDb250cm9sbGVyOjpzdG9wVGltaW5nKGNv
bnN0IFN0cmluZyYgdGl0bGUsIGRvdWJsZSYgZWxhcHNlZCkKICAgICByZXR1cm4gdHJ1ZTsKIH0K
IAorSW5qZWN0ZWRTY3JpcHQgSW5zcGVjdG9yQ29udHJvbGxlcjo6aW5qZWN0ZWRTY3JpcHRGb3JJ
ZChsb25nIGlkKQoreworICAgIC8vIEZJWE1FOiBleHBsaWNpdGx5IHBhc3MgaW5qZWN0ZWRTY3Jp
cHRJZCBhbG9uZyB3aXRoIG5vZGUgaWQgdG8gdGhlIGZyb250ZW5kLgorICAgIGJvb2wgaW5qZWN0
ZWRTY3JpcHRJZElzTm9kZUlkID0gaWQgPD0gMDsKKyAgICAKKyAgICBpZiAoaW5qZWN0ZWRTY3Jp
cHRJZElzTm9kZUlkKQorICAgICAgICByZXR1cm4gaW5qZWN0ZWRTY3JpcHRGb3JOb2RlSWQoLWlk
KTsKKyAgICBlbHNlCisgICAgICAgIHJldHVybiBpbmplY3RlZFNjcmlwdEhvc3QoKS0+aW5qZWN0
ZWRTY3JpcHRGb3JJZChpZCk7Cit9CisKIEluamVjdGVkU2NyaXB0IEluc3BlY3RvckNvbnRyb2xs
ZXI6OmluamVjdGVkU2NyaXB0Rm9yTm9kZUlkKGxvbmcgaWQpCiB7CiAKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuaCBiL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckNvbnRyb2xsZXIuaAppbmRleCA1OWQyNmFjLi41NjM1M2I4IDEwMDY0NAotLS0g
YS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmgKKysrIGIvV2ViQ29yZS9p
bnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5oCkBAIC0yMTEsNiArMjExLDcgQEAgcHVibGlj
OgogICAgIGJvb2wgaGFzRnJvbnRlbmQoKSBjb25zdCB7IHJldHVybiBtX3JlbW90ZUZyb250ZW5k
OyB9CiAKICAgICB2b2lkIGRyYXdOb2RlSGlnaGxpZ2h0KEdyYXBoaWNzQ29udGV4dCYpIGNvbnN0
OworICAgIHZvaWQgb3BlbkluSW5zcGVjdGVkV2luZG93KGNvbnN0IFN0cmluZyYgdXJsKTsKIAog
ICAgIHZvaWQgY291bnQoY29uc3QgU3RyaW5nJiB0aXRsZSwgdW5zaWduZWQgbGluZU51bWJlciwg
Y29uc3QgU3RyaW5nJiBzb3VyY2VJRCk7CiAKQEAgLTI1MCw3ICsyNTEsOSBAQCBwdWJsaWM6CiAK
ICAgICB2b2lkIGV2YWx1YXRlRm9yVGVzdEluRnJvbnRlbmQobG9uZyB0ZXN0Q2FsbElkLCBjb25z
dCBTdHJpbmcmIHNjcmlwdCk7CiAKKyAgICBJbmplY3RlZFNjcmlwdCBpbmplY3RlZFNjcmlwdEZv
cklkKGxvbmcgaWQpOwogICAgIEluamVjdGVkU2NyaXB0IGluamVjdGVkU2NyaXB0Rm9yTm9kZUlk
KGxvbmcgaWQpOworCiAgICAgdm9pZCBhZGRTY3JpcHRUb0V2YWx1YXRlT25Mb2FkKGNvbnN0IFN0
cmluZyYgc291cmNlKTsKICAgICB2b2lkIHJlbW92ZUFsbFNjcmlwdHNUb0V2YWx1YXRlT25Mb2Fk
KCk7CiAgICAgdm9pZCBzZXRJbnNwZWN0b3JFeHRlbnNpb25BUEkoY29uc3QgU3RyaW5nJiBzb3Vy
Y2UpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0V4dGVuc2lvblNl
cnZlci5qcyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9FeHRlbnNpb25TZXJ2ZXIuanMK
aW5kZXggMmFiZTFkYi4uN2Y1ZDM2MiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL0V4dGVuc2lvblNlcnZlci5qcworKysgYi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvRXh0ZW5zaW9uU2VydmVyLmpzCkBAIC0xOTMsNyArMTkzLDcgQEAgV2ViSW5zcGVjdG9yLkV4
dGVuc2lvblNlcnZlci5wcm90b3R5cGUgPSB7CiAKICAgICBfb25FdmFsdWF0ZU9uSW5zcGVjdGVk
UGFnZTogZnVuY3Rpb24obWVzc2FnZSwgcG9ydCkKICAgICB7Ci0gICAgICAgIEluamVjdGVkU2Ny
aXB0QWNjZXNzLmdldERlZmF1bHQoKS5ldmFsdWF0ZUFuZFN0cmluZ2lmeShtZXNzYWdlLmV4cHJl
c3Npb24sIHRoaXMuX2Rpc3BhdGNoQ2FsbGJhY2suYmluZCh0aGlzLCBtZXNzYWdlLnJlcXVlc3RJ
ZCwgcG9ydCkpOworICAgICAgICBJbmplY3RlZFNjcmlwdEFjY2Vzcy5nZXREZWZhdWx0KCkuZXZh
bHVhdGVBbmRTdHJpbmdpZnkoIkpTT04uc3RyaW5naWZ5KCIgKyBtZXNzYWdlLmV4cHJlc3Npb24g
KyAiKSIsIHRoaXMuX2Rpc3BhdGNoQ2FsbGJhY2suYmluZCh0aGlzLCBtZXNzYWdlLnJlcXVlc3RJ
ZCwgcG9ydCkpOwogICAgIH0sCiAKICAgICBfb25SZXZlYWxBbmRTZWxlY3Q6IGZ1bmN0aW9uKG1l
c3NhZ2UpCmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW5qZWN0ZWRT
Y3JpcHQuanMgYi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW5qZWN0ZWRTY3JpcHQuanMK
aW5kZXggYjhiZjlmMi4uYjA5MjZhZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL0luamVjdGVkU2NyaXB0LmpzCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9JbmplY3RlZFNjcmlwdC5qcwpAQCAtODAsMTEgKzgwLDkgQEAgSW5qZWN0ZWRTY3JpcHQucmVs
ZWFzZVdyYXBwZXJPYmplY3RHcm91cCA9IGZ1bmN0aW9uKG9iamVjdEdyb3VwTmFtZSkgewogICAg
IGRlbGV0ZSBJbmplY3RlZFNjcmlwdC5vYmplY3RHcm91cHNbb2JqZWN0R3JvdXBOYW1lXTsKIH07
CiAKLUluamVjdGVkU2NyaXB0LmRpc3BhdGNoID0gZnVuY3Rpb24obWV0aG9kTmFtZSwgYXJncywg
Y2FsbElkKQorSW5qZWN0ZWRTY3JpcHQuZGlzcGF0Y2ggPSBmdW5jdGlvbihtZXRob2ROYW1lLCBh
cmdzKQogewogICAgIHZhciBhcmdzQXJyYXkgPSBldmFsKCIoIiArIGFyZ3MgKyAiKSIpOwotICAg
IGlmIChjYWxsSWQpCi0gICAgICAgIGFyZ3NBcnJheS5zcGxpY2UoMCwgMCwgY2FsbElkKTsgIC8v
IE1ldGhvZHMgdGhhdCBydW4gYXN5bmNocm9ub3VzbHkgaGF2ZSBhIGNhbGwgYmFjayBpZCBwYXJh
bWV0ZXIuCiAgICAgdmFyIHJlc3VsdCA9IEluamVjdGVkU2NyaXB0W21ldGhvZE5hbWVdLmFwcGx5
KEluamVjdGVkU2NyaXB0LCBhcmdzQXJyYXkpOwogICAgIGlmICh0eXBlb2YgcmVzdWx0ID09PSAi
dW5kZWZpbmVkIikgewogICAgICAgICBpbnNwZWN0ZWRXaW5kb3cuY29uc29sZS5lcnJvcigiV2Vi
IEluc3BlY3RvciBlcnJvcjogSW5qZWN0ZWRTY3JpcHQuJXMgcmV0dXJucyB1bmRlZmluZWQiLCBt
ZXRob2ROYW1lKTsKQEAgLTIzOCwxOSArMjM2LDYgQEAgSW5qZWN0ZWRTY3JpcHQuZ2V0Q29tcGxl
dGlvbnMgPSBmdW5jdGlvbihleHByZXNzaW9uLCBpbmNsdWRlSW5zcGVjdG9yQ29tbWFuZExpbmUK
ICAgICByZXR1cm4gcHJvcHM7CiB9CiAKLUluamVjdGVkU2NyaXB0LmV2YWx1YXRlQW5kU3RyaW5n
aWZ5ID0gZnVuY3Rpb24oZXhwcmVzc2lvbikKLXsKLSAgICB2YXIgcmVzdWx0ID0ge307Ci0gICAg
dHJ5IHsKLSAgICAgICAgdmFyIHZhbHVlID0gSW5qZWN0ZWRTY3JpcHQuX2V2YWx1YXRlT24oaW5z
cGVjdGVkV2luZG93LmV2YWwsIGluc3BlY3RlZFdpbmRvdywgZXhwcmVzc2lvbiwgZmFsc2UpOwot
ICAgICAgICByZXN1bHQudmFsdWUgPSBKU09OLnN0cmluZ2lmeSh2YWx1ZSk7Ci0gICAgfSBjYXRj
aCAoZSkgewotICAgICAgICByZXN1bHQudmFsdWUgPSBlLnRvU3RyaW5nKCk7Ci0gICAgICAgIHJl
c3VsdC5pc0V4Y2VwdGlvbiA9IHRydWU7Ci0gICAgfQotICAgIHJldHVybiByZXN1bHQ7Ci19Ci0K
IEluamVjdGVkU2NyaXB0LmV2YWx1YXRlID0gZnVuY3Rpb24oZXhwcmVzc2lvbiwgb2JqZWN0R3Jv
dXApCiB7CiAgICAgcmV0dXJuIEluamVjdGVkU2NyaXB0Ll9ldmFsdWF0ZUFuZFdyYXAoaW5zcGVj
dGVkV2luZG93LmV2YWwsIGluc3BlY3RlZFdpbmRvdywgZXhwcmVzc2lvbiwgb2JqZWN0R3JvdXAp
OwpAQCAtMzAzLDE0ICsyODgsNiBAQCBJbmplY3RlZFNjcmlwdC5nZXROb2RlSWQgPSBmdW5jdGlv
bihub2RlKQogICAgIHJldHVybiBJbmplY3RlZFNjcmlwdEhvc3QucHVzaE5vZGVQYXRoVG9Gcm9u
dGVuZChub2RlLCBmYWxzZSwgZmFsc2UpOwogfQogCi1JbmplY3RlZFNjcmlwdC5vcGVuSW5JbnNw
ZWN0ZWRXaW5kb3cgPSBmdW5jdGlvbih1cmwpCi17Ci0gICAgLy8gRG9uJ3QgY2FsbCB3aW5kb3cu
b3BlbiBvbiB3cmFwcGVyIC0gcG9wdXAgYmxvY2tlciBtdXRlcyBpdC4KLSAgICAvLyBVUklzIHNo
b3VsZCBoYXZlIG5vIGRvdWJsZSBxdW90ZXMuCi0gICAgaW5zcGVjdGVkV2luZG93LmV2YWwoIndp
bmRvdy5vcGVuKFwiIiArIHVybCArICJcIikiKTsKLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQogSW5q
ZWN0ZWRTY3JpcHQuY2FsbEZyYW1lcyA9IGZ1bmN0aW9uKCkKIHsKICAgICB2YXIgY2FsbEZyYW1l
ID0gSW5qZWN0ZWRTY3JpcHRIb3N0LmN1cnJlbnRDYWxsRnJhbWUoKTsKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9JbmplY3RlZFNjcmlwdEFjY2Vzcy5qcyBiL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9JbmplY3RlZFNjcmlwdEFjY2Vzcy5qcwppbmRleCBiNWFh
OWM3Li4xMzg1ZWNiIDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW5q
ZWN0ZWRTY3JpcHRBY2Nlc3MuanMKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0lu
amVjdGVkU2NyaXB0QWNjZXNzLmpzCkBAIC03NSwxMiArNzUsMTAgQEAgSW5qZWN0ZWRTY3JpcHRB
Y2Nlc3MuX2luc3RhbGxIYW5kbGVyID0gZnVuY3Rpb24obWV0aG9kTmFtZSwgYXN5bmMpCiAvLyAt
IE1ha2Ugc3VyZSBsYXN0IHBhcmFtZXRlciBvZiBhbGwgdGhlIEluamVjdGVkU3JpcHRBY2Nlc3Mu
KiBjYWxscyBpcyBhIGNhbGxiYWNrIGZ1bmN0aW9uLgogLy8gV2Uga2VlcCB0aGVzZSBzb3J0ZWQu
CiBJbmplY3RlZFNjcmlwdEFjY2Vzcy5faW5zdGFsbEhhbmRsZXIoImV2YWx1YXRlIik7Ci1Jbmpl
Y3RlZFNjcmlwdEFjY2Vzcy5faW5zdGFsbEhhbmRsZXIoImV2YWx1YXRlQW5kU3RyaW5naWZ5Iik7
CiBJbmplY3RlZFNjcmlwdEFjY2Vzcy5faW5zdGFsbEhhbmRsZXIoImV2YWx1YXRlSW5DYWxsRnJh
bWUiKTsKIEluamVjdGVkU2NyaXB0QWNjZXNzLl9pbnN0YWxsSGFuZGxlcigiZXZhbHVhdGVPblNl
bGYiKTsKIEluamVjdGVkU2NyaXB0QWNjZXNzLl9pbnN0YWxsSGFuZGxlcigiZ2V0Q29tcGxldGlv
bnMiKTsKIEluamVjdGVkU2NyaXB0QWNjZXNzLl9pbnN0YWxsSGFuZGxlcigiZ2V0UHJvcGVydGll
cyIpOwogSW5qZWN0ZWRTY3JpcHRBY2Nlc3MuX2luc3RhbGxIYW5kbGVyKCJnZXRQcm90b3R5cGVz
Iik7Ci1JbmplY3RlZFNjcmlwdEFjY2Vzcy5faW5zdGFsbEhhbmRsZXIoIm9wZW5Jbkluc3BlY3Rl
ZFdpbmRvdyIpOwogSW5qZWN0ZWRTY3JpcHRBY2Nlc3MuX2luc3RhbGxIYW5kbGVyKCJwdXNoTm9k
ZVRvRnJvbnRlbmQiKTsKIEluamVjdGVkU2NyaXB0QWNjZXNzLl9pbnN0YWxsSGFuZGxlcigic2V0
UHJvcGVydHlWYWx1ZSIpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L0luc3BlY3RvckJhY2tlbmRTdHViLmpzIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0lu
c3BlY3RvckJhY2tlbmRTdHViLmpzCmluZGV4IDg2NTJkZDQuLjgyMTYzMjYgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9JbnNwZWN0b3JCYWNrZW5kU3R1Yi5qcworKysg
Yi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW5zcGVjdG9yQmFja2VuZFN0dWIuanMKQEAg
LTg0LDYgKzg0LDcgQEAgV2ViSW5zcGVjdG9yLkluc3BlY3RvckJhY2tlbmRTdHViID0gZnVuY3Rp
b24oKQogICAgIHRoaXMuX3JlZ2lzdGVyRGVsZWdhdGUoInN0b3JlTGFzdEFjdGl2ZVBhbmVsIik7
CiAgICAgdGhpcy5fcmVnaXN0ZXJEZWxlZ2F0ZSgidGFrZUhlYXBTbmFwc2hvdCIpOwogICAgIHRo
aXMuX3JlZ2lzdGVyRGVsZWdhdGUoImdldFByb2ZpbGVyTG9nTGluZXMiKTsKKyAgICB0aGlzLl9y
ZWdpc3RlckRlbGVnYXRlKCJvcGVuSW5JbnNwZWN0ZWRXaW5kb3ciKTsKIAogICAgIHRoaXMuX3Jl
Z2lzdGVyRGVsZWdhdGUoImdldEFsbFN0eWxlcyIpOwogICAgIHRoaXMuX3JlZ2lzdGVyRGVsZWdh
dGUoImdldFN0eWxlcyIpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L1Jlc291cmNlc1BhbmVsLmpzIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNl
c1BhbmVsLmpzCmluZGV4IDk3ODU2NDQuLjAxZWVmYzcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5z
cGVjdG9yL2Zyb250LWVuZC9SZXNvdXJjZXNQYW5lbC5qcworKysgYi9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvUmVzb3VyY2VzUGFuZWwuanMKQEAgLTExODYsNyArMTE4Niw3IEBAIFdlYklu
c3BlY3Rvci5SZXNvdXJjZVNpZGViYXJUcmVlRWxlbWVudC5wcm90b3R5cGUgPSB7CiAgICAgCiAg
ICAgb25kYmxjbGljazogZnVuY3Rpb24oZXZlbnQpCiAgICAgewotICAgICAgICBJbmplY3RlZFNj
cmlwdEFjY2Vzcy5nZXREZWZhdWx0KCkub3BlbkluSW5zcGVjdGVkV2luZG93KHRoaXMucmVzb3Vy
Y2UudXJsLCBmdW5jdGlvbigpIHt9KTsKKyAgICAgICAgSW5zcGVjdG9yQmFja2VuZC5vcGVuSW5J
bnNwZWN0ZWRXaW5kb3codGhpcy5yZXNvdXJjZS51cmwpOwogICAgIH0sCiAKICAgICBvbmRyYWdz
dGFydDogZnVuY3Rpb24oZXZlbnQpIHsK
</data>
<flag name="review"
          id="52610"
          type_id="1"
          status="-"
          setter="yurys"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>64320</attachid>
            <date>2010-08-13 04:56:43 -0700</date>
            <delta_ts>2010-08-13 05:08:45 -0700</delta_ts>
            <desc>[PATCH] Proposed change</desc>
            <filename>comments_addressed</filename>
            <type>text/plain</type>
            <size>9800</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
MTA0NzE2Mi4uNmVjZjQyZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNSBAQAorMjAxMC0wOC0xMyAgUGF2ZWwgRmVsZG1h
biAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiByZW1vdmUgb3BlbkluSW5zcGVjdG9y
V2luZG93IGFuZCBldmFsdWF0ZUFuZFN0cmluZ2lmeSBmcm9tIEluamVjdGVkU2NyaXB0LgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDM4NTQKKworICAg
ICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3IuaWRsOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNw
ZWN0b3JDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xs
ZXI6Om9wZW5Jbkluc3BlY3RlZFdpbmRvdyk6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3Rv
ckNvbnRyb2xsZXIuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0V4dGVuc2lvblNl
cnZlci5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5FeHRlbnNpb25TZXJ2ZXIucHJvdG90eXBl
Ll9vbkV2YWx1YXRlT25JbnNwZWN0ZWRQYWdlLmNhbGxiYWNrKToKKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci5FeHRlbnNpb25TZXJ2ZXIucHJvdG90eXBlLl9vbkV2YWx1YXRlT25JbnNwZWN0ZWRQYWdl
KToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0luamVjdGVkU2NyaXB0LmpzOgorICAg
ICAgICAoaW5qZWN0ZWRTY3JpcHRDb25zdHJ1Y3Rvcik6CisgICAgICAgICogaW5zcGVjdG9yL2Zy
b250LWVuZC9JbmplY3RlZFNjcmlwdEFjY2Vzcy5qczoKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJv
bnQtZW5kL0luc3BlY3RvckJhY2tlbmRTdHViLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLklu
c3BlY3RvckJhY2tlbmRTdHViKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291
cmNlc1BhbmVsLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlJlc291cmNlU2lkZWJhclRyZWVF
bGVtZW50LnByb3RvdHlwZS5vbmRibGNsaWNrKToKKwogMjAxMC0wOC0xMyAgR2F2aW4gQmFycmFj
bG91Z2ggIDxiYXJyYWNsb3VnaEBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgU2Ft
IFdlaW5pZwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yLmlkbCBiL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvci5pZGwKaW5kZXggOWQzZDEwMi4uMmUxNDMxMCAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yLmlkbAorKysgYi9XZWJDb3JlL2lu
c3BlY3Rvci9JbnNwZWN0b3IuaWRsCkBAIC0xODAsNiArMTgwLDcgQEAgbW9kdWxlIGNvcmUgewog
CiAgICAgICAgIFtoYW5kbGVyPUNvbnRyb2xsZXJdIHZvaWQgaGlnaGxpZ2h0RE9NTm9kZShpbiBs
b25nIG5vZGVJZCk7CiAgICAgICAgIFtoYW5kbGVyPUNvbnRyb2xsZXJdIHZvaWQgaGlkZURPTU5v
ZGVIaWdobGlnaHQoKTsKKyAgICAgICAgW2hhbmRsZXI9Q29udHJvbGxlcl0gdm9pZCBvcGVuSW5J
bnNwZWN0ZWRXaW5kb3coaW4gU3RyaW5nIHVybCk7CiAKICAgICAgICAgW2hhbmRsZXI9RE9NXSB2
b2lkIGdldFN0eWxlcyhpbiBsb25nIGNhbGxJZCwgaW4gbG9uZyBub2RlSWQsIGluIGJvb2xlYW4g
YXV0aE9ubHksIG91dCBWYWx1ZSBzdHlsZXMpOwogICAgICAgICBbaGFuZGxlcj1ET01dIHZvaWQg
Z2V0QWxsU3R5bGVzKGluIGxvbmcgY2FsbElkLCBvdXQgQXJyYXkgc3R5bGVzKTsKZGlmZiAtLWdp
dCBhL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwIGIvV2ViQ29yZS9p
bnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAKaW5kZXggOTkzZmVkNC4uNDk0ODY3OSAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAKKysr
IGIvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAKQEAgLTQ2LDYgKzQ2
LDcgQEAKICNpbmNsdWRlICJGbG9hdFF1YWQuaCIKICNpbmNsdWRlICJGbG9hdFJlY3QuaCIKICNp
bmNsdWRlICJGcmFtZS5oIgorI2luY2x1ZGUgIkZyYW1lTG9hZFJlcXVlc3QuaCIKICNpbmNsdWRl
ICJGcmFtZUxvYWRlci5oIgogI2luY2x1ZGUgIkZyYW1lVHJlZS5oIgogI2luY2x1ZGUgIkZyYW1l
Vmlldy5oIgpAQCAtODYsNiArODcsNyBAQAogI2luY2x1ZGUgIlNoYXJlZEJ1ZmZlci5oIgogI2lu
Y2x1ZGUgIlRleHRFbmNvZGluZy5oIgogI2luY2x1ZGUgIlRleHRJdGVyYXRvci5oIgorI2luY2x1
ZGUgIldpbmRvd0ZlYXR1cmVzLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogI2lu
Y2x1ZGUgPHd0Zi9DdXJyZW50VGltZS5oPgogI2luY2x1ZGUgPHd0Zi9MaXN0SGFzaFNldC5oPgpA
QCAtMTg2OCw2ICsxODcwLDIyIEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6ZHJhd05vZGVI
aWdobGlnaHQoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0KSBjb25zdAogICAgIH0KIH0KIAordm9p
ZCBJbnNwZWN0b3JDb250cm9sbGVyOjpvcGVuSW5JbnNwZWN0ZWRXaW5kb3coY29uc3QgU3RyaW5n
JiB1cmwpCit7CisgICAgUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3Q7CisgICAgRnJhbWVMb2FkUmVx
dWVzdCBmcmFtZVJlcXVlc3QocmVxdWVzdCwgIl9ibGFuayIpOworICAgIGJvb2wgY3JlYXRlZDsK
KyAgICBGcmFtZSogbWFpbkZyYW1lID0gbV9pbnNwZWN0ZWRQYWdlLT5tYWluRnJhbWUoKTsKKyAg
ICBXaW5kb3dGZWF0dXJlcyB3aW5kb3dGZWF0dXJlczsKKyAgICBGcmFtZSogbmV3RnJhbWUgPSBX
ZWJDb3JlOjpjcmVhdGVXaW5kb3cobWFpbkZyYW1lLCBtYWluRnJhbWUsIGZyYW1lUmVxdWVzdCwg
d2luZG93RmVhdHVyZXMsIGNyZWF0ZWQpOworICAgIGlmICghbmV3RnJhbWUpCisgICAgICAgIHJl
dHVybjsKKworICAgIG5ld0ZyYW1lLT5sb2FkZXIoKS0+c2V0T3BlbmVyKG1haW5GcmFtZSk7Cisg
ICAgbmV3RnJhbWUtPnBhZ2UoKS0+c2V0T3BlbmVkQnlET00oKTsKKyAgICBuZXdGcmFtZS0+bG9h
ZGVyKCktPmNoYW5nZUxvY2F0aW9uKG5ld0ZyYW1lLT5sb2FkZXIoKS0+Y29tcGxldGVVUkwodXJs
KSwgIiIsIGZhbHNlLCBmYWxzZSwgdHJ1ZSk7Cit9CisKIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxl
cjo6Y291bnQoY29uc3QgU3RyaW5nJiB0aXRsZSwgdW5zaWduZWQgbGluZU51bWJlciwgY29uc3Qg
U3RyaW5nJiBzb3VyY2VJRCkKIHsKICAgICBTdHJpbmcgaWRlbnRpZmllciA9IHRpdGxlICsgU3Ry
aW5nOjpmb3JtYXQoIkAlczolZCIsIHNvdXJjZUlELnV0ZjgoKS5kYXRhKCksIGxpbmVOdW1iZXIp
OwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5oIGIv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5oCmluZGV4IDYyMmUxYzQuLjU0
ZDdjNzggMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIu
aAorKysgYi9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmgKQEAgLTIxMiw2
ICsyMTIsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBoYXNGcm9udGVuZCgpIGNvbnN0IHsgcmV0dXJu
IG1fcmVtb3RlRnJvbnRlbmQ7IH0KIAogICAgIHZvaWQgZHJhd05vZGVIaWdobGlnaHQoR3JhcGhp
Y3NDb250ZXh0JikgY29uc3Q7CisgICAgdm9pZCBvcGVuSW5JbnNwZWN0ZWRXaW5kb3coY29uc3Qg
U3RyaW5nJiB1cmwpOwogCiAgICAgdm9pZCBjb3VudChjb25zdCBTdHJpbmcmIHRpdGxlLCB1bnNp
Z25lZCBsaW5lTnVtYmVyLCBjb25zdCBTdHJpbmcmIHNvdXJjZUlEKTsKIApAQCAtMjUyLDYgKzI1
Myw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGV2YWx1YXRlRm9yVGVzdEluRnJvbnRlbmQobG9uZyB0
ZXN0Q2FsbElkLCBjb25zdCBTdHJpbmcmIHNjcmlwdCk7CiAKICAgICBJbmplY3RlZFNjcmlwdCBp
bmplY3RlZFNjcmlwdEZvck5vZGVJZChsb25nIGlkKTsKKwogICAgIHZvaWQgYWRkU2NyaXB0VG9F
dmFsdWF0ZU9uTG9hZChjb25zdCBTdHJpbmcmIHNvdXJjZSk7CiAgICAgdm9pZCByZW1vdmVBbGxT
Y3JpcHRzVG9FdmFsdWF0ZU9uTG9hZCgpOwogICAgIHZvaWQgc2V0SW5zcGVjdG9yRXh0ZW5zaW9u
QVBJKGNvbnN0IFN0cmluZyYgc291cmNlKTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9FeHRlbnNpb25TZXJ2ZXIuanMgYi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvRXh0ZW5zaW9uU2VydmVyLmpzCmluZGV4IDJhYmUxZGIuLjA0YTgxOTYgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9FeHRlbnNpb25TZXJ2ZXIuanMKKysrIGIvV2Vi
Q29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0V4dGVuc2lvblNlcnZlci5qcwpAQCAtMTkzLDcgKzE5
MywxNyBAQCBXZWJJbnNwZWN0b3IuRXh0ZW5zaW9uU2VydmVyLnByb3RvdHlwZSA9IHsKIAogICAg
IF9vbkV2YWx1YXRlT25JbnNwZWN0ZWRQYWdlOiBmdW5jdGlvbihtZXNzYWdlLCBwb3J0KQogICAg
IHsKLSAgICAgICAgSW5qZWN0ZWRTY3JpcHRBY2Nlc3MuZ2V0RGVmYXVsdCgpLmV2YWx1YXRlQW5k
U3RyaW5naWZ5KG1lc3NhZ2UuZXhwcmVzc2lvbiwgdGhpcy5fZGlzcGF0Y2hDYWxsYmFjay5iaW5k
KHRoaXMsIG1lc3NhZ2UucmVxdWVzdElkLCBwb3J0KSk7CisgICAgICAgIHZhciBlc2NhcGVkTWVz
c2FnZSA9IGVzY2FwZShtZXNzYWdlLmV4cHJlc3Npb24pOworICAgICAgICBmdW5jdGlvbiBjYWxs
YmFjayhyZXN1bHRQYXlsb2FkKQorICAgICAgICB7CisgICAgICAgICAgICB2YXIgcmVzdWx0T2Jq
ZWN0ID0gV2ViSW5zcGVjdG9yLlJlbW90ZU9iamVjdC5mcm9tUGF5bG9hZChyZXN1bHRQYXlsb2Fk
KTsKKyAgICAgICAgICAgIHZhciByZXN1bHQgPSB7fTsKKyAgICAgICAgICAgIGlmIChyZXN1bHRP
YmplY3QuaXNFcnJvcigpKQorICAgICAgICAgICAgICAgIHJlc3VsdC5pc0V4Y2VwdGlvbiA9IHRy
dWU7CisgICAgICAgICAgICByZXN1bHQudmFsdWUgPSByZXN1bHRPYmplY3QuZGVzY3JpcHRpb247
CisgICAgICAgICAgICB0aGlzLl9kaXNwYXRjaENhbGxiYWNrKG1lc3NhZ2UucmVxdWVzdElkLCBw
b3J0LCByZXN1bHQpOworICAgICAgICB9CisgICAgICAgIEluamVjdGVkU2NyaXB0QWNjZXNzLmdl
dERlZmF1bHQoKS5ldmFsdWF0ZSgiKGZ1bmN0aW9uKCkgeyB2YXIgYSA9IHdpbmRvdy5ldmFsKHVu
ZXNjYXBlKFwiIiArIGVzY2FwZWRNZXNzYWdlICsgIlwiKSk7IHJldHVybiBKU09OLnN0cmluZ2lm
eShhKTsgfSkoKTsiLCAiIiwgY2FsbGJhY2suYmluZCh0aGlzKSk7CiAgICAgfSwKIAogICAgIF9v
blJldmVhbEFuZFNlbGVjdDogZnVuY3Rpb24obWVzc2FnZSkKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9JbmplY3RlZFNjcmlwdC5qcyBiL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9JbmplY3RlZFNjcmlwdC5qcwppbmRleCBjNGYzYWZiLi5mYTBiYTYzIDEwMDY0
NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW5qZWN0ZWRTY3JpcHQuanMKKysr
IGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0luamVjdGVkU2NyaXB0LmpzCkBAIC04MCwx
MSArODAsOSBAQCBJbmplY3RlZFNjcmlwdC5yZWxlYXNlV3JhcHBlck9iamVjdEdyb3VwID0gZnVu
Y3Rpb24ob2JqZWN0R3JvdXBOYW1lKSB7CiAgICAgZGVsZXRlIEluamVjdGVkU2NyaXB0Lm9iamVj
dEdyb3Vwc1tvYmplY3RHcm91cE5hbWVdOwogfTsKIAotSW5qZWN0ZWRTY3JpcHQuZGlzcGF0Y2gg
PSBmdW5jdGlvbihtZXRob2ROYW1lLCBhcmdzLCBjYWxsSWQpCitJbmplY3RlZFNjcmlwdC5kaXNw
YXRjaCA9IGZ1bmN0aW9uKG1ldGhvZE5hbWUsIGFyZ3MpCiB7CiAgICAgdmFyIGFyZ3NBcnJheSA9
IGV2YWwoIigiICsgYXJncyArICIpIik7Ci0gICAgaWYgKGNhbGxJZCkKLSAgICAgICAgYXJnc0Fy
cmF5LnNwbGljZSgwLCAwLCBjYWxsSWQpOyAgLy8gTWV0aG9kcyB0aGF0IHJ1biBhc3luY2hyb25v
dXNseSBoYXZlIGEgY2FsbCBiYWNrIGlkIHBhcmFtZXRlci4KICAgICB2YXIgcmVzdWx0ID0gSW5q
ZWN0ZWRTY3JpcHRbbWV0aG9kTmFtZV0uYXBwbHkoSW5qZWN0ZWRTY3JpcHQsIGFyZ3NBcnJheSk7
CiAgICAgaWYgKHR5cGVvZiByZXN1bHQgPT09ICJ1bmRlZmluZWQiKSB7CiAgICAgICAgIGluc3Bl
Y3RlZFdpbmRvdy5jb25zb2xlLmVycm9yKCJXZWIgSW5zcGVjdG9yIGVycm9yOiBJbmplY3RlZFNj
cmlwdC4lcyByZXR1cm5zIHVuZGVmaW5lZCIsIG1ldGhvZE5hbWUpOwpAQCAtMjM2LDE5ICsyMzQs
NiBAQCBJbmplY3RlZFNjcmlwdC5nZXRDb21wbGV0aW9ucyA9IGZ1bmN0aW9uKGV4cHJlc3Npb24s
IGluY2x1ZGVJbnNwZWN0b3JDb21tYW5kTGluZQogICAgIHJldHVybiBwcm9wczsKIH0KIAotSW5q
ZWN0ZWRTY3JpcHQuZXZhbHVhdGVBbmRTdHJpbmdpZnkgPSBmdW5jdGlvbihleHByZXNzaW9uKQot
ewotICAgIHZhciByZXN1bHQgPSB7fTsKLSAgICB0cnkgewotICAgICAgICB2YXIgdmFsdWUgPSBJ
bmplY3RlZFNjcmlwdC5fZXZhbHVhdGVPbihpbnNwZWN0ZWRXaW5kb3cuZXZhbCwgaW5zcGVjdGVk
V2luZG93LCBleHByZXNzaW9uLCBmYWxzZSk7Ci0gICAgICAgIHJlc3VsdC52YWx1ZSA9IEpTT04u
c3RyaW5naWZ5KHZhbHVlKTsKLSAgICB9IGNhdGNoIChlKSB7Ci0gICAgICAgIHJlc3VsdC52YWx1
ZSA9IGUudG9TdHJpbmcoKTsKLSAgICAgICAgcmVzdWx0LmlzRXhjZXB0aW9uID0gdHJ1ZTsKLSAg
ICB9Ci0gICAgcmV0dXJuIHJlc3VsdDsKLX0KLQogSW5qZWN0ZWRTY3JpcHQuZXZhbHVhdGUgPSBm
dW5jdGlvbihleHByZXNzaW9uLCBvYmplY3RHcm91cCkKIHsKICAgICByZXR1cm4gSW5qZWN0ZWRT
Y3JpcHQuX2V2YWx1YXRlQW5kV3JhcChpbnNwZWN0ZWRXaW5kb3cuZXZhbCwgaW5zcGVjdGVkV2lu
ZG93LCBleHByZXNzaW9uLCBvYmplY3RHcm91cCk7CkBAIC0yOTIsMTQgKzI3Nyw2IEBAIEluamVj
dGVkU2NyaXB0LmdldE5vZGVJZCA9IGZ1bmN0aW9uKG5vZGUpCiAgICAgcmV0dXJuIEluamVjdGVk
U2NyaXB0SG9zdC5wdXNoTm9kZVBhdGhUb0Zyb250ZW5kKG5vZGUsIGZhbHNlLCBmYWxzZSk7CiB9
CiAKLUluamVjdGVkU2NyaXB0Lm9wZW5Jbkluc3BlY3RlZFdpbmRvdyA9IGZ1bmN0aW9uKHVybCkK
LXsKLSAgICAvLyBEb24ndCBjYWxsIHdpbmRvdy5vcGVuIG9uIHdyYXBwZXIgLSBwb3B1cCBibG9j
a2VyIG11dGVzIGl0LgotICAgIC8vIFVSSXMgc2hvdWxkIGhhdmUgbm8gZG91YmxlIHF1b3Rlcy4K
LSAgICBpbnNwZWN0ZWRXaW5kb3cuZXZhbCgid2luZG93Lm9wZW4oXCIiICsgdXJsICsgIlwiKSIp
OwotICAgIHJldHVybiB0cnVlOwotfQotCiBJbmplY3RlZFNjcmlwdC5jYWxsRnJhbWVzID0gZnVu
Y3Rpb24oKQogewogICAgIHZhciBjYWxsRnJhbWUgPSBJbmplY3RlZFNjcmlwdEhvc3QuY3VycmVu
dENhbGxGcmFtZSgpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0lu
amVjdGVkU2NyaXB0QWNjZXNzLmpzIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0luamVj
dGVkU2NyaXB0QWNjZXNzLmpzCmluZGV4IGI1YWE5YzcuLjEzODVlY2IgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9JbmplY3RlZFNjcmlwdEFjY2Vzcy5qcworKysgYi9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW5qZWN0ZWRTY3JpcHRBY2Nlc3MuanMKQEAgLTc1
LDEyICs3NSwxMCBAQCBJbmplY3RlZFNjcmlwdEFjY2Vzcy5faW5zdGFsbEhhbmRsZXIgPSBmdW5j
dGlvbihtZXRob2ROYW1lLCBhc3luYykKIC8vIC0gTWFrZSBzdXJlIGxhc3QgcGFyYW1ldGVyIG9m
IGFsbCB0aGUgSW5qZWN0ZWRTcmlwdEFjY2Vzcy4qIGNhbGxzIGlzIGEgY2FsbGJhY2sgZnVuY3Rp
b24uCiAvLyBXZSBrZWVwIHRoZXNlIHNvcnRlZC4KIEluamVjdGVkU2NyaXB0QWNjZXNzLl9pbnN0
YWxsSGFuZGxlcigiZXZhbHVhdGUiKTsKLUluamVjdGVkU2NyaXB0QWNjZXNzLl9pbnN0YWxsSGFu
ZGxlcigiZXZhbHVhdGVBbmRTdHJpbmdpZnkiKTsKIEluamVjdGVkU2NyaXB0QWNjZXNzLl9pbnN0
YWxsSGFuZGxlcigiZXZhbHVhdGVJbkNhbGxGcmFtZSIpOwogSW5qZWN0ZWRTY3JpcHRBY2Nlc3Mu
X2luc3RhbGxIYW5kbGVyKCJldmFsdWF0ZU9uU2VsZiIpOwogSW5qZWN0ZWRTY3JpcHRBY2Nlc3Mu
X2luc3RhbGxIYW5kbGVyKCJnZXRDb21wbGV0aW9ucyIpOwogSW5qZWN0ZWRTY3JpcHRBY2Nlc3Mu
X2luc3RhbGxIYW5kbGVyKCJnZXRQcm9wZXJ0aWVzIik7CiBJbmplY3RlZFNjcmlwdEFjY2Vzcy5f
aW5zdGFsbEhhbmRsZXIoImdldFByb3RvdHlwZXMiKTsKLUluamVjdGVkU2NyaXB0QWNjZXNzLl9p
bnN0YWxsSGFuZGxlcigib3BlbkluSW5zcGVjdGVkV2luZG93Iik7CiBJbmplY3RlZFNjcmlwdEFj
Y2Vzcy5faW5zdGFsbEhhbmRsZXIoInB1c2hOb2RlVG9Gcm9udGVuZCIpOwogSW5qZWN0ZWRTY3Jp
cHRBY2Nlc3MuX2luc3RhbGxIYW5kbGVyKCJzZXRQcm9wZXJ0eVZhbHVlIik7CmRpZmYgLS1naXQg
YS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW5zcGVjdG9yQmFja2VuZFN0dWIuanMgYi9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW5zcGVjdG9yQmFja2VuZFN0dWIuanMKaW5kZXgg
ODY1MmRkNC4uODIxNjMyNiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L0luc3BlY3RvckJhY2tlbmRTdHViLmpzCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9JbnNwZWN0b3JCYWNrZW5kU3R1Yi5qcwpAQCAtODQsNiArODQsNyBAQCBXZWJJbnNwZWN0b3Iu
SW5zcGVjdG9yQmFja2VuZFN0dWIgPSBmdW5jdGlvbigpCiAgICAgdGhpcy5fcmVnaXN0ZXJEZWxl
Z2F0ZSgic3RvcmVMYXN0QWN0aXZlUGFuZWwiKTsKICAgICB0aGlzLl9yZWdpc3RlckRlbGVnYXRl
KCJ0YWtlSGVhcFNuYXBzaG90Iik7CiAgICAgdGhpcy5fcmVnaXN0ZXJEZWxlZ2F0ZSgiZ2V0UHJv
ZmlsZXJMb2dMaW5lcyIpOworICAgIHRoaXMuX3JlZ2lzdGVyRGVsZWdhdGUoIm9wZW5Jbkluc3Bl
Y3RlZFdpbmRvdyIpOwogCiAgICAgdGhpcy5fcmVnaXN0ZXJEZWxlZ2F0ZSgiZ2V0QWxsU3R5bGVz
Iik7CiAgICAgdGhpcy5fcmVnaXN0ZXJEZWxlZ2F0ZSgiZ2V0U3R5bGVzIik7CmRpZmYgLS1naXQg
YS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUmVzb3VyY2VzUGFuZWwuanMgYi9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvUmVzb3VyY2VzUGFuZWwuanMKaW5kZXggOTc4NTY0NC4uMDFl
ZWZjNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlc1Bh
bmVsLmpzCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9SZXNvdXJjZXNQYW5lbC5q
cwpAQCAtMTE4Niw3ICsxMTg2LDcgQEAgV2ViSW5zcGVjdG9yLlJlc291cmNlU2lkZWJhclRyZWVF
bGVtZW50LnByb3RvdHlwZSA9IHsKICAgICAKICAgICBvbmRibGNsaWNrOiBmdW5jdGlvbihldmVu
dCkKICAgICB7Ci0gICAgICAgIEluamVjdGVkU2NyaXB0QWNjZXNzLmdldERlZmF1bHQoKS5vcGVu
SW5JbnNwZWN0ZWRXaW5kb3codGhpcy5yZXNvdXJjZS51cmwsIGZ1bmN0aW9uKCkge30pOworICAg
ICAgICBJbnNwZWN0b3JCYWNrZW5kLm9wZW5Jbkluc3BlY3RlZFdpbmRvdyh0aGlzLnJlc291cmNl
LnVybCk7CiAgICAgfSwKIAogICAgIG9uZHJhZ3N0YXJ0OiBmdW5jdGlvbihldmVudCkgewo=
</data>

          </attachment>
      

    </bug>

</bugzilla>