<?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>92994</bug_id>
          
          <creation_ts>2012-08-02 08:49:02 -0700</creation_ts>
          <short_desc>Web Inspector: extend test coverage for nmi code.</short_desc>
          <delta_ts>2012-08-03 00:34:18 -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>
          
          <blocked>87262</blocked>
    
    <blocked>93001</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Ilya Tikhonovsky">loislo</reporter>
          <assigned_to name="Ilya Tikhonovsky">loislo</assigned_to>
          <cc>alph</cc>
    
    <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>685441</commentid>
    <comment_count>0</comment_count>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2012-08-02 08:49:02 -0700</bug_when>
    <thetext>There were 2 cases. 
1) owner object type propagation. If a class with object type DOM has an instrumented member with object type Other then it has to be recorded as DOM.
Sample: We have SharedBuffer class and we don&apos;t know the object type for it but we know that it is owned by an object with type CachedResourceImage.

2) the first member of an instrumented non virtual class was skipped even if it was reported properly.
it happened because the first member has the same address as it&apos;s owner</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>685448</commentid>
    <comment_count>1</comment_count>
      <attachid>156099</attachid>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2012-08-02 08:54:30 -0700</bug_when>
    <thetext>Created attachment 156099
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>686259</commentid>
    <comment_count>2</comment_count>
      <attachid>156099</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2012-08-02 23:26:29 -0700</bug_when>
    <thetext>Comment on attachment 156099
Patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        2 cases were fixed.

This patch is not only about tests, it fixes two bugs and this comment may confuse people.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>686306</commentid>
    <comment_count>3</comment_count>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2012-08-03 00:34:18 -0700</bug_when>
    <thetext>Committed r124570: &lt;http://trac.webkit.org/changeset/124570&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>156099</attachid>
            <date>2012-08-02 08:54:30 -0700</date>
            <delta_ts>2012-08-02 23:26:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-92994-20120802195410.patch</filename>
            <type>text/plain</type>
            <size>17552</size>
            <attacher name="Ilya Tikhonovsky">loislo</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI0NDU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTk4NWZhYmRhMGY0MWFl
NGEzN2QwNjcyNWY2YzhjYjMxMGEwY2YyYi4uYTQ0MTIwYTc4NTcwZGE5ZGM4YzA3OTlhODc2Njdh
N2M5MDRkNTNjMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDEyLTA4LTAyICBJbHlh
IFRpa2hvbm92c2t5ICA8bG9pc2xvQGNocm9taXVtLm9yZz4KKworICAgICAgICBXZWIgSW5zcGVj
dG9yOiBleHRlbmQgdGVzdCBjb3ZlcmFnZSBmb3Igbm1pIGNvZGUuCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05Mjk5NAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIDIgY2FzZXMgd2VyZSBmaXhlZC4KKworICAg
ICAgICAxKSBvd25lciBvYmplY3QgdHlwZSBwcm9wYWdhdGlvbi4KKyAgICAgICAgSWYgYSBjbGFz
cyB3aXRoIG9iamVjdC10eXBlIERPTSBoYXMgYW4gaW5zdHJ1bWVudGVkIG1lbWJlciB3aXRoIG9i
amVjdC10eXBlIE90aGVyIHRoZW4gaXQgaGFzIHRvIGJlIHJlY29yZGVkIGFzIERPTS4KKyAgICAg
ICAgU2FtcGxlOiBXZSBoYXZlIFNoYXJlZEJ1ZmZlciBjbGFzcyBhbmQgd2UgZG9uJ3Qga25vdyB0
aGUgb2JqZWN0LXR5cGUgZm9yIGl0IGJ1dCB3ZSBrbm93IHRoYXQgaXQgaXMgb3duZWQgYnkgYW4g
b2JqZWN0IHdpdGggb2JqZWN0LXR5cGUgQ2FjaGVkUmVzb3VyY2VJbWFnZS4KKworICAgICAgICAy
KSB0aGUgZmlyc3QgbWVtYmVyIG9mIGFuIGluc3RydW1lbnRlZCBub24gdmlydHVhbCBjbGFzcyB3
YXMgc2tpcHBlZCBldmVuIGlmIGl0IHdhcyByZXBvcnRlZCBwcm9wZXJseS4KKyAgICAgICAgaXQg
aGFwcGVuZWQgYmVjYXVzZSB0aGUgZmlyc3QgbWVtYmVyIGhhcyB0aGUgc2FtZSBhZGRyZXNzIGFz
IGl0J3Mgb3duZXIKKworICAgICAgICAqIGRvbS9NZW1vcnlJbnN0cnVtZW50YXRpb24uaDoKKyAg
ICAgICAgKFdlYkNvcmU6Ok1lbW9yeUluc3RydW1lbnRhdGlvbjo6YWRkUm9vdE9iamVjdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpNZW1vcnlJbnN0cnVtZW50YXRpb246Okluc3RydW1lbnRlZFBvaW50
ZXI6Okluc3RydW1lbnRlZFBvaW50ZXIpOgorICAgICAgICAoSW5zdHJ1bWVudGVkUG9pbnRlcik6
CisgICAgICAgIChXZWJDb3JlOjpNZW1vcnlJbnN0cnVtZW50YXRpb246OmFkZEluc3RydW1lbnRl
ZE9iamVjdCk6CisgICAgICAgIChNZW1vcnlJbnN0cnVtZW50YXRpb24pOgorICAgICAgICAoV2Vi
Q29yZTo6TWVtb3J5SW5zdHJ1bWVudGF0aW9uOjpPd25pbmdUcmFpdHM6OmFkZEluc3RydW1lbnRl
ZE9iamVjdCk6CisgICAgICAgIChXZWJDb3JlOjpNZW1vcnlPYmplY3RJbmZvOjpNZW1vcnlPYmpl
Y3RJbmZvKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lbW9yeU9iamVjdEluZm86OnJlcG9ydE9iamVj
dEluZm8pOgorICAgICAgICAoV2ViQ29yZTo6TWVtb3J5Q2xhc3NJbmZvOjphZGRJbnN0cnVtZW50
ZWRNZW1iZXIpOgorICAgICAgICAoV2ViQ29yZTo6TWVtb3J5SW5zdHJ1bWVudGF0aW9uOjphZGRJ
bnN0cnVtZW50ZWRPYmplY3RJbXBsKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lbW9yeUluc3RydW1l
bnRhdGlvbjo6YWRkT2JqZWN0SW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpNZW1vcnlJbnN0cnVt
ZW50YXRpb246OmFkZEluc3RydW1lbnRlZENvbGxlY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6
Ojpwcm9jZXNzKToKKwogMjAxMi0wOC0wMiAgQWxleGFuZGVyIFBhdmxvdiAgPGFwYXZsb3ZAY2hy
b21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IE1vdmUgRE9NIGJyZWFrcG9pbnRz
LXJlbGF0ZWQgY29udGV4dCBtZW51IGl0ZW1zIGludG8gYSBzdWJtZW51CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
Q2hhbmdlTG9nCmluZGV4IGQzYzY1MjI3OTgwMTY1NGJkMThmNzhkYmJmN2JlMzY4ODg5Njk4Yzgu
LmI0ZWRmNDE5NzdlY2Y5N2NjNzQ1Yzk5ZTkwZjBjMTI2OWUzODVjNGIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIwMTItMDgtMDIgIElseWEgVGlraG9ub3Zz
a3kgIDxsb2lzbG9AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IGV4dGVu
ZCB0ZXN0IGNvdmVyYWdlIGZvciBubWkgY29kZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTkyOTk0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgMiBjYXNlcyB3ZXJlIGZpeGVkLgorCisgICAgICAgIDEpIG93
bmVyIG9iamVjdCB0eXBlIHByb3BhZ2F0aW9uLgorICAgICAgICBJZiBhIGNsYXNzIHdpdGggb2Jq
ZWN0LXR5cGUgRE9NIGhhcyBhbiBpbnN0cnVtZW50ZWQgbWVtYmVyIHdpdGggb2JqZWN0LXR5cGUg
T3RoZXIgdGhlbiBpdCBoYXMgdG8gYmUgcmVjb3JkZWQgYXMgRE9NLgorICAgICAgICBTYW1wbGU6
IFdlIGhhdmUgU2hhcmVkQnVmZmVyIGNsYXNzIGFuZCB3ZSBkb24ndCBrbm93IHRoZSBvYmplY3Qt
dHlwZSBmb3IgaXQgYnV0IHdlIGtub3cgdGhhdCBpdCBpcyBvd25lZCBieSBhbiBvYmplY3Qgd2l0
aCBvYmplY3QtdHlwZSBDYWNoZWRSZXNvdXJjZUltYWdlLgorCisgICAgICAgIDIpIHRoZSBmaXJz
dCBtZW1iZXIgb2YgYW4gaW5zdHJ1bWVudGVkIG5vbiB2aXJ0dWFsIGNsYXNzIHdhcyBza2lwcGVk
IGV2ZW4gaWYgaXQgd2FzIHJlcG9ydGVkIHByb3Blcmx5LgorICAgICAgICBpdCBoYXBwZW5lZCBi
ZWNhdXNlIHRoZSBmaXJzdCBtZW1iZXIgaGFzIHRoZSBzYW1lIGFkZHJlc3MgYXMgaXQncyBvd25l
cgorCisgICAgICAgICogdGVzdHMvTWVtb3J5SW5zdHJ1bWVudGF0aW9uVGVzdC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpURVNUKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoSW5zdHJ1
bWVudGVkT3RoZXIpOgorICAgICAgICAoV2ViQ29yZTo6SW5zdHJ1bWVudGVkT3RoZXI6Okluc3Ry
dW1lbnRlZE90aGVyKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3RydW1lbnRlZE90aGVyOjpyZXBv
cnRNZW1vcnlVc2FnZSk6CisgICAgICAgIChJbnN0cnVtZW50ZWRET00pOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zdHJ1bWVudGVkRE9NOjpJbnN0cnVtZW50ZWRET00pOgorICAgICAgICAoV2ViQ29y
ZTo6SW5zdHJ1bWVudGVkRE9NOjpyZXBvcnRNZW1vcnlVc2FnZSk6CisgICAgICAgIChOb25WaXJ0
dWFsSW5zdHJ1bWVudGVkKToKKyAgICAgICAgKFdlYkNvcmU6Ok5vblZpcnR1YWxJbnN0cnVtZW50
ZWQ6OnJlcG9ydE1lbW9yeVVzYWdlKToKKwogMjAxMi0wOC0wMiAgUGV0ZXIgQmV2ZXJsb28gIDxw
ZXRlckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW0Nocm9taXVtXSBUb2dnbGUgdGhlIHR5cGUg
b2YgYW50IGNvbXBpbGUgZm9yIHdlYmtpdF91bml0X3Rlc3RzIGFuZCBUZXN0V2ViS2l0QVBJCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTWVtb3J5SW5zdHJ1bWVudGF0aW9uLmggYi9T
b3VyY2UvV2ViQ29yZS9kb20vTWVtb3J5SW5zdHJ1bWVudGF0aW9uLmgKaW5kZXggYmE5MWMwN2Rh
ZmU1NjE3NzBjMjQ0MDAxMGM5ZGY1N2Y3YjhhNmZjMy4uM2IzNDJmZDA2MDYxZWFkNDIxY2JmOGMw
OTczY2RjZDVkMWZlNDVmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL01lbW9yeUlu
c3RydW1lbnRhdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NZW1vcnlJbnN0cnVtZW50
YXRpb24uaApAQCAtNTcsNyArNTcsNyBAQCBwdWJsaWM6CiAKICAgICB0ZW1wbGF0ZSA8dHlwZW5h
bWUgVD4gdm9pZCBhZGRSb290T2JqZWN0KGNvbnN0IFQmIHQpCiAgICAgewotICAgICAgICBhZGRJ
bnN0cnVtZW50ZWRPYmplY3QodCk7CisgICAgICAgIGFkZEluc3RydW1lbnRlZE9iamVjdCh0LCBP
dGhlcik7CiAgICAgICAgIHByb2Nlc3NEZWZlcnJlZEluc3RydW1lbnRlZFBvaW50ZXJzKCk7CiAg
ICAgfQogCkBAIC03OSwxMSArNzksMTIgQEAgcHJpdmF0ZToKICAgICB0ZW1wbGF0ZSA8dHlwZW5h
bWUgVD4gZnJpZW5kIGNsYXNzIE1lbW9yeUNsYXNzSW5mbzsKICAgICB0ZW1wbGF0ZSA8dHlwZW5h
bWUgVD4gY2xhc3MgSW5zdHJ1bWVudGVkUG9pbnRlciA6IHB1YmxpYyBJbnN0cnVtZW50ZWRQb2lu
dGVyQmFzZSB7CiAgICAgcHVibGljOgotICAgICAgICBleHBsaWNpdCBJbnN0cnVtZW50ZWRQb2lu
dGVyKGNvbnN0IFQqIHBvaW50ZXIpIDogbV9wb2ludGVyKHBvaW50ZXIpIHsgfQorICAgICAgICBl
eHBsaWNpdCBJbnN0cnVtZW50ZWRQb2ludGVyKGNvbnN0IFQqIHBvaW50ZXIsIE9iamVjdFR5cGUg
b2JqZWN0VHlwZSkgOiBtX3BvaW50ZXIocG9pbnRlciksIG1fb2JqZWN0VHlwZShvYmplY3RUeXBl
KSB7IH0KICAgICAgICAgdmlydHVhbCB2b2lkIHByb2Nlc3MoTWVtb3J5SW5zdHJ1bWVudGF0aW9u
KikgT1ZFUlJJREU7CiAKICAgICBwcml2YXRlOgogICAgICAgICBjb25zdCBUKiBtX3BvaW50ZXI7
CisgICAgICAgIGNvbnN0IE9iamVjdFR5cGUgbV9vYmplY3RUeXBlOwogICAgIH07CiAKICAgICB0
ZW1wbGF0ZSA8dHlwZW5hbWUgVD4gdm9pZCBhZGRPYmplY3QoY29uc3QgVCYgdCwgT2JqZWN0VHlw
ZSBvYmplY3RUeXBlKQpAQCAtOTEsNyArOTIsOCBAQCBwcml2YXRlOgogICAgICAgICBPd25pbmdU
cmFpdHM8VD46OmFkZE9iamVjdCh0aGlzLCB0LCBvYmplY3RUeXBlKTsKICAgICB9CiAgICAgdm9p
ZCBhZGRTdHJpbmcoY29uc3QgU3RyaW5nJiwgT2JqZWN0VHlwZSk7Ci0gICAgdGVtcGxhdGUgPHR5
cGVuYW1lIFQ+IHZvaWQgYWRkSW5zdHJ1bWVudGVkT2JqZWN0KGNvbnN0IFQmIHQpIHsgT3duaW5n
VHJhaXRzPFQ+OjphZGRJbnN0cnVtZW50ZWRPYmplY3QodGhpcywgdCk7IH0KKyAgICB0ZW1wbGF0
ZSA8dHlwZW5hbWUgVD4gdm9pZCBhZGRJbnN0cnVtZW50ZWRPYmplY3QoY29uc3QgVCYgdCwgT2Jq
ZWN0VHlwZSBvYmplY3RUeXBlKSB7IE93bmluZ1RyYWl0czxUPjo6YWRkSW5zdHJ1bWVudGVkT2Jq
ZWN0KHRoaXMsIHQsIG9iamVjdFR5cGUpOyB9CisKICAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgSGFz
aE1hcFR5cGU+IHZvaWQgYWRkSGFzaE1hcChjb25zdCBIYXNoTWFwVHlwZSYsIE9iamVjdFR5cGUs
IGJvb2wgY29udGVudE9ubHkgPSBmYWxzZSk7CiAgICAgdGVtcGxhdGUgPHR5cGVuYW1lIEhhc2hT
ZXRUeXBlPiB2b2lkIGFkZEhhc2hTZXQoY29uc3QgSGFzaFNldFR5cGUmLCBPYmplY3RUeXBlLCBi
b29sIGNvbnRlbnRPbmx5ID0gZmFsc2UpOwogICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBDb2xsZWN0
aW9uVHlwZT4gdm9pZCBhZGRJbnN0cnVtZW50ZWRDb2xsZWN0aW9uKGNvbnN0IENvbGxlY3Rpb25U
eXBlJiwgT2JqZWN0VHlwZSwgYm9vbCBjb250ZW50T25seSA9IGZhbHNlKTsKQEAgLTExMSwyMCAr
MTEzLDIwIEBAIHByaXZhdGU6CiAKICAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KICAgICBzdHJ1
Y3QgT3duaW5nVHJhaXRzIHsgLy8gRGVmYXVsdCBieVJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbi4K
LSAgICAgICAgc3RhdGljIHZvaWQgYWRkSW5zdHJ1bWVudGVkT2JqZWN0KE1lbW9yeUluc3RydW1l
bnRhdGlvbiogaW5zdHJ1bWVudGF0aW9uLCBjb25zdCBUJiB0KSB7IGluc3RydW1lbnRhdGlvbi0+
YWRkSW5zdHJ1bWVudGVkT2JqZWN0SW1wbCgmdCwgYnlSZWZlcmVuY2UpOyB9CisgICAgICAgIHN0
YXRpYyB2b2lkIGFkZEluc3RydW1lbnRlZE9iamVjdChNZW1vcnlJbnN0cnVtZW50YXRpb24qIGlu
c3RydW1lbnRhdGlvbiwgY29uc3QgVCYgdCwgT2JqZWN0VHlwZSBvYmplY3RUeXBlKSB7IGluc3Ry
dW1lbnRhdGlvbi0+YWRkSW5zdHJ1bWVudGVkT2JqZWN0SW1wbCgmdCwgb2JqZWN0VHlwZSwgYnlS
ZWZlcmVuY2UpOyB9CiAgICAgICAgIHN0YXRpYyB2b2lkIGFkZE9iamVjdChNZW1vcnlJbnN0cnVt
ZW50YXRpb24qIGluc3RydW1lbnRhdGlvbiwgY29uc3QgVCYgdCwgT2JqZWN0VHlwZSBvYmplY3RU
eXBlKSB7IGluc3RydW1lbnRhdGlvbi0+YWRkT2JqZWN0SW1wbCgmdCwgb2JqZWN0VHlwZSwgYnlS
ZWZlcmVuY2UpOyB9CiAgICAgfTsKIAogICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgogICAgIHN0
cnVjdCBPd25pbmdUcmFpdHM8VCo+IHsgLy8gQ3VzdG9tIGJ5UG9pbnRlciBpbXBsZW1lbnRhdGlv
bi4KLSAgICAgICAgc3RhdGljIHZvaWQgYWRkSW5zdHJ1bWVudGVkT2JqZWN0KE1lbW9yeUluc3Ry
dW1lbnRhdGlvbiogaW5zdHJ1bWVudGF0aW9uLCBjb25zdCBUKiBjb25zdCYgdCkgeyBpbnN0cnVt
ZW50YXRpb24tPmFkZEluc3RydW1lbnRlZE9iamVjdEltcGwodCwgYnlQb2ludGVyKTsgfQorICAg
ICAgICBzdGF0aWMgdm9pZCBhZGRJbnN0cnVtZW50ZWRPYmplY3QoTWVtb3J5SW5zdHJ1bWVudGF0
aW9uKiBpbnN0cnVtZW50YXRpb24sIGNvbnN0IFQqIGNvbnN0JiB0LCBPYmplY3RUeXBlIG9iamVj
dFR5cGUpIHsgaW5zdHJ1bWVudGF0aW9uLT5hZGRJbnN0cnVtZW50ZWRPYmplY3RJbXBsKHQsIG9i
amVjdFR5cGUsIGJ5UG9pbnRlcik7IH0KICAgICAgICAgc3RhdGljIHZvaWQgYWRkT2JqZWN0KE1l
bW9yeUluc3RydW1lbnRhdGlvbiogaW5zdHJ1bWVudGF0aW9uLCBjb25zdCBUKiBjb25zdCYgdCwg
T2JqZWN0VHlwZSBvYmplY3RUeXBlKSB7IGluc3RydW1lbnRhdGlvbi0+YWRkT2JqZWN0SW1wbCh0
LCBvYmplY3RUeXBlLCBieVBvaW50ZXIpOyB9CiAgICAgfTsKIAotICAgIHRlbXBsYXRlIDx0eXBl
bmFtZSBUPiB2b2lkIGFkZEluc3RydW1lbnRlZE9iamVjdEltcGwoY29uc3QgVCogY29uc3QmLCBP
d25pbmdUeXBlKTsKLSAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4gdm9pZCBhZGRJbnN0cnVtZW50
ZWRPYmplY3RJbXBsKGNvbnN0IERhdGFSZWY8VD4qIGNvbnN0JiwgT3duaW5nVHlwZSk7Ci0gICAg
dGVtcGxhdGUgPHR5cGVuYW1lIFQ+IHZvaWQgYWRkSW5zdHJ1bWVudGVkT2JqZWN0SW1wbChjb25z
dCBPd25QdHI8VD4qIGNvbnN0JiwgT3duaW5nVHlwZSk7Ci0gICAgdGVtcGxhdGUgPHR5cGVuYW1l
IFQ+IHZvaWQgYWRkSW5zdHJ1bWVudGVkT2JqZWN0SW1wbChjb25zdCBSZWZQdHI8VD4qIGNvbnN0
JiwgT3duaW5nVHlwZSk7CisgICAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+IHZvaWQgYWRkSW5zdHJ1
bWVudGVkT2JqZWN0SW1wbChjb25zdCBUKiBjb25zdCYsIE9iamVjdFR5cGUsIE93bmluZ1R5cGUp
OworICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBUPiB2b2lkIGFkZEluc3RydW1lbnRlZE9iamVjdElt
cGwoY29uc3QgRGF0YVJlZjxUPiogY29uc3QmLCBPYmplY3RUeXBlLCBPd25pbmdUeXBlKTsKKyAg
ICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4gdm9pZCBhZGRJbnN0cnVtZW50ZWRPYmplY3RJbXBsKGNv
bnN0IE93blB0cjxUPiogY29uc3QmLCBPYmplY3RUeXBlLCBPd25pbmdUeXBlKTsKKyAgICB0ZW1w
bGF0ZSA8dHlwZW5hbWUgVD4gdm9pZCBhZGRJbnN0cnVtZW50ZWRPYmplY3RJbXBsKGNvbnN0IFJl
ZlB0cjxUPiogY29uc3QmLCBPYmplY3RUeXBlLCBPd25pbmdUeXBlKTsKIAogICAgIHRlbXBsYXRl
IDx0eXBlbmFtZSBUPiB2b2lkIGFkZE9iamVjdEltcGwoY29uc3QgVCogY29uc3QmLCBPYmplY3RU
eXBlLCBPd25pbmdUeXBlKTsKICAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4gdm9pZCBhZGRPYmpl
Y3RJbXBsKGNvbnN0IERhdGFSZWY8VD4qIGNvbnN0JiwgT2JqZWN0VHlwZSwgT3duaW5nVHlwZSk7
CkBAIC0xMzQsMTEgKzEzNiwxMSBAQCBwcml2YXRlOgogCiBjbGFzcyBNZW1vcnlPYmplY3RJbmZv
IHsKIHB1YmxpYzoKLSAgICBleHBsaWNpdCBNZW1vcnlPYmplY3RJbmZvKE1lbW9yeUluc3RydW1l
bnRhdGlvbiogbWVtb3J5SW5zdHJ1bWVudGF0aW9uKQorICAgIE1lbW9yeU9iamVjdEluZm8oTWVt
b3J5SW5zdHJ1bWVudGF0aW9uKiBtZW1vcnlJbnN0cnVtZW50YXRpb24sIE1lbW9yeUluc3RydW1l
bnRhdGlvbjo6T2JqZWN0VHlwZSBvYmplY3RUeXBlKQogICAgICAgICA6IG1fbWVtb3J5SW5zdHJ1
bWVudGF0aW9uKG1lbW9yeUluc3RydW1lbnRhdGlvbikKLSAgICAgICAgLCBtX29iamVjdFR5cGUo
TWVtb3J5SW5zdHJ1bWVudGF0aW9uOjpPdGhlcikKKyAgICAgICAgLCBtX29iamVjdFR5cGUob2Jq
ZWN0VHlwZSkKICAgICAgICAgLCBtX29iamVjdFNpemUoMCkKLSAgICAgeyB9CisgICAgeyB9CiAK
ICAgICBNZW1vcnlJbnN0cnVtZW50YXRpb246Ok9iamVjdFR5cGUgb2JqZWN0VHlwZSgpIGNvbnN0
IHsgcmV0dXJuIG1fb2JqZWN0VHlwZTsgfQogICAgIHNpemVfdCBvYmplY3RTaXplKCkgY29uc3Qg
eyByZXR1cm4gbV9vYmplY3RTaXplOyB9CkBAIC0xNTAsMTAgKzE1MiwxMSBAQCBwcml2YXRlOgog
CiAgICAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+IHZvaWQgcmVwb3J0T2JqZWN0SW5mbyhjb25zdCBU
KiwgTWVtb3J5SW5zdHJ1bWVudGF0aW9uOjpPYmplY3RUeXBlIG9iamVjdFR5cGUpCiAgICAgewot
ICAgICAgICBpZiAobV9vYmplY3RUeXBlICE9IE1lbW9yeUluc3RydW1lbnRhdGlvbjo6T3RoZXIp
Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIG1fb2JqZWN0VHlwZSA9IG9iamVjdFR5cGU7
Ci0gICAgICAgIG1fb2JqZWN0U2l6ZSA9IHNpemVvZihUKTsKKyAgICAgICAgaWYgKCFtX29iamVj
dFNpemUpIHsKKyAgICAgICAgICAgIG1fb2JqZWN0U2l6ZSA9IHNpemVvZihUKTsKKyAgICAgICAg
ICAgIGlmIChvYmplY3RUeXBlICE9IE1lbW9yeUluc3RydW1lbnRhdGlvbjo6T3RoZXIpCisgICAg
ICAgICAgICAgICAgbV9vYmplY3RUeXBlID0gb2JqZWN0VHlwZTsKKyAgICAgICAgfQogICAgIH0K
IAogICAgIE1lbW9yeUluc3RydW1lbnRhdGlvbiogbV9tZW1vcnlJbnN0cnVtZW50YXRpb247CkBA
IC0xNzQsNyArMTc3LDcgQEAgcHVibGljOgogCiAgICAgdGVtcGxhdGUgPHR5cGVuYW1lIFA+IHZv
aWQgdmlzaXRCYXNlQ2xhc3MoY29uc3QgUCogcHRyKSB7IHB0ci0+UDo6cmVwb3J0TWVtb3J5VXNh
Z2UobV9tZW1vcnlPYmplY3RJbmZvKTsgfQogCi0gICAgdGVtcGxhdGUgPHR5cGVuYW1lIE0+IHZv
aWQgYWRkSW5zdHJ1bWVudGVkTWVtYmVyKGNvbnN0IE0mIG1lbWJlcikgeyBtX21lbW9yeUluc3Ry
dW1lbnRhdGlvbi0+YWRkSW5zdHJ1bWVudGVkT2JqZWN0KG1lbWJlcik7IH0KKyAgICB0ZW1wbGF0
ZSA8dHlwZW5hbWUgTT4gdm9pZCBhZGRJbnN0cnVtZW50ZWRNZW1iZXIoY29uc3QgTSYgbWVtYmVy
KSB7IG1fbWVtb3J5SW5zdHJ1bWVudGF0aW9uLT5hZGRJbnN0cnVtZW50ZWRPYmplY3QobWVtYmVy
LCBtX29iamVjdFR5cGUpOyB9CiAgICAgdGVtcGxhdGUgPHR5cGVuYW1lIE0+IHZvaWQgYWRkTWVt
YmVyKGNvbnN0IE0mIG1lbWJlcikgeyBtX21lbW9yeUluc3RydW1lbnRhdGlvbi0+YWRkT2JqZWN0
KG1lbWJlciwgbV9vYmplY3RUeXBlKTsgfQogCiAgICAgdGVtcGxhdGUgPHR5cGVuYW1lIEhhc2hN
YXBUeXBlPiB2b2lkIGFkZEhhc2hNYXAoY29uc3QgSGFzaE1hcFR5cGUmIG1hcCkgeyBtX21lbW9y
eUluc3RydW1lbnRhdGlvbi0+YWRkSGFzaE1hcChtYXAsIG1fb2JqZWN0VHlwZSwgdHJ1ZSk7IH0K
QEAgLTE5OCw1MCArMjAxLDYzIEBAIHByaXZhdGU6CiB9OwogCiB0ZW1wbGF0ZSA8dHlwZW5hbWUg
VD4KLXZvaWQgTWVtb3J5SW5zdHJ1bWVudGF0aW9uOjphZGRJbnN0cnVtZW50ZWRPYmplY3RJbXBs
KGNvbnN0IFQqIGNvbnN0JiBvYmplY3QsIE93bmluZ1R5cGUgb3duaW5nVHlwZSkKK3ZvaWQgTWVt
b3J5SW5zdHJ1bWVudGF0aW9uOjphZGRJbnN0cnVtZW50ZWRPYmplY3RJbXBsKGNvbnN0IFQqIGNv
bnN0JiBvYmplY3QsIE9iamVjdFR5cGUgb2JqZWN0VHlwZSwgT3duaW5nVHlwZSBvd25pbmdUeXBl
KQogewotICAgIGlmICghb2JqZWN0IHx8IHZpc2l0ZWQob2JqZWN0KSkKLSAgICAgICAgcmV0dXJu
OwogICAgIGlmIChvd25pbmdUeXBlID09IGJ5UmVmZXJlbmNlKSB7Ci0gICAgICAgIE1lbW9yeU9i
amVjdEluZm8gbWVtb3J5T2JqZWN0SW5mbyh0aGlzKTsKKyAgICAgICAgTWVtb3J5T2JqZWN0SW5m
byBtZW1vcnlPYmplY3RJbmZvKHRoaXMsIG9iamVjdFR5cGUpOwogICAgICAgICBvYmplY3QtPnJl
cG9ydE1lbW9yeVVzYWdlKCZtZW1vcnlPYmplY3RJbmZvKTsKLSAgICB9IGVsc2UKLSAgICAgICAg
ZGVmZXJJbnN0cnVtZW50ZWRQb2ludGVyKGFkb3B0UHRyKG5ldyBJbnN0cnVtZW50ZWRQb2ludGVy
PFQ+KG9iamVjdCkpKTsKKyAgICB9IGVsc2UgeworICAgICAgICBpZiAoIW9iamVjdCB8fCB2aXNp
dGVkKG9iamVjdCkpCisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIGRlZmVySW5zdHJ1bWVu
dGVkUG9pbnRlcihhZG9wdFB0cihuZXcgSW5zdHJ1bWVudGVkUG9pbnRlcjxUPihvYmplY3QsIG9i
amVjdFR5cGUpKSk7CisgICAgfQogfQogCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLXZvaWQgTWVt
b3J5SW5zdHJ1bWVudGF0aW9uOjphZGRJbnN0cnVtZW50ZWRPYmplY3RJbXBsKGNvbnN0IERhdGFS
ZWY8VD4qIGNvbnN0JiBvYmplY3QsIE93bmluZ1R5cGUpCit2b2lkIE1lbW9yeUluc3RydW1lbnRh
dGlvbjo6YWRkSW5zdHJ1bWVudGVkT2JqZWN0SW1wbChjb25zdCBEYXRhUmVmPFQ+KiBjb25zdCYg
b2JqZWN0LCBPYmplY3RUeXBlIG9iamVjdFR5cGUsIE93bmluZ1R5cGUgb3duaW5nVHlwZSkKIHsK
LSAgICBhZGRJbnN0cnVtZW50ZWRPYmplY3RJbXBsKG9iamVjdC0+Z2V0KCksIGJ5UG9pbnRlcik7
CisgICAgaWYgKG93bmluZ1R5cGUgPT0gYnlQb2ludGVyKQorICAgICAgICBjb3VudE9iamVjdFNp
emUob2JqZWN0VHlwZSwgc2l6ZW9mKERhdGFSZWY8VD4pKTsKKyAgICBhZGRJbnN0cnVtZW50ZWRP
YmplY3RJbXBsKG9iamVjdC0+Z2V0KCksIG9iamVjdFR5cGUsIGJ5UG9pbnRlcik7CiB9CiAKIHRl
bXBsYXRlIDx0eXBlbmFtZSBUPgotdm9pZCBNZW1vcnlJbnN0cnVtZW50YXRpb246OmFkZEluc3Ry
dW1lbnRlZE9iamVjdEltcGwoY29uc3QgT3duUHRyPFQ+KiBjb25zdCYgb2JqZWN0LCBPd25pbmdU
eXBlKQordm9pZCBNZW1vcnlJbnN0cnVtZW50YXRpb246OmFkZEluc3RydW1lbnRlZE9iamVjdElt
cGwoY29uc3QgT3duUHRyPFQ+KiBjb25zdCYgb2JqZWN0LCBPYmplY3RUeXBlIG9iamVjdFR5cGUs
IE93bmluZ1R5cGUgb3duaW5nVHlwZSkKIHsKLSAgICBhZGRJbnN0cnVtZW50ZWRPYmplY3RJbXBs
KG9iamVjdC0+Z2V0KCksIGJ5UG9pbnRlcik7CisgICAgaWYgKG93bmluZ1R5cGUgPT0gYnlQb2lu
dGVyKQorICAgICAgICBjb3VudE9iamVjdFNpemUob2JqZWN0VHlwZSwgc2l6ZW9mKE93blB0cjxU
PikpOworICAgIGFkZEluc3RydW1lbnRlZE9iamVjdEltcGwob2JqZWN0LT5nZXQoKSwgb2JqZWN0
VHlwZSwgYnlQb2ludGVyKTsKIH0KIAogdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci12b2lkIE1lbW9y
eUluc3RydW1lbnRhdGlvbjo6YWRkSW5zdHJ1bWVudGVkT2JqZWN0SW1wbChjb25zdCBSZWZQdHI8
VD4qIGNvbnN0JiBvYmplY3QsIE93bmluZ1R5cGUpCit2b2lkIE1lbW9yeUluc3RydW1lbnRhdGlv
bjo6YWRkSW5zdHJ1bWVudGVkT2JqZWN0SW1wbChjb25zdCBSZWZQdHI8VD4qIGNvbnN0JiBvYmpl
Y3QsIE9iamVjdFR5cGUgb2JqZWN0VHlwZSwgT3duaW5nVHlwZSBvd25pbmdUeXBlKQogewotICAg
IGFkZEluc3RydW1lbnRlZE9iamVjdEltcGwob2JqZWN0LT5nZXQoKSwgYnlQb2ludGVyKTsKKyAg
ICBpZiAob3duaW5nVHlwZSA9PSBieVBvaW50ZXIpCisgICAgICAgIGNvdW50T2JqZWN0U2l6ZShv
YmplY3RUeXBlLCBzaXplb2YoUmVmUHRyPFQ+KSk7CisgICAgYWRkSW5zdHJ1bWVudGVkT2JqZWN0
SW1wbChvYmplY3QtPmdldCgpLCBvYmplY3RUeXBlLCBieVBvaW50ZXIpOwogfQogCiB0ZW1wbGF0
ZSA8dHlwZW5hbWUgVD4KLXZvaWQgTWVtb3J5SW5zdHJ1bWVudGF0aW9uOjphZGRPYmplY3RJbXBs
KGNvbnN0IERhdGFSZWY8VD4qIGNvbnN0JiBvYmplY3QsIE9iamVjdFR5cGUgb2JqZWN0VHlwZSwg
T3duaW5nVHlwZSkKK3ZvaWQgTWVtb3J5SW5zdHJ1bWVudGF0aW9uOjphZGRPYmplY3RJbXBsKGNv
bnN0IERhdGFSZWY8VD4qIGNvbnN0JiBvYmplY3QsIE9iamVjdFR5cGUgb2JqZWN0VHlwZSwgT3du
aW5nVHlwZSBvd25pbmdUeXBlKQogeworICAgIGlmIChvd25pbmdUeXBlID09IGJ5UG9pbnRlcikK
KyAgICAgICAgY291bnRPYmplY3RTaXplKG9iamVjdFR5cGUsIHNpemVvZihEYXRhUmVmPFQ+KSk7
CiAgICAgYWRkT2JqZWN0SW1wbChvYmplY3QtPmdldCgpLCBvYmplY3RUeXBlLCBieVBvaW50ZXIp
OwogfQogCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLXZvaWQgTWVtb3J5SW5zdHJ1bWVudGF0aW9u
OjphZGRPYmplY3RJbXBsKGNvbnN0IE93blB0cjxUPiogY29uc3QmIG9iamVjdCwgT2JqZWN0VHlw
ZSBvYmplY3RUeXBlLCBPd25pbmdUeXBlKQordm9pZCBNZW1vcnlJbnN0cnVtZW50YXRpb246OmFk
ZE9iamVjdEltcGwoY29uc3QgT3duUHRyPFQ+KiBjb25zdCYgb2JqZWN0LCBPYmplY3RUeXBlIG9i
amVjdFR5cGUsIE93bmluZ1R5cGUgb3duaW5nVHlwZSkKIHsKKyAgICBpZiAob3duaW5nVHlwZSA9
PSBieVBvaW50ZXIpCisgICAgICAgIGNvdW50T2JqZWN0U2l6ZShvYmplY3RUeXBlLCBzaXplb2Yo
UmVmUHRyPFQ+KSk7CiAgICAgYWRkT2JqZWN0SW1wbChvYmplY3QtPmdldCgpLCBvYmplY3RUeXBl
LCBieVBvaW50ZXIpOwogfQogCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLXZvaWQgTWVtb3J5SW5z
dHJ1bWVudGF0aW9uOjphZGRPYmplY3RJbXBsKGNvbnN0IFJlZlB0cjxUPiogY29uc3QmIG9iamVj
dCwgT2JqZWN0VHlwZSBvYmplY3RUeXBlLCBPd25pbmdUeXBlKQordm9pZCBNZW1vcnlJbnN0cnVt
ZW50YXRpb246OmFkZE9iamVjdEltcGwoY29uc3QgUmVmUHRyPFQ+KiBjb25zdCYgb2JqZWN0LCBP
YmplY3RUeXBlIG9iamVjdFR5cGUsIE93bmluZ1R5cGUgb3duaW5nVHlwZSkKIHsKKyAgICBpZiAo
b3duaW5nVHlwZSA9PSBieVBvaW50ZXIpCisgICAgICAgIGNvdW50T2JqZWN0U2l6ZShvYmplY3RU
eXBlLCBzaXplb2YoUmVmUHRyPFQ+KSk7CiAgICAgYWRkT2JqZWN0SW1wbChvYmplY3QtPmdldCgp
LCBvYmplY3RUeXBlLCBieVBvaW50ZXIpOwogfQogCkBAIC0yODMsNyArMjk5LDcgQEAgdm9pZCBN
ZW1vcnlJbnN0cnVtZW50YXRpb246OmFkZEluc3RydW1lbnRlZENvbGxlY3Rpb24oY29uc3QgQ29s
bGVjdGlvblR5cGUmIGNvbGwKICAgICBjb3VudE9iamVjdFNpemUob2JqZWN0VHlwZSwgY2FsY3Vs
YXRlQ29udGFpbmVyU2l6ZShjb2xsZWN0aW9uLCBjb250ZW50T25seSkpOwogICAgIHR5cGVuYW1l
IENvbGxlY3Rpb25UeXBlOjpjb25zdF9pdGVyYXRvciBlbmQgPSBjb2xsZWN0aW9uLmVuZCgpOwog
ICAgIGZvciAodHlwZW5hbWUgQ29sbGVjdGlvblR5cGU6OmNvbnN0X2l0ZXJhdG9yIGkgPSBjb2xs
ZWN0aW9uLmJlZ2luKCk7IGkgIT0gZW5kOyArK2kpCi0gICAgICAgIGFkZEluc3RydW1lbnRlZE9i
amVjdCgqaSk7CisgICAgICAgIGFkZEluc3RydW1lbnRlZE9iamVjdCgqaSwgb2JqZWN0VHlwZSk7
CiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIExpc3RIYXNoU2V0VHlwZT4KQEAgLTMxMiw3ICszMjgs
NyBAQCBzaXplX3QgTWVtb3J5SW5zdHJ1bWVudGF0aW9uOjpjYWxjdWxhdGVDb250YWluZXJTaXpl
KGNvbnN0IENvbnRhaW5lciYgY29udGFpbmVyLAogdGVtcGxhdGU8dHlwZW5hbWUgVD4KIHZvaWQg
TWVtb3J5SW5zdHJ1bWVudGF0aW9uOjpJbnN0cnVtZW50ZWRQb2ludGVyPFQ+Ojpwcm9jZXNzKE1l
bW9yeUluc3RydW1lbnRhdGlvbiogbWVtb3J5SW5zdHJ1bWVudGF0aW9uKQogewotICAgIE1lbW9y
eU9iamVjdEluZm8gbWVtb3J5T2JqZWN0SW5mbyhtZW1vcnlJbnN0cnVtZW50YXRpb24pOworICAg
IE1lbW9yeU9iamVjdEluZm8gbWVtb3J5T2JqZWN0SW5mbyhtZW1vcnlJbnN0cnVtZW50YXRpb24s
IG1fb2JqZWN0VHlwZSk7CiAgICAgbV9wb2ludGVyLT5yZXBvcnRNZW1vcnlVc2FnZSgmbWVtb3J5
T2JqZWN0SW5mbyk7CiAgICAgbWVtb3J5SW5zdHJ1bWVudGF0aW9uLT5jb3VudE9iamVjdFNpemUo
bWVtb3J5T2JqZWN0SW5mby5vYmplY3RUeXBlKCksIG1lbW9yeU9iamVjdEluZm8ub2JqZWN0U2l6
ZSgpKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvTWVtb3J5
SW5zdHJ1bWVudGF0aW9uVGVzdC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL01l
bW9yeUluc3RydW1lbnRhdGlvblRlc3QuY3BwCmluZGV4IDZiOTdmZWJlOWM4Zjc2NTZiMDEzODBh
MGY0ZjI5MWI5ZjVjZDhkNjcuLmY0MjlmOTJmOTczNzU0ODdhMzdlNzZlYWRiZTM1YzAwZDMzNWFi
MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvTWVtb3J5SW5zdHJ1
bWVudGF0aW9uVGVzdC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9NZW1v
cnlJbnN0cnVtZW50YXRpb25UZXN0LmNwcApAQCAtNjksNyArNjksNyBAQCBURVNUKE1lbW9yeUlu
c3RydW1lbnRhdGlvblRlc3QsIHNpemVPZikKICAgICBJbnN0cnVtZW50ZWQgaW5zdHJ1bWVudGVk
OwogICAgIGltcGwuYWRkUm9vdE9iamVjdChpbnN0cnVtZW50ZWQpOwogICAgIEVYUEVDVF9FUShz
aXplb2YoTm90SW5zdHJ1bWVudGVkKSwgaW1wbC5yZXBvcnRlZFNpemVGb3JBbGxUeXBlcygpKTsK
LSAgICBFWFBFQ1RfRVEoMiwgdmlzaXRlZE9iamVjdHMuc2l6ZSgpKTsKKyAgICBFWFBFQ1RfRVEo
MSwgdmlzaXRlZE9iamVjdHMuc2l6ZSgpKTsKIH0KIAogVEVTVChNZW1vcnlJbnN0cnVtZW50YXRp
b25UZXN0LCBudWxsQ2hlY2spCkBAIC05OCw3ICs5OCw3IEBAIFRFU1QoTWVtb3J5SW5zdHJ1bWVu
dGF0aW9uVGVzdCwgcHRyVnNSZWYpCiAgICAgICAgIEluc3RydW1lbnRlZCBpbnN0cnVtZW50ZWQ7
CiAgICAgICAgIGltcGwuYWRkUm9vdE9iamVjdChpbnN0cnVtZW50ZWQpOwogICAgICAgICBFWFBF
Q1RfRVEoc2l6ZW9mKE5vdEluc3RydW1lbnRlZCksIGltcGwucmVwb3J0ZWRTaXplRm9yQWxsVHlw
ZXMoKSk7Ci0gICAgICAgIEVYUEVDVF9FUSgyLCB2aXNpdGVkT2JqZWN0cy5zaXplKCkpOworICAg
ICAgICBFWFBFQ1RfRVEoMSwgdmlzaXRlZE9iamVjdHMuc2l6ZSgpKTsKICAgICB9CiB9CiAKQEAg
LTE2Nyw3ICsxNjcsNjIgQEAgVEVTVChNZW1vcnlJbnN0cnVtZW50YXRpb25UZXN0LCBvd25QdHJO
b3RJbnN0cnVtZW50ZWQpCiAgICAgSW5zdHJ1bWVudGVkV2l0aE93blB0ciBpbnN0cnVtZW50ZWRX
aXRoT3duUHRyOwogICAgIGltcGwuYWRkUm9vdE9iamVjdChpbnN0cnVtZW50ZWRXaXRoT3duUHRy
KTsKICAgICBFWFBFQ1RfRVEoMiAqIHNpemVvZihOb3RJbnN0cnVtZW50ZWQpLCBpbXBsLnJlcG9y
dGVkU2l6ZUZvckFsbFR5cGVzKCkpOwotICAgIEVYUEVDVF9FUSgzLCB2aXNpdGVkT2JqZWN0cy5z
aXplKCkpOworICAgIEVYUEVDVF9FUSgyLCB2aXNpdGVkT2JqZWN0cy5zaXplKCkpOworfQorCitj
bGFzcyBJbnN0cnVtZW50ZWRPdGhlciB7CitwdWJsaWM6CisgICAgSW5zdHJ1bWVudGVkT3RoZXIo
KSA6IG1fZGF0YSgwKSB7IH0KKworICAgIHZvaWQgcmVwb3J0TWVtb3J5VXNhZ2UoTWVtb3J5T2Jq
ZWN0SW5mbyogbWVtb3J5T2JqZWN0SW5mbykgY29uc3QKKyAgICB7CisgICAgICAgIE1lbW9yeUNs
YXNzSW5mbzxJbnN0cnVtZW50ZWRPdGhlcj4gaW5mbyhtZW1vcnlPYmplY3RJbmZvLCB0aGlzLCBN
ZW1vcnlJbnN0cnVtZW50YXRpb246Ok90aGVyKTsKKyAgICB9CisgICAgaW50IG1fZGF0YTsKK307
CisKK2NsYXNzIEluc3RydW1lbnRlZERPTSB7CitwdWJsaWM6CisgICAgSW5zdHJ1bWVudGVkRE9N
KCkgOiBtX2luc3RydW1lbnRlZE90aGVyKGFkb3B0UHRyKG5ldyBJbnN0cnVtZW50ZWRPdGhlcikp
IHsgfQorCisgICAgdm9pZCByZXBvcnRNZW1vcnlVc2FnZShNZW1vcnlPYmplY3RJbmZvKiBtZW1v
cnlPYmplY3RJbmZvKSBjb25zdAorICAgIHsKKyAgICAgICAgTWVtb3J5Q2xhc3NJbmZvPEluc3Ry
dW1lbnRlZERPTT4gaW5mbyhtZW1vcnlPYmplY3RJbmZvLCB0aGlzLCBNZW1vcnlJbnN0cnVtZW50
YXRpb246OkRPTSk7CisgICAgICAgIGluZm8uYWRkSW5zdHJ1bWVudGVkTWVtYmVyKG1faW5zdHJ1
bWVudGVkT3RoZXIpOworICAgIH0KKyAgICBPd25QdHI8SW5zdHJ1bWVudGVkT3RoZXI+IG1faW5z
dHJ1bWVudGVkT3RoZXI7Cit9OworCitURVNUKE1lbW9yeUluc3RydW1lbnRhdGlvblRlc3QsIG93
bmVyVHlwZVByb3BhZ2F0aW9uKQoreworICAgIFZpc2l0ZWRPYmplY3RzIHZpc2l0ZWRPYmplY3Rz
OworICAgIE1lbW9yeUluc3RydW1lbnRhdGlvbkltcGwgaW1wbCh2aXNpdGVkT2JqZWN0cyk7Cisg
ICAgT3duUHRyPEluc3RydW1lbnRlZERPTT4gaW5zdHJ1bWVudGVkRE9NKGFkb3B0UHRyKG5ldyBJ
bnN0cnVtZW50ZWRET00pKTsKKyAgICBpbXBsLmFkZFJvb3RPYmplY3QoaW5zdHJ1bWVudGVkRE9N
KTsKKyAgICBFWFBFQ1RfRVEoc2l6ZW9mKEluc3RydW1lbnRlZERPTSkgKyBzaXplb2YoSW5zdHJ1
bWVudGVkT3RoZXIpLCBpbXBsLnJlcG9ydGVkU2l6ZUZvckFsbFR5cGVzKCkpOworICAgIEVYUEVD
VF9FUShzaXplb2YoSW5zdHJ1bWVudGVkRE9NKSArIHNpemVvZihJbnN0cnVtZW50ZWRPdGhlciks
IGltcGwudG90YWxTaXplKE1lbW9yeUluc3RydW1lbnRhdGlvbjo6RE9NKSk7CisgICAgRVhQRUNU
X0VRKDIsIHZpc2l0ZWRPYmplY3RzLnNpemUoKSk7Cit9CisKK2NsYXNzIE5vblZpcnR1YWxJbnN0
cnVtZW50ZWQgeworcHVibGljOgorICAgIHZvaWQgcmVwb3J0TWVtb3J5VXNhZ2UoTWVtb3J5T2Jq
ZWN0SW5mbyogbWVtb3J5T2JqZWN0SW5mbykgY29uc3QKKyAgICB7CisgICAgICAgIE1lbW9yeUNs
YXNzSW5mbzxOb25WaXJ0dWFsSW5zdHJ1bWVudGVkPiBpbmZvKG1lbW9yeU9iamVjdEluZm8sIHRo
aXMsIE1lbW9yeUluc3RydW1lbnRhdGlvbjo6RE9NKTsKKyAgICAgICAgaW5mby5hZGRJbnN0cnVt
ZW50ZWRNZW1iZXIobV9pbnN0cnVtZW50ZWQpOworICAgIH0KKworICAgIEluc3RydW1lbnRlZCBt
X2luc3RydW1lbnRlZDsKK307CisKK1RFU1QoTWVtb3J5SW5zdHJ1bWVudGF0aW9uVGVzdCwgdmlz
aXRGaXJzdE1lbWJlckluTm9uVmlydHVhbENsYXNzKQoreworICAgIFZpc2l0ZWRPYmplY3RzIHZp
c2l0ZWRPYmplY3RzOworICAgIE1lbW9yeUluc3RydW1lbnRhdGlvbkltcGwgaW1wbCh2aXNpdGVk
T2JqZWN0cyk7CisgICAgTm9uVmlydHVhbEluc3RydW1lbnRlZCBub25WaXJ0dWFsSW5zdHJ1bWVu
dGVkOworICAgIGltcGwuYWRkUm9vdE9iamVjdCgmbm9uVmlydHVhbEluc3RydW1lbnRlZCk7Cisg
ICAgRVhQRUNUX0VRKHNpemVvZihOb25WaXJ0dWFsSW5zdHJ1bWVudGVkKSArIHNpemVvZihOb3RJ
bnN0cnVtZW50ZWQpLCBpbXBsLnJlcG9ydGVkU2l6ZUZvckFsbFR5cGVzKCkpOworICAgIEVYUEVD
VF9FUSgyLCB2aXNpdGVkT2JqZWN0cy5zaXplKCkpOwogfQogCiB9IC8vIG5hbWVzcGFjZQo=
</data>
<flag name="review"
          id="165713"
          type_id="1"
          status="+"
          setter="yurys"
    />
          </attachment>
      

    </bug>

</bugzilla>