<?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>102813</bug_id>
          
          <creation_ts>2012-11-20 07:05:17 -0800</creation_ts>
          <short_desc>Web Inspector: DataGrid: avoid repetitive access to node data field.</short_desc>
          <delta_ts>2014-12-12 13:42:57 -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>INVALID</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>eustas.bug</reporter>
          <assigned_to>eustas.bug</assigned_to>
          <cc>apavlov</cc>
    
    <cc>caseq</cc>
    
    <cc>eustas.bug</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>vsevik</cc>
    
    <cc>web-inspector-bugs</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>771836</commentid>
    <comment_count>0</comment_count>
    <who name="">eustas.bug</who>
    <bug_when>2012-11-20 07:05:17 -0800</bug_when>
    <thetext>DataGridNode.data is a getter.
Each access to &quot;data&quot; causes construction of object that
contains presentation values for all fields.

There are few loops in which this field is accessed repetitively.
With this patch in most loops &quot;data&quot; result reused.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>771839</commentid>
    <comment_count>1</comment_count>
      <attachid>175213</attachid>
    <who name="">eustas.bug</who>
    <bug_when>2012-11-20 07:07:52 -0800</bug_when>
    <thetext>Created attachment 175213
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>771841</commentid>
    <comment_count>2</comment_count>
      <attachid>175214</attachid>
    <who name="">eustas.bug</who>
    <bug_when>2012-11-20 07:11:18 -0800</bug_when>
    <thetext>Created attachment 175214
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>774075</commentid>
    <comment_count>3</comment_count>
      <attachid>175214</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-11-22 12:28:04 -0800</bug_when>
    <thetext>Comment on attachment 175214
Patch

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

&gt; Source/WebCore/ChangeLog:9
&gt; +        Each access to &quot;data&quot; causes construction of object that

Could you explain what object is constructed? I can only see

    get data()
    {
        return this._data;
    },

in WebInspector.DataGridNode.prototype. This does not cost anything.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>774163</commentid>
    <comment_count>4</comment_count>
      <attachid>175214</attachid>
    <who name="">eustas.bug</who>
    <bug_when>2012-11-22 18:44:11 -0800</bug_when>
    <thetext>Comment on attachment 175214
Patch

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

&gt;&gt; Source/WebCore/ChangeLog:9
&gt;&gt; +        Each access to &quot;data&quot; causes construction of object that
&gt; 
&gt; Could you explain what object is constructed? I can only see
&gt; 
&gt;     get data()
&gt;     {
&gt;         return this._data;
&gt;     },
&gt; 
&gt; in WebInspector.DataGridNode.prototype. This does not cost anything.

Most classes that extend DataGridNode override this getter with one that construct object.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054985</commentid>
    <comment_count>5</comment_count>
    <who name="Brian Burg">burg</who>
    <bug_when>2014-12-12 13:40:47 -0800</bug_when>
    <thetext>Closing as invalid, as this bug pertains to the old inspector UI and/or its tests.
Please file a new bug (https://www.webkit.org/new-inspector-bug) if the bug/feature/issue is still relevant to WebKit trunk.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>175213</attachid>
            <date>2012-11-20 07:07:52 -0800</date>
            <delta_ts>2012-11-20 07:11:13 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-102813-20121120190540.patch</filename>
            <type>text/plain</type>
            <size>9607</size>
            <attacher>eustas.bug</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM1MjcxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTkzZjBmNDYwNzVmYjll
ODhhZDMyZDVkMmMxOTM4ZDRjYjlmNmZkNC4uMDFlNmIyZjVkYjFkYTc2MTVkMjUyZjM0NTI0YTg0
YmNmNTUwOGEyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEyLTExLTIwICBFdWdl
bmUgS2x5dWNobmlrb3YgIDxldXN0YXMuYnVnQGdtYWlsLmNvbT4KKworICAgICAgICBXZWIgSW5z
cGVjdG9yOiBEYXRhR3JpZDogYXZvaWQgcmVwZXRpdGl2ZSBhY2Nlc3MgdG8gbm9kZSBkYXRhIGZp
ZWxkLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAy
ODEzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRGF0
YUdyaWROb2RlLmRhdGEgaXMgYSBnZXR0ZXIuCisgICAgICAgIEVhY2ggYWNjZXNzIHRvICJkYXRh
IiBjYXVzZXMgY29uc3RydWN0aW9uIG9mIG9iamVjdCB0aGF0CisgICAgICAgIGNvbnRhaW5zIHBy
ZXNlbnRhdGlvbiB2YWx1ZXMgZm9yIGFsbCBmaWVsZHMuCisKKyAgICAgICAgVGhlcmUgYXJlIGZl
dyBsb29wcyBpbiB3aGljaCB0aGlzIGZpZWxkIGlzIGFjY2Vzc2VkIHJlcGV0aXRpdmVseS4KKyAg
ICAgICAgV2l0aCB0aGlzIHBhdGNoIGluIG1vc3QgbG9vcHMgImRhdGEiIHJlc3VsdCByZXVzZWQu
CisKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0RhdGFHcmlkLmpzOgorICAgICAgICBB
ZGRlZCAiZGF0YSIgcGFyYW1ldGVyIHRvICJjcmVhdGVDZWxsIiBtZXRob2QuCisgICAgICAgICog
aW5zcGVjdG9yL2Zyb250LWVuZC9DU1NTZWxlY3RvclByb2ZpbGVWaWV3LmpzOiBBZG9wdGVkIGNo
YW5nZXMuCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RHcmlkTm9k
ZXMuanM6IERpdHRvLgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvSW5kZXhlZERCVmll
d3MuanM6IERpdHRvLgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvUHJvZmlsZURhdGFH
cmlkVHJlZS5qczogRGl0dG8uCisKIDIwMTItMTEtMTkgIEFudHRpIEtvaXZpc3RvICA8YW50dGlA
YXBwbGUuY29tPgogCiAgICAgICAgIENvbGxlY3QgdXNlciBzdHlsZSBzaGVldHMgaW4gRG9jdW1l
bnRTdHlsZVNoZWV0Q29sbGVjdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9DU1NTZWxlY3RvclByb2ZpbGVWaWV3LmpzIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9DU1NTZWxlY3RvclByb2ZpbGVWaWV3LmpzCmluZGV4IGU5ZDcx
ZWM4NTQ4ODQ0YTAwNjJmNjZhZmY0OTY3ODllYjhiMDk0NTUuLjhmNjczNDY0NTViZGQzZWVkYWQw
OTQyMmRiNThmMGRiZWVkZjcwY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvQ1NTU2VsZWN0b3JQcm9maWxlVmlldy5qcworKysgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NTU1NlbGVjdG9yUHJvZmlsZVZpZXcuanMKQEAgLTU1LDkg
KzU1LDkgQEAgV2ViSW5zcGVjdG9yLkNTU1NlbGVjdG9yRGF0YUdyaWROb2RlLnByb3RvdHlwZSA9
IHsKICAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGE7CiAgICAgfSwKIAotICAgIGNyZWF0ZUNlbGw6
IGZ1bmN0aW9uKGNvbHVtbklkZW50aWZpZXIpCisgICAgY3JlYXRlQ2VsbDogZnVuY3Rpb24oZGF0
YSwgY29sdW1uSWRlbnRpZmllcikKICAgICB7Ci0gICAgICAgIHZhciBjZWxsID0gV2ViSW5zcGVj
dG9yLkRhdGFHcmlkTm9kZS5wcm90b3R5cGUuY3JlYXRlQ2VsbC5jYWxsKHRoaXMsIGNvbHVtbklk
ZW50aWZpZXIpOworICAgICAgICB2YXIgY2VsbCA9IFdlYkluc3BlY3Rvci5EYXRhR3JpZE5vZGUu
cHJvdG90eXBlLmNyZWF0ZUNlbGwuY2FsbCh0aGlzLCBkYXRhLCBjb2x1bW5JZGVudGlmaWVyKTsK
ICAgICAgICAgaWYgKGNvbHVtbklkZW50aWZpZXIgPT09ICJzZWxlY3RvciIgJiYgY2VsbC5maXJz
dENoaWxkKSB7CiAgICAgICAgICAgICBjZWxsLmZpcnN0Q2hpbGQudGl0bGUgPSB0aGlzLnJhd0Rh
dGEuc2VsZWN0b3I7CiAgICAgICAgICAgICByZXR1cm4gY2VsbDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvRGF0YUdyaWQuanMgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0RhdGFHcmlkLmpzCmluZGV4IDUwZDA0NjQ4Yzk5OTYwZjBh
YzY4NmFlM2VlMWMyYzEwYmI1MTUxZjQuLjljNGM5MDQzMWUyNTNiOGRhZTNmZDMxMjA0YjA1ODky
ZThmMTE2OWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
RGF0YUdyaWQuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9EYXRh
R3JpZC5qcwpAQCAtNDk5LDkgKzQ5OSw5IEBAIFdlYkluc3BlY3Rvci5EYXRhR3JpZC5wcm90b3R5
cGUgPSB7CiAgICAgICAgIG1heERlc2NlbnRMZXZlbCA9IG1heERlc2NlbnRMZXZlbCB8fCAwOwog
ICAgICAgICB2YXIgY2hpbGRyZW4gPSB0aGlzLl9lbnVtZXJhdGVDaGlsZHJlbih0aGlzLl9yb290
Tm9kZSwgW10sIG1heERlc2NlbnRMZXZlbCArIDEpOwogICAgICAgICBmb3IgKHZhciBpID0gMDsg
aSA8IGNoaWxkcmVuLmxlbmd0aDsgKytpKSB7Ci0gICAgICAgICAgICB2YXIgbm9kZSA9IGNoaWxk
cmVuW2ldOworICAgICAgICAgICAgdmFyIGRhdGEgPSBjaGlsZHJlbltpXS5kYXRhOwogICAgICAg
ICAgICAgZm9yICh2YXIgaiA9IDA7IGogPCBjb2x1bW5JZGVudGlmaWVycy5sZW5ndGg7ICsraikg
ewotICAgICAgICAgICAgICAgIHZhciB0ZXh0ID0gbm9kZS5kYXRhW2NvbHVtbklkZW50aWZpZXJz
W2pdXSB8fCAiIjsKKyAgICAgICAgICAgICAgICB2YXIgdGV4dCA9IGRhdGFbY29sdW1uSWRlbnRp
ZmllcnNbal1dIHx8ICIiOwogICAgICAgICAgICAgICAgIGlmICh0ZXh0Lmxlbmd0aCA+IHdpZHRo
c1tqXSkKICAgICAgICAgICAgICAgICAgICAgd2lkdGhzW2pdID0gdGV4dC5sZW5ndGg7CiAgICAg
ICAgICAgICB9CkBAIC0xMDc0LDggKzEwNzQsOSBAQCBXZWJJbnNwZWN0b3IuRGF0YUdyaWROb2Rl
LnByb3RvdHlwZSA9IHsKIAogICAgIGNyZWF0ZUNlbGxzOiBmdW5jdGlvbigpCiAgICAgeworICAg
ICAgICB2YXIgZGF0YSA9IHRoaXMuZGF0YTsKICAgICAgICAgZm9yICh2YXIgY29sdW1uSWRlbnRp
ZmllciBpbiB0aGlzLmRhdGFHcmlkLmNvbHVtbnMpIHsKLSAgICAgICAgICAgIHZhciBjZWxsID0g
dGhpcy5jcmVhdGVDZWxsKGNvbHVtbklkZW50aWZpZXIpOworICAgICAgICAgICAgdmFyIGNlbGwg
PSB0aGlzLmNyZWF0ZUNlbGwoZGF0YSwgY29sdW1uSWRlbnRpZmllcik7CiAgICAgICAgICAgICB0
aGlzLl9lbGVtZW50LmFwcGVuZENoaWxkKGNlbGwpOwogICAgICAgICB9CiAgICAgfSwKQEAgLTEy
MjMsNyArMTIyNCwxMiBAQCBXZWJJbnNwZWN0b3IuRGF0YUdyaWROb2RlLnByb3RvdHlwZSA9IHsK
ICAgICAgICAgdGhpcy5jcmVhdGVDZWxscygpOwogICAgIH0sCiAKLSAgICBjcmVhdGVDZWxsOiBm
dW5jdGlvbihjb2x1bW5JZGVudGlmaWVyKQorICAgIC8qKgorICAgICAqIEBwYXJhbSB7T2JqZWN0
fSBkYXRhCisgICAgICogQHBhcmFtIHtzdHJpbmd9IGNvbHVtbklkZW50aWZpZXIKKyAgICAgKiBA
cmV0dXJuIHshRWxlbWVudH0KKyAgICAgKi8KKyAgICBjcmVhdGVDZWxsOiBmdW5jdGlvbihkYXRh
LCBjb2x1bW5JZGVudGlmaWVyKQogICAgIHsKICAgICAgICAgdmFyIGNlbGwgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCJ0ZCIpOwogICAgICAgICBjZWxsLmNsYXNzTmFtZSA9IGNvbHVtbklkZW50
aWZpZXIgKyAiLWNvbHVtbiI7CkBAIC0xMjMyLDEyICsxMjM4LDEyIEBAIFdlYkluc3BlY3Rvci5E
YXRhR3JpZE5vZGUucHJvdG90eXBlID0gewogICAgICAgICBpZiAoYWxpZ25tZW50KQogICAgICAg
ICAgICAgY2VsbC5hZGRTdHlsZUNsYXNzKGFsaWdubWVudCk7CiAKLSAgICAgICAgdmFyIGRhdGEg
PSB0aGlzLmRhdGFbY29sdW1uSWRlbnRpZmllcl07CisgICAgICAgIHZhciBjZWxsRGF0YSA9IGRh
dGFbY29sdW1uSWRlbnRpZmllcl07CiAgICAgICAgIHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCJkaXYiKTsKLSAgICAgICAgaWYgKGRhdGEgaW5zdGFuY2VvZiBOb2RlKQotICAgICAg
ICAgICAgZGl2LmFwcGVuZENoaWxkKGRhdGEpOworICAgICAgICBpZiAoY2VsbERhdGEgaW5zdGFu
Y2VvZiBOb2RlKQorICAgICAgICAgICAgZGl2LmFwcGVuZENoaWxkKGNlbGxEYXRhKTsKICAgICAg
ICAgZWxzZQotICAgICAgICAgICAgZGl2LnRleHRDb250ZW50ID0gZGF0YTsKKyAgICAgICAgICAg
IGRpdi50ZXh0Q29udGVudCA9IGNlbGxEYXRhOwogICAgICAgICBjZWxsLmFwcGVuZENoaWxkKGRp
dik7CiAKICAgICAgICAgaWYgKGNvbHVtbklkZW50aWZpZXIgPT09IHRoaXMuZGF0YUdyaWQuZGlz
Y2xvc3VyZUNvbHVtbklkZW50aWZpZXIpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvSGVhcFNuYXBzaG90R3JpZE5vZGVzLmpzIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RHcmlkTm9kZXMuanMKaW5kZXggNDBl
ODE1NDAwNGQyMmQzZDdmMzRmN2YyNDg1MDdkMzE1ZTMxYzY3ZS4uNDMwYmE3YzBiZTZmNGIzYWFh
OTM5NDA1Y2UwMTcwYjlhZWQ1NGEwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RHcmlkTm9kZXMuanMKKysrIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RHcmlkTm9kZXMuanMKQEAgLTY4LDkg
KzY4LDkgQEAgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdEdyaWROb2RlLnByb3RvdHlwZSA9IHsK
ICAgICAgICAgcmV0dXJuIHRoaXMuX3Byb3ZpZGVyT2JqZWN0OwogICAgIH0sCiAKLSAgICBjcmVh
dGVDZWxsOiBmdW5jdGlvbihjb2x1bW5JZGVudGlmaWVyKQorICAgIGNyZWF0ZUNlbGw6IGZ1bmN0
aW9uKGRhdGEsIGNvbHVtbklkZW50aWZpZXIpCiAgICAgewotICAgICAgICB2YXIgY2VsbCA9IFdl
Ykluc3BlY3Rvci5EYXRhR3JpZE5vZGUucHJvdG90eXBlLmNyZWF0ZUNlbGwuY2FsbCh0aGlzLCBj
b2x1bW5JZGVudGlmaWVyKTsKKyAgICAgICAgdmFyIGNlbGwgPSBXZWJJbnNwZWN0b3IuRGF0YUdy
aWROb2RlLnByb3RvdHlwZS5jcmVhdGVDZWxsLmNhbGwodGhpcywgZGF0YSwgY29sdW1uSWRlbnRp
Zmllcik7CiAgICAgICAgIGlmICh0aGlzLl9zZWFyY2hNYXRjaGVkKQogICAgICAgICAgICAgY2Vs
bC5hZGRTdHlsZUNsYXNzKCJoaWdobGlnaHQiKTsKICAgICAgICAgcmV0dXJuIGNlbGw7CkBAIC0x
MjcsNyArMTI3LDcgQEAgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdEdyaWROb2RlLnByb3RvdHlw
ZSA9IHsKICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgfSwKIAotICAgIF9jcmVhdGVWYWx1ZUNl
bGw6IGZ1bmN0aW9uKGNvbHVtbklkZW50aWZpZXIpCisgICAgX2NyZWF0ZVZhbHVlQ2VsbDogZnVu
Y3Rpb24oZGF0YSwgY29sdW1uSWRlbnRpZmllcikKICAgICB7CiAgICAgICAgIHZhciBjZWxsID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGQiKTsKICAgICAgICAgY2VsbC5jbGFzc05hbWUgPSBj
b2x1bW5JZGVudGlmaWVyICsgIi1jb2x1bW4iOwpAQCAtMTM3LDEwICsxMzcsMTAgQEAgV2ViSW5z
cGVjdG9yLkhlYXBTbmFwc2hvdEdyaWROb2RlLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIHZh
bHVlU3Bhbi50ZXh0Q29udGVudCA9IHRoaXMuZGF0YVtjb2x1bW5JZGVudGlmaWVyXTsKICAgICAg
ICAgICAgIGRpdi5hcHBlbmRDaGlsZCh2YWx1ZVNwYW4pOwogICAgICAgICAgICAgdmFyIHBlcmNl
bnRDb2x1bW4gPSBjb2x1bW5JZGVudGlmaWVyICsgIi1wZXJjZW50IjsKLSAgICAgICAgICAgIGlm
IChwZXJjZW50Q29sdW1uIGluIHRoaXMuZGF0YSkgeworICAgICAgICAgICAgaWYgKHBlcmNlbnRD
b2x1bW4gaW4gZGF0YSkgewogICAgICAgICAgICAgICAgIHZhciBwZXJjZW50U3BhbiA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTsKICAgICAgICAgICAgICAgICBwZXJjZW50U3Bhbi5j
bGFzc05hbWUgPSAicGVyY2VudC1jb2x1bW4iOwotICAgICAgICAgICAgICAgIHBlcmNlbnRTcGFu
LnRleHRDb250ZW50ID0gdGhpcy5kYXRhW3BlcmNlbnRDb2x1bW5dOworICAgICAgICAgICAgICAg
IHBlcmNlbnRTcGFuLnRleHRDb250ZW50ID0gZGF0YVtwZXJjZW50Q29sdW1uXTsKICAgICAgICAg
ICAgICAgICBkaXYuYXBwZW5kQ2hpbGQocGVyY2VudFNwYW4pOwogICAgICAgICAgICAgfQogICAg
ICAgICAgICAgY2VsbC5hcHBlbmRDaGlsZChkaXYpOwpAQCAtMzY4LDkgKzM2OCw5IEBAIFdlYklu
c3BlY3Rvci5IZWFwU25hcHNob3RHZW5lcmljT2JqZWN0Tm9kZSA9IGZ1bmN0aW9uKHRyZWUsIG5v
ZGUpCiB9OwogCiBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90R2VuZXJpY09iamVjdE5vZGUucHJv
dG90eXBlID0gewotICAgIGNyZWF0ZUNlbGw6IGZ1bmN0aW9uKGNvbHVtbklkZW50aWZpZXIpCisg
ICAgY3JlYXRlQ2VsbDogZnVuY3Rpb24oZGF0YSwgY29sdW1uSWRlbnRpZmllcikKICAgICB7Ci0g
ICAgICAgIHZhciBjZWxsID0gY29sdW1uSWRlbnRpZmllciAhPT0gIm9iamVjdCIgPyB0aGlzLl9j
cmVhdGVWYWx1ZUNlbGwoY29sdW1uSWRlbnRpZmllcikgOiB0aGlzLl9jcmVhdGVPYmplY3RDZWxs
KCk7CisgICAgICAgIHZhciBjZWxsID0gY29sdW1uSWRlbnRpZmllciAhPT0gIm9iamVjdCIgPyB0
aGlzLl9jcmVhdGVWYWx1ZUNlbGwoZGF0YSwgY29sdW1uSWRlbnRpZmllcikgOiB0aGlzLl9jcmVh
dGVPYmplY3RDZWxsKCk7CiAgICAgICAgIGlmICh0aGlzLl9zZWFyY2hNYXRjaGVkKQogICAgICAg
ICAgICAgY2VsbC5hZGRTdHlsZUNsYXNzKCJoaWdobGlnaHQiKTsKICAgICAgICAgcmV0dXJuIGNl
bGw7CkBAIC03ODcsOSArNzg3LDkgQEAgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdENvbnN0cnVj
dG9yTm9kZS5wcm90b3R5cGUgPSB7CiAgICAgICAgIHRoaXMuZXhwYW5kV2l0aG91dFBvcHVsYXRl
KGRpZEV4cGFuZC5iaW5kKHRoaXMpKTsKICAgICB9LAogCi0gICAgY3JlYXRlQ2VsbDogZnVuY3Rp
b24oY29sdW1uSWRlbnRpZmllcikKKyAgICBjcmVhdGVDZWxsOiBmdW5jdGlvbihkYXRhLCBjb2x1
bW5JZGVudGlmaWVyKQogICAgIHsKLSAgICAgICAgdmFyIGNlbGwgPSBjb2x1bW5JZGVudGlmaWVy
ICE9PSAib2JqZWN0IiA/IHRoaXMuX2NyZWF0ZVZhbHVlQ2VsbChjb2x1bW5JZGVudGlmaWVyKSA6
IFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RHcmlkTm9kZS5wcm90b3R5cGUuY3JlYXRlQ2VsbC5j
YWxsKHRoaXMsIGNvbHVtbklkZW50aWZpZXIpOworICAgICAgICB2YXIgY2VsbCA9IGNvbHVtbklk
ZW50aWZpZXIgIT09ICJvYmplY3QiID8gdGhpcy5fY3JlYXRlVmFsdWVDZWxsKGRhdGEsIGNvbHVt
bklkZW50aWZpZXIpIDogV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdEdyaWROb2RlLnByb3RvdHlw
ZS5jcmVhdGVDZWxsLmNhbGwodGhpcywgY29sdW1uSWRlbnRpZmllcik7CiAgICAgICAgIGlmICh0
aGlzLl9zZWFyY2hNYXRjaGVkKQogICAgICAgICAgICAgY2VsbC5hZGRTdHlsZUNsYXNzKCJoaWdo
bGlnaHQiKTsKICAgICAgICAgcmV0dXJuIGNlbGw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0luZGV4ZWREQlZpZXdzLmpzIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9JbmRleGVkREJWaWV3cy5qcwppbmRleCAwN2FjOTE5NTYzMGM3
NmY0NjBlNDI2MDlmMjBhMjQwZDdhMGZiMjI3Li40ZGQ0MzRkMTU4ZmUwMzg3ODBhMWM4MTA0MDcz
Y2YzMzcxYzk5MWQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL0luZGV4ZWREQlZpZXdzLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvSW5kZXhlZERCVmlld3MuanMKQEAgLTM4OCw5ICszODgsOSBAQCBXZWJJbnNwZWN0b3Iu
SURCRGF0YUdyaWROb2RlLnByb3RvdHlwZSA9IHsKICAgICAvKioKICAgICAgKiBAcmV0dXJuIHtF
bGVtZW50fQogICAgICAqLwotICAgIGNyZWF0ZUNlbGw6IGZ1bmN0aW9uKGNvbHVtbklkZW50aWZp
ZXIpCisgICAgY3JlYXRlQ2VsbDogZnVuY3Rpb24oZGF0YSwgY29sdW1uSWRlbnRpZmllcikKICAg
ICB7Ci0gICAgICAgIHZhciBjZWxsID0gV2ViSW5zcGVjdG9yLkRhdGFHcmlkTm9kZS5wcm90b3R5
cGUuY3JlYXRlQ2VsbC5jYWxsKHRoaXMsIGNvbHVtbklkZW50aWZpZXIpOworICAgICAgICB2YXIg
Y2VsbCA9IFdlYkluc3BlY3Rvci5EYXRhR3JpZE5vZGUucHJvdG90eXBlLmNyZWF0ZUNlbGwuY2Fs
bCh0aGlzLCBkYXRhLCBjb2x1bW5JZGVudGlmaWVyKTsKICAgICAgICAgdmFyIHZhbHVlID0gdGhp
cy5kYXRhW2NvbHVtbklkZW50aWZpZXJdOwogCiAgICAgICAgIHN3aXRjaCAoY29sdW1uSWRlbnRp
ZmllcikgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Q
cm9maWxlRGF0YUdyaWRUcmVlLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9Qcm9maWxlRGF0YUdyaWRUcmVlLmpzCmluZGV4IDI4NGYzYjg3YTdkOTZhMGQwYWI0YTdkN2Y5
Mzg1ZTIzMDRhMzkxMmQuLjg1YzliZWUwODJkY2Y0MDU0OTcxOTFmYjAzMjY1M2ZiYjM3MDQzNGQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUHJvZmlsZURh
dGFHcmlkVHJlZS5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1By
b2ZpbGVEYXRhR3JpZFRyZWUuanMKQEAgLTgwLDkgKzgwLDE0IEBAIFdlYkluc3BlY3Rvci5Qcm9m
aWxlRGF0YUdyaWROb2RlLnByb3RvdHlwZSA9IHsKICAgICAgICAgcmV0dXJuIGRhdGE7CiAgICAg
fSwKIAotICAgIGNyZWF0ZUNlbGw6IGZ1bmN0aW9uKGNvbHVtbklkZW50aWZpZXIpCisgICAgLyoq
CisgICAgICogQHBhcmFtIHtzdHJpbmd9IGNvbHVtbklkZW50aWZpZXIKKyAgICAgKiBAcGFyYW0g
e09iamVjdH0gZGF0YQorICAgICAqIEByZXR1cm4geyFFbGVtZW50fQorICAgICAqLworICAgIGNy
ZWF0ZUNlbGw6IGZ1bmN0aW9uKGRhdGEsIGNvbHVtbklkZW50aWZpZXIpCiAgICAgewotICAgICAg
ICB2YXIgY2VsbCA9IFdlYkluc3BlY3Rvci5EYXRhR3JpZE5vZGUucHJvdG90eXBlLmNyZWF0ZUNl
bGwuY2FsbCh0aGlzLCBjb2x1bW5JZGVudGlmaWVyKTsKKyAgICAgICAgdmFyIGNlbGwgPSBXZWJJ
bnNwZWN0b3IuRGF0YUdyaWROb2RlLnByb3RvdHlwZS5jcmVhdGVDZWxsLmNhbGwodGhpcywgZGF0
YSwgY29sdW1uSWRlbnRpZmllcik7CiAKICAgICAgICAgaWYgKGNvbHVtbklkZW50aWZpZXIgPT09
ICJzZWxmIiAmJiB0aGlzLl9zZWFyY2hNYXRjaGVkU2VsZkNvbHVtbikKICAgICAgICAgICAgIGNl
bGwuYWRkU3R5bGVDbGFzcygiaGlnaGxpZ2h0Iik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>175214</attachid>
            <date>2012-11-20 07:11:18 -0800</date>
            <delta_ts>2012-11-22 18:44:11 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-102813-20121120190906.patch</filename>
            <type>text/plain</type>
            <size>10672</size>
            <attacher>eustas.bug</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM1MjcxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTkzZjBmNDYwNzVmYjll
ODhhZDMyZDVkMmMxOTM4ZDRjYjlmNmZkNC4uMDFlNmIyZjVkYjFkYTc2MTVkMjUyZjM0NTI0YTg0
YmNmNTUwOGEyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEyLTExLTIwICBFdWdl
bmUgS2x5dWNobmlrb3YgIDxldXN0YXMuYnVnQGdtYWlsLmNvbT4KKworICAgICAgICBXZWIgSW5z
cGVjdG9yOiBEYXRhR3JpZDogYXZvaWQgcmVwZXRpdGl2ZSBhY2Nlc3MgdG8gbm9kZSBkYXRhIGZp
ZWxkLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAy
ODEzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRGF0
YUdyaWROb2RlLmRhdGEgaXMgYSBnZXR0ZXIuCisgICAgICAgIEVhY2ggYWNjZXNzIHRvICJkYXRh
IiBjYXVzZXMgY29uc3RydWN0aW9uIG9mIG9iamVjdCB0aGF0CisgICAgICAgIGNvbnRhaW5zIHBy
ZXNlbnRhdGlvbiB2YWx1ZXMgZm9yIGFsbCBmaWVsZHMuCisKKyAgICAgICAgVGhlcmUgYXJlIGZl
dyBsb29wcyBpbiB3aGljaCB0aGlzIGZpZWxkIGlzIGFjY2Vzc2VkIHJlcGV0aXRpdmVseS4KKyAg
ICAgICAgV2l0aCB0aGlzIHBhdGNoIGluIG1vc3QgbG9vcHMgImRhdGEiIHJlc3VsdCByZXVzZWQu
CisKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0RhdGFHcmlkLmpzOgorICAgICAgICBB
ZGRlZCAiZGF0YSIgcGFyYW1ldGVyIHRvICJjcmVhdGVDZWxsIiBtZXRob2QuCisgICAgICAgICog
aW5zcGVjdG9yL2Zyb250LWVuZC9DU1NTZWxlY3RvclByb2ZpbGVWaWV3LmpzOiBBZG9wdGVkIGNo
YW5nZXMuCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RHcmlkTm9k
ZXMuanM6IERpdHRvLgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvSW5kZXhlZERCVmll
d3MuanM6IERpdHRvLgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvUHJvZmlsZURhdGFH
cmlkVHJlZS5qczogRGl0dG8uCisKIDIwMTItMTEtMTkgIEFudHRpIEtvaXZpc3RvICA8YW50dGlA
YXBwbGUuY29tPgogCiAgICAgICAgIENvbGxlY3QgdXNlciBzdHlsZSBzaGVldHMgaW4gRG9jdW1l
bnRTdHlsZVNoZWV0Q29sbGVjdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9DU1NTZWxlY3RvclByb2ZpbGVWaWV3LmpzIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9DU1NTZWxlY3RvclByb2ZpbGVWaWV3LmpzCmluZGV4IGU5ZDcx
ZWM4NTQ4ODQ0YTAwNjJmNjZhZmY0OTY3ODllYjhiMDk0NTUuLjhmNjczNDY0NTViZGQzZWVkYWQw
OTQyMmRiNThmMGRiZWVkZjcwY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvQ1NTU2VsZWN0b3JQcm9maWxlVmlldy5qcworKysgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NTU1NlbGVjdG9yUHJvZmlsZVZpZXcuanMKQEAgLTU1LDkg
KzU1LDkgQEAgV2ViSW5zcGVjdG9yLkNTU1NlbGVjdG9yRGF0YUdyaWROb2RlLnByb3RvdHlwZSA9
IHsKICAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGE7CiAgICAgfSwKIAotICAgIGNyZWF0ZUNlbGw6
IGZ1bmN0aW9uKGNvbHVtbklkZW50aWZpZXIpCisgICAgY3JlYXRlQ2VsbDogZnVuY3Rpb24oZGF0
YSwgY29sdW1uSWRlbnRpZmllcikKICAgICB7Ci0gICAgICAgIHZhciBjZWxsID0gV2ViSW5zcGVj
dG9yLkRhdGFHcmlkTm9kZS5wcm90b3R5cGUuY3JlYXRlQ2VsbC5jYWxsKHRoaXMsIGNvbHVtbklk
ZW50aWZpZXIpOworICAgICAgICB2YXIgY2VsbCA9IFdlYkluc3BlY3Rvci5EYXRhR3JpZE5vZGUu
cHJvdG90eXBlLmNyZWF0ZUNlbGwuY2FsbCh0aGlzLCBkYXRhLCBjb2x1bW5JZGVudGlmaWVyKTsK
ICAgICAgICAgaWYgKGNvbHVtbklkZW50aWZpZXIgPT09ICJzZWxlY3RvciIgJiYgY2VsbC5maXJz
dENoaWxkKSB7CiAgICAgICAgICAgICBjZWxsLmZpcnN0Q2hpbGQudGl0bGUgPSB0aGlzLnJhd0Rh
dGEuc2VsZWN0b3I7CiAgICAgICAgICAgICByZXR1cm4gY2VsbDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvRGF0YUdyaWQuanMgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0RhdGFHcmlkLmpzCmluZGV4IDUwZDA0NjQ4Yzk5OTYwZjBh
YzY4NmFlM2VlMWMyYzEwYmI1MTUxZjQuLjljNGM5MDQzMWUyNTNiOGRhZTNmZDMxMjA0YjA1ODky
ZThmMTE2OWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
RGF0YUdyaWQuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9EYXRh
R3JpZC5qcwpAQCAtNDk5LDkgKzQ5OSw5IEBAIFdlYkluc3BlY3Rvci5EYXRhR3JpZC5wcm90b3R5
cGUgPSB7CiAgICAgICAgIG1heERlc2NlbnRMZXZlbCA9IG1heERlc2NlbnRMZXZlbCB8fCAwOwog
ICAgICAgICB2YXIgY2hpbGRyZW4gPSB0aGlzLl9lbnVtZXJhdGVDaGlsZHJlbih0aGlzLl9yb290
Tm9kZSwgW10sIG1heERlc2NlbnRMZXZlbCArIDEpOwogICAgICAgICBmb3IgKHZhciBpID0gMDsg
aSA8IGNoaWxkcmVuLmxlbmd0aDsgKytpKSB7Ci0gICAgICAgICAgICB2YXIgbm9kZSA9IGNoaWxk
cmVuW2ldOworICAgICAgICAgICAgdmFyIGRhdGEgPSBjaGlsZHJlbltpXS5kYXRhOwogICAgICAg
ICAgICAgZm9yICh2YXIgaiA9IDA7IGogPCBjb2x1bW5JZGVudGlmaWVycy5sZW5ndGg7ICsraikg
ewotICAgICAgICAgICAgICAgIHZhciB0ZXh0ID0gbm9kZS5kYXRhW2NvbHVtbklkZW50aWZpZXJz
W2pdXSB8fCAiIjsKKyAgICAgICAgICAgICAgICB2YXIgdGV4dCA9IGRhdGFbY29sdW1uSWRlbnRp
ZmllcnNbal1dIHx8ICIiOwogICAgICAgICAgICAgICAgIGlmICh0ZXh0Lmxlbmd0aCA+IHdpZHRo
c1tqXSkKICAgICAgICAgICAgICAgICAgICAgd2lkdGhzW2pdID0gdGV4dC5sZW5ndGg7CiAgICAg
ICAgICAgICB9CkBAIC0xMDc0LDggKzEwNzQsOSBAQCBXZWJJbnNwZWN0b3IuRGF0YUdyaWROb2Rl
LnByb3RvdHlwZSA9IHsKIAogICAgIGNyZWF0ZUNlbGxzOiBmdW5jdGlvbigpCiAgICAgeworICAg
ICAgICB2YXIgZGF0YSA9IHRoaXMuZGF0YTsKICAgICAgICAgZm9yICh2YXIgY29sdW1uSWRlbnRp
ZmllciBpbiB0aGlzLmRhdGFHcmlkLmNvbHVtbnMpIHsKLSAgICAgICAgICAgIHZhciBjZWxsID0g
dGhpcy5jcmVhdGVDZWxsKGNvbHVtbklkZW50aWZpZXIpOworICAgICAgICAgICAgdmFyIGNlbGwg
PSB0aGlzLmNyZWF0ZUNlbGwoZGF0YSwgY29sdW1uSWRlbnRpZmllcik7CiAgICAgICAgICAgICB0
aGlzLl9lbGVtZW50LmFwcGVuZENoaWxkKGNlbGwpOwogICAgICAgICB9CiAgICAgfSwKQEAgLTEy
MjMsNyArMTIyNCwxMiBAQCBXZWJJbnNwZWN0b3IuRGF0YUdyaWROb2RlLnByb3RvdHlwZSA9IHsK
ICAgICAgICAgdGhpcy5jcmVhdGVDZWxscygpOwogICAgIH0sCiAKLSAgICBjcmVhdGVDZWxsOiBm
dW5jdGlvbihjb2x1bW5JZGVudGlmaWVyKQorICAgIC8qKgorICAgICAqIEBwYXJhbSB7T2JqZWN0
fSBkYXRhCisgICAgICogQHBhcmFtIHtzdHJpbmd9IGNvbHVtbklkZW50aWZpZXIKKyAgICAgKiBA
cmV0dXJuIHshRWxlbWVudH0KKyAgICAgKi8KKyAgICBjcmVhdGVDZWxsOiBmdW5jdGlvbihkYXRh
LCBjb2x1bW5JZGVudGlmaWVyKQogICAgIHsKICAgICAgICAgdmFyIGNlbGwgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCJ0ZCIpOwogICAgICAgICBjZWxsLmNsYXNzTmFtZSA9IGNvbHVtbklkZW50
aWZpZXIgKyAiLWNvbHVtbiI7CkBAIC0xMjMyLDEyICsxMjM4LDEyIEBAIFdlYkluc3BlY3Rvci5E
YXRhR3JpZE5vZGUucHJvdG90eXBlID0gewogICAgICAgICBpZiAoYWxpZ25tZW50KQogICAgICAg
ICAgICAgY2VsbC5hZGRTdHlsZUNsYXNzKGFsaWdubWVudCk7CiAKLSAgICAgICAgdmFyIGRhdGEg
PSB0aGlzLmRhdGFbY29sdW1uSWRlbnRpZmllcl07CisgICAgICAgIHZhciBjZWxsRGF0YSA9IGRh
dGFbY29sdW1uSWRlbnRpZmllcl07CiAgICAgICAgIHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCJkaXYiKTsKLSAgICAgICAgaWYgKGRhdGEgaW5zdGFuY2VvZiBOb2RlKQotICAgICAg
ICAgICAgZGl2LmFwcGVuZENoaWxkKGRhdGEpOworICAgICAgICBpZiAoY2VsbERhdGEgaW5zdGFu
Y2VvZiBOb2RlKQorICAgICAgICAgICAgZGl2LmFwcGVuZENoaWxkKGNlbGxEYXRhKTsKICAgICAg
ICAgZWxzZQotICAgICAgICAgICAgZGl2LnRleHRDb250ZW50ID0gZGF0YTsKKyAgICAgICAgICAg
IGRpdi50ZXh0Q29udGVudCA9IGNlbGxEYXRhOwogICAgICAgICBjZWxsLmFwcGVuZENoaWxkKGRp
dik7CiAKICAgICAgICAgaWYgKGNvbHVtbklkZW50aWZpZXIgPT09IHRoaXMuZGF0YUdyaWQuZGlz
Y2xvc3VyZUNvbHVtbklkZW50aWZpZXIpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvSGVhcFNuYXBzaG90R3JpZE5vZGVzLmpzIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RHcmlkTm9kZXMuanMKaW5kZXggNDBl
ODE1NDAwNGQyMmQzZDdmMzRmN2YyNDg1MDdkMzE1ZTMxYzY3ZS4uYjdhN2ZiYWNhODJmNDEzODZj
Yjk1ZTQ0MTU2ZmE2ODk4MTdkMjZjYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RHcmlkTm9kZXMuanMKKysrIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RHcmlkTm9kZXMuanMKQEAgLTY4LDkg
KzY4LDkgQEAgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdEdyaWROb2RlLnByb3RvdHlwZSA9IHsK
ICAgICAgICAgcmV0dXJuIHRoaXMuX3Byb3ZpZGVyT2JqZWN0OwogICAgIH0sCiAKLSAgICBjcmVh
dGVDZWxsOiBmdW5jdGlvbihjb2x1bW5JZGVudGlmaWVyKQorICAgIGNyZWF0ZUNlbGw6IGZ1bmN0
aW9uKGRhdGEsIGNvbHVtbklkZW50aWZpZXIpCiAgICAgewotICAgICAgICB2YXIgY2VsbCA9IFdl
Ykluc3BlY3Rvci5EYXRhR3JpZE5vZGUucHJvdG90eXBlLmNyZWF0ZUNlbGwuY2FsbCh0aGlzLCBj
b2x1bW5JZGVudGlmaWVyKTsKKyAgICAgICAgdmFyIGNlbGwgPSBXZWJJbnNwZWN0b3IuRGF0YUdy
aWROb2RlLnByb3RvdHlwZS5jcmVhdGVDZWxsLmNhbGwodGhpcywgZGF0YSwgY29sdW1uSWRlbnRp
Zmllcik7CiAgICAgICAgIGlmICh0aGlzLl9zZWFyY2hNYXRjaGVkKQogICAgICAgICAgICAgY2Vs
bC5hZGRTdHlsZUNsYXNzKCJoaWdobGlnaHQiKTsKICAgICAgICAgcmV0dXJuIGNlbGw7CkBAIC0x
MjcsNyArMTI3LDcgQEAgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdEdyaWROb2RlLnByb3RvdHlw
ZSA9IHsKICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgfSwKIAotICAgIF9jcmVhdGVWYWx1ZUNl
bGw6IGZ1bmN0aW9uKGNvbHVtbklkZW50aWZpZXIpCisgICAgX2NyZWF0ZVZhbHVlQ2VsbDogZnVu
Y3Rpb24oZGF0YSwgY29sdW1uSWRlbnRpZmllcikKICAgICB7CiAgICAgICAgIHZhciBjZWxsID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGQiKTsKICAgICAgICAgY2VsbC5jbGFzc05hbWUgPSBj
b2x1bW5JZGVudGlmaWVyICsgIi1jb2x1bW4iOwpAQCAtMTM3LDEwICsxMzcsMTAgQEAgV2ViSW5z
cGVjdG9yLkhlYXBTbmFwc2hvdEdyaWROb2RlLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIHZh
bHVlU3Bhbi50ZXh0Q29udGVudCA9IHRoaXMuZGF0YVtjb2x1bW5JZGVudGlmaWVyXTsKICAgICAg
ICAgICAgIGRpdi5hcHBlbmRDaGlsZCh2YWx1ZVNwYW4pOwogICAgICAgICAgICAgdmFyIHBlcmNl
bnRDb2x1bW4gPSBjb2x1bW5JZGVudGlmaWVyICsgIi1wZXJjZW50IjsKLSAgICAgICAgICAgIGlm
IChwZXJjZW50Q29sdW1uIGluIHRoaXMuZGF0YSkgeworICAgICAgICAgICAgaWYgKHBlcmNlbnRD
b2x1bW4gaW4gZGF0YSkgewogICAgICAgICAgICAgICAgIHZhciBwZXJjZW50U3BhbiA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTsKICAgICAgICAgICAgICAgICBwZXJjZW50U3Bhbi5j
bGFzc05hbWUgPSAicGVyY2VudC1jb2x1bW4iOwotICAgICAgICAgICAgICAgIHBlcmNlbnRTcGFu
LnRleHRDb250ZW50ID0gdGhpcy5kYXRhW3BlcmNlbnRDb2x1bW5dOworICAgICAgICAgICAgICAg
IHBlcmNlbnRTcGFuLnRleHRDb250ZW50ID0gZGF0YVtwZXJjZW50Q29sdW1uXTsKICAgICAgICAg
ICAgICAgICBkaXYuYXBwZW5kQ2hpbGQocGVyY2VudFNwYW4pOwogICAgICAgICAgICAgfQogICAg
ICAgICAgICAgY2VsbC5hcHBlbmRDaGlsZChkaXYpOwpAQCAtMzY4LDkgKzM2OCw5IEBAIFdlYklu
c3BlY3Rvci5IZWFwU25hcHNob3RHZW5lcmljT2JqZWN0Tm9kZSA9IGZ1bmN0aW9uKHRyZWUsIG5v
ZGUpCiB9OwogCiBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90R2VuZXJpY09iamVjdE5vZGUucHJv
dG90eXBlID0gewotICAgIGNyZWF0ZUNlbGw6IGZ1bmN0aW9uKGNvbHVtbklkZW50aWZpZXIpCisg
ICAgY3JlYXRlQ2VsbDogZnVuY3Rpb24oZGF0YSwgY29sdW1uSWRlbnRpZmllcikKICAgICB7Ci0g
ICAgICAgIHZhciBjZWxsID0gY29sdW1uSWRlbnRpZmllciAhPT0gIm9iamVjdCIgPyB0aGlzLl9j
cmVhdGVWYWx1ZUNlbGwoY29sdW1uSWRlbnRpZmllcikgOiB0aGlzLl9jcmVhdGVPYmplY3RDZWxs
KCk7CisgICAgICAgIHZhciBjZWxsID0gY29sdW1uSWRlbnRpZmllciAhPT0gIm9iamVjdCIgPyB0
aGlzLl9jcmVhdGVWYWx1ZUNlbGwoZGF0YSwgY29sdW1uSWRlbnRpZmllcikgOiB0aGlzLl9jcmVh
dGVPYmplY3RDZWxsKCk7CiAgICAgICAgIGlmICh0aGlzLl9zZWFyY2hNYXRjaGVkKQogICAgICAg
ICAgICAgY2VsbC5hZGRTdHlsZUNsYXNzKCJoaWdobGlnaHQiKTsKICAgICAgICAgcmV0dXJuIGNl
bGw7CkBAIC03ODcsOSArNzg3LDkgQEAgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdENvbnN0cnVj
dG9yTm9kZS5wcm90b3R5cGUgPSB7CiAgICAgICAgIHRoaXMuZXhwYW5kV2l0aG91dFBvcHVsYXRl
KGRpZEV4cGFuZC5iaW5kKHRoaXMpKTsKICAgICB9LAogCi0gICAgY3JlYXRlQ2VsbDogZnVuY3Rp
b24oY29sdW1uSWRlbnRpZmllcikKKyAgICBjcmVhdGVDZWxsOiBmdW5jdGlvbihkYXRhLCBjb2x1
bW5JZGVudGlmaWVyKQogICAgIHsKLSAgICAgICAgdmFyIGNlbGwgPSBjb2x1bW5JZGVudGlmaWVy
ICE9PSAib2JqZWN0IiA/IHRoaXMuX2NyZWF0ZVZhbHVlQ2VsbChjb2x1bW5JZGVudGlmaWVyKSA6
IFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RHcmlkTm9kZS5wcm90b3R5cGUuY3JlYXRlQ2VsbC5j
YWxsKHRoaXMsIGNvbHVtbklkZW50aWZpZXIpOworICAgICAgICB2YXIgY2VsbCA9IGNvbHVtbklk
ZW50aWZpZXIgIT09ICJvYmplY3QiID8gdGhpcy5fY3JlYXRlVmFsdWVDZWxsKGRhdGEsIGNvbHVt
bklkZW50aWZpZXIpIDogV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdEdyaWROb2RlLnByb3RvdHlw
ZS5jcmVhdGVDZWxsLmNhbGwodGhpcywgZGF0YSwgY29sdW1uSWRlbnRpZmllcik7CiAgICAgICAg
IGlmICh0aGlzLl9zZWFyY2hNYXRjaGVkKQogICAgICAgICAgICAgY2VsbC5hZGRTdHlsZUNsYXNz
KCJoaWdobGlnaHQiKTsKICAgICAgICAgcmV0dXJuIGNlbGw7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0luZGV4ZWREQlZpZXdzLmpzIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9JbmRleGVkREJWaWV3cy5qcwppbmRleCAwN2FjOTE5
NTYzMGM3NmY0NjBlNDI2MDlmMjBhMjQwZDdhMGZiMjI3Li40ZGQ0MzRkMTU4ZmUwMzg3ODBhMWM4
MTA0MDczY2YzMzcxYzk5MWQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
ZnJvbnQtZW5kL0luZGV4ZWREQlZpZXdzLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvSW5kZXhlZERCVmlld3MuanMKQEAgLTM4OCw5ICszODgsOSBAQCBXZWJJbnNw
ZWN0b3IuSURCRGF0YUdyaWROb2RlLnByb3RvdHlwZSA9IHsKICAgICAvKioKICAgICAgKiBAcmV0
dXJuIHtFbGVtZW50fQogICAgICAqLwotICAgIGNyZWF0ZUNlbGw6IGZ1bmN0aW9uKGNvbHVtbklk
ZW50aWZpZXIpCisgICAgY3JlYXRlQ2VsbDogZnVuY3Rpb24oZGF0YSwgY29sdW1uSWRlbnRpZmll
cikKICAgICB7Ci0gICAgICAgIHZhciBjZWxsID0gV2ViSW5zcGVjdG9yLkRhdGFHcmlkTm9kZS5w
cm90b3R5cGUuY3JlYXRlQ2VsbC5jYWxsKHRoaXMsIGNvbHVtbklkZW50aWZpZXIpOworICAgICAg
ICB2YXIgY2VsbCA9IFdlYkluc3BlY3Rvci5EYXRhR3JpZE5vZGUucHJvdG90eXBlLmNyZWF0ZUNl
bGwuY2FsbCh0aGlzLCBkYXRhLCBjb2x1bW5JZGVudGlmaWVyKTsKICAgICAgICAgdmFyIHZhbHVl
ID0gdGhpcy5kYXRhW2NvbHVtbklkZW50aWZpZXJdOwogCiAgICAgICAgIHN3aXRjaCAoY29sdW1u
SWRlbnRpZmllcikgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9OYXRpdmVNZW1vcnlTbmFwc2hvdFZpZXcuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL05hdGl2ZU1lbW9yeVNuYXBzaG90Vmlldy5qcwppbmRleCBkZTQ5MjQ1ZTAx
ZTQ5NjVmZGE3MDY0NTExOTU4MDBiOTRkODAwZmRlLi4yNjY5MjQyOGQxOThmNTg2ZTVjZGFkNjhj
ZTQxNGU3ZjA1Y2E0YTkwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL05hdGl2ZU1lbW9yeVNuYXBzaG90Vmlldy5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL05hdGl2ZU1lbW9yeVNuYXBzaG90Vmlldy5qcwpAQCAtODksMTQg
Kzg5LDE1IEBAIFdlYkluc3BlY3Rvci5OYXRpdmVTbmFwc2hvdE5vZGUgPSBmdW5jdGlvbihub2Rl
RGF0YSwgcHJvZmlsZSkKIFdlYkluc3BlY3Rvci5OYXRpdmVTbmFwc2hvdE5vZGUucHJvdG90eXBl
ID0gewogICAgIC8qKgogICAgICAqIEBvdmVycmlkZQorICAgICAqIEBwYXJhbSB7T2JqZWN0fSBk
YXRhCiAgICAgICogQHBhcmFtIHtzdHJpbmd9IGNvbHVtbklkZW50aWZpZXIKICAgICAgKiBAcmV0
dXJuIHtFbGVtZW50fQogICAgICAqLwotICAgIGNyZWF0ZUNlbGw6IGZ1bmN0aW9uKGNvbHVtbklk
ZW50aWZpZXIpCisgICAgY3JlYXRlQ2VsbDogZnVuY3Rpb24oZGF0YSwgY29sdW1uSWRlbnRpZmll
cikKICAgICB7CiAgICAgICAgIHZhciBjZWxsID0gY29sdW1uSWRlbnRpZmllciA9PT0gInNpemUi
ID8KICAgICAgICAgICAgIHRoaXMuX2NyZWF0ZVNpemVDZWxsKGNvbHVtbklkZW50aWZpZXIpIDoK
LSAgICAgICAgICAgIFdlYkluc3BlY3Rvci5EYXRhR3JpZE5vZGUucHJvdG90eXBlLmNyZWF0ZUNl
bGwuY2FsbCh0aGlzLCBjb2x1bW5JZGVudGlmaWVyKTsKKyAgICAgICAgICAgIFdlYkluc3BlY3Rv
ci5EYXRhR3JpZE5vZGUucHJvdG90eXBlLmNyZWF0ZUNlbGwuY2FsbCh0aGlzLCBkYXRhLCBjb2x1
bW5JZGVudGlmaWVyKTsKICAgICAgICAgcmV0dXJuIGNlbGw7CiAgICAgfSwKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Qcm9maWxlRGF0YUdyaWRUcmVl
LmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Qcm9maWxlRGF0YUdyaWRU
cmVlLmpzCmluZGV4IDI4NGYzYjg3YTdkOTZhMGQwYWI0YTdkN2Y5Mzg1ZTIzMDRhMzkxMmQuLjg1
YzliZWUwODJkY2Y0MDU0OTcxOTFmYjAzMjY1M2ZiYjM3MDQzNGQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUHJvZmlsZURhdGFHcmlkVHJlZS5qcworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Byb2ZpbGVEYXRhR3JpZFRyZWUu
anMKQEAgLTgwLDkgKzgwLDE0IEBAIFdlYkluc3BlY3Rvci5Qcm9maWxlRGF0YUdyaWROb2RlLnBy
b3RvdHlwZSA9IHsKICAgICAgICAgcmV0dXJuIGRhdGE7CiAgICAgfSwKIAotICAgIGNyZWF0ZUNl
bGw6IGZ1bmN0aW9uKGNvbHVtbklkZW50aWZpZXIpCisgICAgLyoqCisgICAgICogQHBhcmFtIHtz
dHJpbmd9IGNvbHVtbklkZW50aWZpZXIKKyAgICAgKiBAcGFyYW0ge09iamVjdH0gZGF0YQorICAg
ICAqIEByZXR1cm4geyFFbGVtZW50fQorICAgICAqLworICAgIGNyZWF0ZUNlbGw6IGZ1bmN0aW9u
KGRhdGEsIGNvbHVtbklkZW50aWZpZXIpCiAgICAgewotICAgICAgICB2YXIgY2VsbCA9IFdlYklu
c3BlY3Rvci5EYXRhR3JpZE5vZGUucHJvdG90eXBlLmNyZWF0ZUNlbGwuY2FsbCh0aGlzLCBjb2x1
bW5JZGVudGlmaWVyKTsKKyAgICAgICAgdmFyIGNlbGwgPSBXZWJJbnNwZWN0b3IuRGF0YUdyaWRO
b2RlLnByb3RvdHlwZS5jcmVhdGVDZWxsLmNhbGwodGhpcywgZGF0YSwgY29sdW1uSWRlbnRpZmll
cik7CiAKICAgICAgICAgaWYgKGNvbHVtbklkZW50aWZpZXIgPT09ICJzZWxmIiAmJiB0aGlzLl9z
ZWFyY2hNYXRjaGVkU2VsZkNvbHVtbikKICAgICAgICAgICAgIGNlbGwuYWRkU3R5bGVDbGFzcygi
aGlnaGxpZ2h0Iik7Cg==
</data>
<flag name="review"
          id="190590"
          type_id="1"
          status="-"
          setter="pfeldman"
    />
          </attachment>
      

    </bug>

</bugzilla>