<?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>179699</bug_id>
          
          <creation_ts>2017-11-14 15:42:52 -0800</creation_ts>
          <short_desc>Fix a bit-rotted Interpreter::dumpRegisters() and make it more robust.</short_desc>
          <delta_ts>2017-11-14 21:22:18 -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>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mark Lam">mark.lam</reporter>
          <assigned_to name="Mark Lam">mark.lam</assigned_to>
          <cc>buildbot</cc>
    
    <cc>keith_miller</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1371612</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2017-11-14 15:42:52 -0800</bug_when>
    <thetext>&lt;rdar://problem/35462346&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1371626</commentid>
    <comment_count>1</comment_count>
      <attachid>326935</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2017-11-14 16:10:30 -0800</bug_when>
    <thetext>Created attachment 326935
proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1371627</commentid>
    <comment_count>2</comment_count>
      <attachid>326936</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2017-11-14 16:11:32 -0800</bug_when>
    <thetext>Created attachment 326936
proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1371637</commentid>
    <comment_count>3</comment_count>
      <attachid>326936</attachid>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2017-11-14 16:23:42 -0800</bug_when>
    <thetext>Comment on attachment 326936
proposed patch.

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

r=me after reversing the order of CallerFrame and ReturnPC.

&gt; Source/JavaScriptCore/interpreter/Interpreter.cpp:-441
&gt; +    dataLogF(&quot;[CallerFrame]              | %10p | %p \n&quot;, it, callFrame-&gt;callerFrame());
&gt;      --it;
&gt;  #if ENABLE(JIT)
&gt;      AbstractPC pc = callFrame-&gt;abstractReturnPC(callFrame-&gt;vm());
&gt;      if (pc.hasJITReturnAddress())
&gt;          dataLogF(&quot;[ReturnJITPC]              | %10p | %p \n&quot;, it, pc.jitReturnAddress().value());
&gt; -#endif

I think you need to flip the order of CallerFrame and ReturnJITPC as I&apos;m pretty sure that the CallerFrame (aka previous frame pointer) is pushed on after the Return PC (or at a lower address for ARM64 as they are pushed simultaneously).

Also, change ReturnJITPC to ReturnPC as it may not be a JIT&apos;ed PC.

&gt; Source/JavaScriptCore/interpreter/Interpreter.cpp:465
&gt; +                ? &quot;INVALID&quot;

Nit - I&apos;d make this &quot;Unknown&quot; or leave it blank.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1371648</commentid>
    <comment_count>4</comment_count>
      <attachid>326942</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2017-11-14 16:39:16 -0800</bug_when>
    <thetext>Created attachment 326942
patch for landing.

Thanks for the review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1371650</commentid>
    <comment_count>5</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2017-11-14 16:40:45 -0800</bug_when>
    <thetext>Landed in r224862: &lt;http://trac.webkit.org/r224862&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1371725</commentid>
    <comment_count>6</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2017-11-14 21:22:18 -0800</bug_when>
    <thetext>Landed a CLoop build fix (after r224862) in r224868: &lt;http://trac.webkit.org/r224868&gt;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>326935</attachid>
            <date>2017-11-14 16:10:30 -0800</date>
            <delta_ts>2017-11-14 16:11:32 -0800</delta_ts>
            <desc>proposed patch.</desc>
            <filename>bug-179699.patch</filename>
            <type>text/plain</type>
            <size>5439</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjI0ODU1KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBA
CisyMDE3LTExLTE0ICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KKworICAgICAgICBG
aXggYSBiaXQtcm90dGVkIEludGVycHJldGVyOjpkdW1wUmVnaXN0ZXJzKCkgYW5kIG1ha2UgaXQg
bW9yZSByb2J1c3QuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNzk2OTkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM1NDYyMzQ2PgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaW50ZXJwcmV0ZXIvSW50
ZXJwcmV0ZXIuY3BwOgorICAgICAgICAoSlNDOjpJbnRlcnByZXRlcjo6ZHVtcFJlZ2lzdGVycyk6
CisKIDIwMTctMTEtMTQgIEd1aWxsYXVtZSBFbW9udCAgPGd1aWplbW9udEBpZ2FsaWEuY29tPgog
CiAgICAgICAgIFJFR1JFU1NJT04ocjIyNDYyMykgW01JUFNdIGJyYW5jaFRydW5jYXRlRG91Ymxl
VG9JbnQzMigpIGRvZXNuJ3Qgc2V0IHJldHVybiByZWdpc3RlciB3aGVuIGJyYW5jaGluZwpJbmRl
eDogU291cmNlL0phdmFTY3JpcHRDb3JlL2ludGVycHJldGVyL0ludGVycHJldGVyLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaW50ZXJwcmV0ZXIvSW50ZXJwcmV0ZXIu
Y3BwCShyZXZpc2lvbiAyMjQ4MzYpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaW50ZXJwcmV0
ZXIvSW50ZXJwcmV0ZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03NCw2ICs3NCw3IEBACiAjaW5j
bHVkZSAiU3ltYm9sLmgiCiAjaW5jbHVkZSAiVk1FbnRyeVNjb3BlLmgiCiAjaW5jbHVkZSAiVk1J
bmxpbmVzLmgiCisjaW5jbHVkZSAiVk1JbnNwZWN0b3IuaCIKICNpbmNsdWRlICJWaXJ0dWFsUmVn
aXN0ZXIuaCIKIAogI2luY2x1ZGUgPGxpbWl0cy5oPgpAQCAtMzk1LDcgKzM5Niw3IEBAIHB1Ymxp
YzoKICAgICAgICAgdW5zaWduZWQgdW51c2VkQ29sdW1uID0gMDsKICAgICAgICAgdmlzaXRvci0+
Y29tcHV0ZUxpbmVBbmRDb2x1bW4obGluZSwgdW51c2VkQ29sdW1uKTsKICAgICAgICAgZGF0YUxv
Z0YoIltSZXR1cm5WUENdICAgICAgICAgICAgICAgIHwgJTEwcCB8ICVkIChsaW5lICVkKVxuIiwg
bV9pdCwgdmlzaXRvci0+Ynl0ZWNvZGVPZmZzZXQoKSwgbGluZSk7Ci0gICAgICAgIC0tbV9pdDsK
Ky8vICAgICAgICAtLW1faXQ7CiAgICAgICAgIHJldHVybiBTdGFja1Zpc2l0b3I6OkRvbmU7CiAg
ICAgfQogCkBAIC00MDYsMTIgKzQwNywxOCBAQCBwcml2YXRlOgogCiB2b2lkIEludGVycHJldGVy
OjpkdW1wUmVnaXN0ZXJzKENhbGxGcmFtZSogY2FsbEZyYW1lKQogeworICAgIENvZGVCbG9jayog
Y29kZUJsb2NrID0gY2FsbEZyYW1lLT5jb2RlQmxvY2soKTsKKyAgICBpZiAoIWNvZGVCbG9jaykg
eworICAgICAgICBkYXRhTG9nKCJEdW1waW5nIGhvc3QgZnJhbWUgcmVnaXN0ZXJzIG5vdCBzdXBw
b3J0ZWQuXG4iKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBWTSYgdm0gPSAqY29kZUJs
b2NrLT52bSgpOworCiAgICAgZGF0YUxvZ0YoIlJlZ2lzdGVyIGZyYW1lOiBcblxuIik7CiAgICAg
ZGF0YUxvZ0YoIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iKTsKICAgICBkYXRhTG9nRigiICAgICAg
ICAgICAgdXNlICAgICAgICAgICAgfCAgIGFkZHJlc3MgIHwgICAgICAgICAgICAgICAgdmFsdWUg
ICAgICAgICAgICAgICBcbiIpOwogICAgIGRhdGFMb2dGKCItLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxu
Iik7CiAKLSAgICBDb2RlQmxvY2sqIGNvZGVCbG9jayA9IGNhbGxGcmFtZS0+Y29kZUJsb2NrKCk7
CiAgICAgY29uc3QgUmVnaXN0ZXIqIGl0OwogICAgIGNvbnN0IFJlZ2lzdGVyKiBlbmQ7CiAKQEAg
LTQyNywzMyArNDM0LDM4IEBAIHZvaWQgSW50ZXJwcmV0ZXI6OmR1bXBSZWdpc3RlcnMoQ2FsbEZy
YW0KICAgICAKICAgICBkYXRhTG9nRigiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIpOwogICAgIGRh
dGFMb2dGKCJbQXJndW1lbnRDb3VudF0gICAgICAgICAgICB8ICUxMHAgfCAlbHUgXG4iLCBpdCwg
KHVuc2lnbmVkIGxvbmcpIGNhbGxGcmFtZS0+YXJndW1lbnRDb3VudCgpKTsKLSAgICAtLWl0Owot
ICAgIGRhdGFMb2dGKCJbQ2FsbGVyRnJhbWVdICAgICAgICAgICAgICB8ICUxMHAgfCAlcCBcbiIs
IGl0LCBjYWxsRnJhbWUtPmNhbGxlckZyYW1lKCkpOworICAgIER1bXBSZXR1cm5WaXJ0dWFsUENG
dW5jdG9yIGZ1bmN0b3IoaXQpOworICAgIGNhbGxGcmFtZS0+aXRlcmF0ZShmdW5jdG9yKTsKICAg
ICAtLWl0OwogICAgIGRhdGFMb2dGKCJbQ2FsbGVlXSAgICAgICAgICAgICAgICAgICB8ICUxMHAg
fCAlcCBcbiIsIGl0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCkpOwogICAgIC0taXQ7Ci0gICAgLy8g
RklYTUU6IFJlbW92ZSB0aGUgbmV4dCBkZWNyZW1lbnQgd2hlbiB0aGUgU2NvcGVDaGFpbiBzbG90
IGlzIHJlbW92ZWQgZnJvbSB0aGUgY2FsbCBoZWFkZXIKKyAgICBkYXRhTG9nRigiW0NvZGVCbG9j
a10gICAgICAgICAgICAgICAgfCAlMTBwIHwgJXAgXG4iLCBpdCwgY2FsbEZyYW1lLT5jb2RlQmxv
Y2soKSk7CisgICAgLS1pdDsKKyAgICBkYXRhTG9nRigiW0NhbGxlckZyYW1lXSAgICAgICAgICAg
ICAgfCAlMTBwIHwgJXAgXG4iLCBpdCwgY2FsbEZyYW1lLT5jYWxsZXJGcmFtZSgpKTsKICAgICAt
LWl0OwogI2lmIEVOQUJMRShKSVQpCiAgICAgQWJzdHJhY3RQQyBwYyA9IGNhbGxGcmFtZS0+YWJz
dHJhY3RSZXR1cm5QQyhjYWxsRnJhbWUtPnZtKCkpOwogICAgIGlmIChwYy5oYXNKSVRSZXR1cm5B
ZGRyZXNzKCkpCiAgICAgICAgIGRhdGFMb2dGKCJbUmV0dXJuSklUUENdICAgICAgICAgICAgICB8
ICUxMHAgfCAlcCBcbiIsIGl0LCBwYy5qaXRSZXR1cm5BZGRyZXNzKCkudmFsdWUoKSk7Ci0jZW5k
aWYKLQotICAgIER1bXBSZXR1cm5WaXJ0dWFsUENGdW5jdG9yIGZ1bmN0b3IoaXQpOwotICAgIGNh
bGxGcmFtZS0+aXRlcmF0ZShmdW5jdG9yKTsKLQotICAgIGRhdGFMb2dGKCJbQ29kZUJsb2NrXSAg
ICAgICAgICAgICAgICB8ICUxMHAgfCAlcCBcbiIsIGl0LCBjYWxsRnJhbWUtPmNvZGVCbG9jaygp
KTsKICAgICAtLWl0OworI2VuZGlmCiAgICAgZGF0YUxvZ0YoIi0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
XG4iKTsKIAorICAgIHNpemVfdCBudW1iZXJPZkNhbGxlZVNhdmVTbG90cyA9IGNvZGVCbG9jay0+
Y2FsbGVlU2F2ZVNwYWNlQXNWaXJ0dWFsUmVnaXN0ZXJzKCk7CisgICAgY29uc3QgUmVnaXN0ZXIq
IGVuZE9mQ2FsbGVlU2F2ZXMgPSBpdCAtIG51bWJlck9mQ2FsbGVlU2F2ZVNsb3RzOworCiAgICAg
ZW5kID0gaXQgLSBjb2RlQmxvY2stPm1fbnVtVmFyczsKICAgICBpZiAoaXQgIT0gZW5kKSB7CiAg
ICAgICAgIGRvIHsKICAgICAgICAgICAgIEpTVmFsdWUgdiA9IGl0LT5qc1ZhbHVlKCk7CiAgICAg
ICAgICAgICBpbnQgcmVnaXN0ZXJOdW1iZXIgPSBpdCAtIGNhbGxGcmFtZS0+cmVnaXN0ZXJzKCk7
Ci0gICAgICAgICAgICBTdHJpbmcgbmFtZSA9IGNvZGVCbG9jay0+bmFtZUZvclJlZ2lzdGVyKFZp
cnR1YWxSZWdpc3RlcihyZWdpc3Rlck51bWJlcikpOwotICAgICAgICAgICAgZGF0YUxvZ0YoIlty
JSAzZCAlMTRzXSAgICAgIHwgJTEwcCB8ICUtMTZzIDB4JWxsZCBcbiIsIHJlZ2lzdGVyTnVtYmVy
LCBuYW1lLmFzY2lpKCkuZGF0YSgpLCBpdCwgdG9DU3RyaW5nKHYpLmRhdGEoKSwgKGxvbmcgbG9u
ZylKU1ZhbHVlOjplbmNvZGUodikpOworICAgICAgICAgICAgU3RyaW5nIG5hbWUgPSAoaXQgPiBl
bmRPZkNhbGxlZVNhdmVzKQorICAgICAgICAgICAgICAgID8gIkNhbGxlZVNhdmVSZWciCisgICAg
ICAgICAgICAgICAgOiBjb2RlQmxvY2stPm5hbWVGb3JSZWdpc3RlcihWaXJ0dWFsUmVnaXN0ZXIo
cmVnaXN0ZXJOdW1iZXIpKTsKKyAgICAgICAgICAgIENTdHJpbmcgdmFsdWVTdHJpbmcgPSAoaXQg
PiBlbmRPZkNhbGxlZVNhdmVzKQorICAgICAgICAgICAgICAgID8gIklOVkFMSUQiCisgICAgICAg
ICAgICAgICAgOiB0b0NTdHJpbmcodik7CisgICAgICAgICAgICBkYXRhTG9nRigiW3IlIDNkICUx
NHNdICAgICAgfCAlMTBwIHwgJS0xNnMgMHglbGxkIFxuIiwgcmVnaXN0ZXJOdW1iZXIsIG5hbWUu
YXNjaWkoKS5kYXRhKCksIGl0LCB2YWx1ZVN0cmluZy5kYXRhKCksIChsb25nIGxvbmcpSlNWYWx1
ZTo6ZW5jb2RlKHYpKTsKICAgICAgICAgICAgIC0taXQ7CiAgICAgICAgIH0gd2hpbGUgKGl0ICE9
IGVuZCk7CiAgICAgfQpAQCAtNDY0LDcgKzQ3NiwxMSBAQCB2b2lkIEludGVycHJldGVyOjpkdW1w
UmVnaXN0ZXJzKENhbGxGcmFtCiAgICAgICAgIGRvIHsKICAgICAgICAgICAgIEpTVmFsdWUgdiA9
ICgqaXQpLmpzVmFsdWUoKTsKICAgICAgICAgICAgIGludCByZWdpc3Rlck51bWJlciA9IGl0IC0g
Y2FsbEZyYW1lLT5yZWdpc3RlcnMoKTsKLSAgICAgICAgICAgIGRhdGFMb2dGKCJbciUgM2RdICAg
ICAgICAgICAgICAgICAgICAgfCAlMTBwIHwgJS0xNnMgMHglbGxkIFxuIiwgcmVnaXN0ZXJOdW1i
ZXIsIGl0LCB0b0NTdHJpbmcodikuZGF0YSgpLCAobG9uZyBsb25nKUpTVmFsdWU6OmVuY29kZSh2
KSk7CisgICAgICAgICAgICBDU3RyaW5nIHZhbHVlU3RyaW5nID0KKyAgICAgICAgICAgICAgICAo
di5pc0NlbGwoKSAmJiAhVk1JbnNwZWN0b3I6OmlzVmFsaWRDZWxsKCZ2bS5oZWFwLCByZWludGVy
cHJldF9jYXN0PEpTQ2VsbCo+KEpTVmFsdWU6OmVuY29kZSh2KSkpKQorICAgICAgICAgICAgICAg
ID8gIklOVkFMSUQiCisgICAgICAgICAgICAgICAgOiB0b0NTdHJpbmcodik7CisgICAgICAgICAg
ICBkYXRhTG9nRigiW3IlIDNkXSAgICAgICAgICAgICAgICAgICAgIHwgJTEwcCB8ICUtMTZzIDB4
JWxsZCBcbiIsIHJlZ2lzdGVyTnVtYmVyLCBpdCwgdmFsdWVTdHJpbmcuZGF0YSgpLCAobG9uZyBs
b25nKUpTVmFsdWU6OmVuY29kZSh2KSk7CiAgICAgICAgICAgICAtLWl0OwogICAgICAgICB9IHdo
aWxlIChpdCAhPSBlbmQpOwogICAgIH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>326936</attachid>
            <date>2017-11-14 16:11:32 -0800</date>
            <delta_ts>2017-11-14 16:39:16 -0800</delta_ts>
            <desc>proposed patch.</desc>
            <filename>bug-179699.patch</filename>
            <type>text/plain</type>
            <size>5420</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjI0ODU1KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBA
CisyMDE3LTExLTE0ICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KKworICAgICAgICBG
aXggYSBiaXQtcm90dGVkIEludGVycHJldGVyOjpkdW1wUmVnaXN0ZXJzKCkgYW5kIG1ha2UgaXQg
bW9yZSByb2J1c3QuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNzk2OTkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM1NDYyMzQ2PgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaW50ZXJwcmV0ZXIvSW50
ZXJwcmV0ZXIuY3BwOgorICAgICAgICAoSlNDOjpJbnRlcnByZXRlcjo6ZHVtcFJlZ2lzdGVycyk6
CisKIDIwMTctMTEtMTQgIEd1aWxsYXVtZSBFbW9udCAgPGd1aWplbW9udEBpZ2FsaWEuY29tPgog
CiAgICAgICAgIFJFR1JFU1NJT04ocjIyNDYyMykgW01JUFNdIGJyYW5jaFRydW5jYXRlRG91Ymxl
VG9JbnQzMigpIGRvZXNuJ3Qgc2V0IHJldHVybiByZWdpc3RlciB3aGVuIGJyYW5jaGluZwpJbmRl
eDogU291cmNlL0phdmFTY3JpcHRDb3JlL2ludGVycHJldGVyL0ludGVycHJldGVyLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaW50ZXJwcmV0ZXIvSW50ZXJwcmV0ZXIu
Y3BwCShyZXZpc2lvbiAyMjQ4MzYpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaW50ZXJwcmV0
ZXIvSW50ZXJwcmV0ZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03NCw2ICs3NCw3IEBACiAjaW5j
bHVkZSAiU3ltYm9sLmgiCiAjaW5jbHVkZSAiVk1FbnRyeVNjb3BlLmgiCiAjaW5jbHVkZSAiVk1J
bmxpbmVzLmgiCisjaW5jbHVkZSAiVk1JbnNwZWN0b3IuaCIKICNpbmNsdWRlICJWaXJ0dWFsUmVn
aXN0ZXIuaCIKIAogI2luY2x1ZGUgPGxpbWl0cy5oPgpAQCAtMzk1LDcgKzM5Niw2IEBAIHB1Ymxp
YzoKICAgICAgICAgdW5zaWduZWQgdW51c2VkQ29sdW1uID0gMDsKICAgICAgICAgdmlzaXRvci0+
Y29tcHV0ZUxpbmVBbmRDb2x1bW4obGluZSwgdW51c2VkQ29sdW1uKTsKICAgICAgICAgZGF0YUxv
Z0YoIltSZXR1cm5WUENdICAgICAgICAgICAgICAgIHwgJTEwcCB8ICVkIChsaW5lICVkKVxuIiwg
bV9pdCwgdmlzaXRvci0+Ynl0ZWNvZGVPZmZzZXQoKSwgbGluZSk7Ci0gICAgICAgIC0tbV9pdDsK
ICAgICAgICAgcmV0dXJuIFN0YWNrVmlzaXRvcjo6RG9uZTsKICAgICB9CiAKQEAgLTQwNiwxMiAr
NDA2LDE4IEBAIHByaXZhdGU6CiAKIHZvaWQgSW50ZXJwcmV0ZXI6OmR1bXBSZWdpc3RlcnMoQ2Fs
bEZyYW1lKiBjYWxsRnJhbWUpCiB7CisgICAgQ29kZUJsb2NrKiBjb2RlQmxvY2sgPSBjYWxsRnJh
bWUtPmNvZGVCbG9jaygpOworICAgIGlmICghY29kZUJsb2NrKSB7CisgICAgICAgIGRhdGFMb2co
IkR1bXBpbmcgaG9zdCBmcmFtZSByZWdpc3RlcnMgbm90IHN1cHBvcnRlZC5cbiIpOworICAgICAg
ICByZXR1cm47CisgICAgfQorICAgIFZNJiB2bSA9ICpjb2RlQmxvY2stPnZtKCk7CisKICAgICBk
YXRhTG9nRigiUmVnaXN0ZXIgZnJhbWU6IFxuXG4iKTsKICAgICBkYXRhTG9nRigiLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS1cbiIpOwogICAgIGRhdGFMb2dGKCIgICAgICAgICAgICB1c2UgICAgICAgICAg
ICB8ICAgYWRkcmVzcyAgfCAgICAgICAgICAgICAgICB2YWx1ZSAgICAgICAgICAgICAgIFxuIik7
CiAgICAgZGF0YUxvZ0YoIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iKTsKIAotICAgIENvZGVCbG9j
ayogY29kZUJsb2NrID0gY2FsbEZyYW1lLT5jb2RlQmxvY2soKTsKICAgICBjb25zdCBSZWdpc3Rl
ciogaXQ7CiAgICAgY29uc3QgUmVnaXN0ZXIqIGVuZDsKIApAQCAtNDI3LDMzICs0MzMsMzggQEAg
dm9pZCBJbnRlcnByZXRlcjo6ZHVtcFJlZ2lzdGVycyhDYWxsRnJhbQogICAgIAogICAgIGRhdGFM
b2dGKCItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIik7CiAgICAgZGF0YUxvZ0YoIltBcmd1bWVudENv
dW50XSAgICAgICAgICAgIHwgJTEwcCB8ICVsdSBcbiIsIGl0LCAodW5zaWduZWQgbG9uZykgY2Fs
bEZyYW1lLT5hcmd1bWVudENvdW50KCkpOwotICAgIC0taXQ7Ci0gICAgZGF0YUxvZ0YoIltDYWxs
ZXJGcmFtZV0gICAgICAgICAgICAgIHwgJTEwcCB8ICVwIFxuIiwgaXQsIGNhbGxGcmFtZS0+Y2Fs
bGVyRnJhbWUoKSk7CisgICAgRHVtcFJldHVyblZpcnR1YWxQQ0Z1bmN0b3IgZnVuY3RvcihpdCk7
CisgICAgY2FsbEZyYW1lLT5pdGVyYXRlKGZ1bmN0b3IpOwogICAgIC0taXQ7CiAgICAgZGF0YUxv
Z0YoIltDYWxsZWVdICAgICAgICAgICAgICAgICAgIHwgJTEwcCB8ICVwIFxuIiwgaXQsIGNhbGxG
cmFtZS0+anNDYWxsZWUoKSk7CiAgICAgLS1pdDsKLSAgICAvLyBGSVhNRTogUmVtb3ZlIHRoZSBu
ZXh0IGRlY3JlbWVudCB3aGVuIHRoZSBTY29wZUNoYWluIHNsb3QgaXMgcmVtb3ZlZCBmcm9tIHRo
ZSBjYWxsIGhlYWRlcgorICAgIGRhdGFMb2dGKCJbQ29kZUJsb2NrXSAgICAgICAgICAgICAgICB8
ICUxMHAgfCAlcCBcbiIsIGl0LCBjYWxsRnJhbWUtPmNvZGVCbG9jaygpKTsKKyAgICAtLWl0Owor
ICAgIGRhdGFMb2dGKCJbQ2FsbGVyRnJhbWVdICAgICAgICAgICAgICB8ICUxMHAgfCAlcCBcbiIs
IGl0LCBjYWxsRnJhbWUtPmNhbGxlckZyYW1lKCkpOwogICAgIC0taXQ7CiAjaWYgRU5BQkxFKEpJ
VCkKICAgICBBYnN0cmFjdFBDIHBjID0gY2FsbEZyYW1lLT5hYnN0cmFjdFJldHVyblBDKGNhbGxG
cmFtZS0+dm0oKSk7CiAgICAgaWYgKHBjLmhhc0pJVFJldHVybkFkZHJlc3MoKSkKICAgICAgICAg
ZGF0YUxvZ0YoIltSZXR1cm5KSVRQQ10gICAgICAgICAgICAgIHwgJTEwcCB8ICVwIFxuIiwgaXQs
IHBjLmppdFJldHVybkFkZHJlc3MoKS52YWx1ZSgpKTsKLSNlbmRpZgotCi0gICAgRHVtcFJldHVy
blZpcnR1YWxQQ0Z1bmN0b3IgZnVuY3RvcihpdCk7Ci0gICAgY2FsbEZyYW1lLT5pdGVyYXRlKGZ1
bmN0b3IpOwotCi0gICAgZGF0YUxvZ0YoIltDb2RlQmxvY2tdICAgICAgICAgICAgICAgIHwgJTEw
cCB8ICVwIFxuIiwgaXQsIGNhbGxGcmFtZS0+Y29kZUJsb2NrKCkpOwogICAgIC0taXQ7CisjZW5k
aWYKICAgICBkYXRhTG9nRigiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIpOwogCisgICAgc2l6ZV90
IG51bWJlck9mQ2FsbGVlU2F2ZVNsb3RzID0gY29kZUJsb2NrLT5jYWxsZWVTYXZlU3BhY2VBc1Zp
cnR1YWxSZWdpc3RlcnMoKTsKKyAgICBjb25zdCBSZWdpc3RlciogZW5kT2ZDYWxsZWVTYXZlcyA9
IGl0IC0gbnVtYmVyT2ZDYWxsZWVTYXZlU2xvdHM7CisKICAgICBlbmQgPSBpdCAtIGNvZGVCbG9j
ay0+bV9udW1WYXJzOwogICAgIGlmIChpdCAhPSBlbmQpIHsKICAgICAgICAgZG8gewogICAgICAg
ICAgICAgSlNWYWx1ZSB2ID0gaXQtPmpzVmFsdWUoKTsKICAgICAgICAgICAgIGludCByZWdpc3Rl
ck51bWJlciA9IGl0IC0gY2FsbEZyYW1lLT5yZWdpc3RlcnMoKTsKLSAgICAgICAgICAgIFN0cmlu
ZyBuYW1lID0gY29kZUJsb2NrLT5uYW1lRm9yUmVnaXN0ZXIoVmlydHVhbFJlZ2lzdGVyKHJlZ2lz
dGVyTnVtYmVyKSk7Ci0gICAgICAgICAgICBkYXRhTG9nRigiW3IlIDNkICUxNHNdICAgICAgfCAl
MTBwIHwgJS0xNnMgMHglbGxkIFxuIiwgcmVnaXN0ZXJOdW1iZXIsIG5hbWUuYXNjaWkoKS5kYXRh
KCksIGl0LCB0b0NTdHJpbmcodikuZGF0YSgpLCAobG9uZyBsb25nKUpTVmFsdWU6OmVuY29kZSh2
KSk7CisgICAgICAgICAgICBTdHJpbmcgbmFtZSA9IChpdCA+IGVuZE9mQ2FsbGVlU2F2ZXMpCisg
ICAgICAgICAgICAgICAgPyAiQ2FsbGVlU2F2ZVJlZyIKKyAgICAgICAgICAgICAgICA6IGNvZGVC
bG9jay0+bmFtZUZvclJlZ2lzdGVyKFZpcnR1YWxSZWdpc3RlcihyZWdpc3Rlck51bWJlcikpOwor
ICAgICAgICAgICAgQ1N0cmluZyB2YWx1ZVN0cmluZyA9IChpdCA+IGVuZE9mQ2FsbGVlU2F2ZXMp
CisgICAgICAgICAgICAgICAgPyAiSU5WQUxJRCIKKyAgICAgICAgICAgICAgICA6IHRvQ1N0cmlu
Zyh2KTsKKyAgICAgICAgICAgIGRhdGFMb2dGKCJbciUgM2QgJTE0c10gICAgICB8ICUxMHAgfCAl
LTE2cyAweCVsbGQgXG4iLCByZWdpc3Rlck51bWJlciwgbmFtZS5hc2NpaSgpLmRhdGEoKSwgaXQs
IHZhbHVlU3RyaW5nLmRhdGEoKSwgKGxvbmcgbG9uZylKU1ZhbHVlOjplbmNvZGUodikpOwogICAg
ICAgICAgICAgLS1pdDsKICAgICAgICAgfSB3aGlsZSAoaXQgIT0gZW5kKTsKICAgICB9CkBAIC00
NjQsNyArNDc1LDExIEBAIHZvaWQgSW50ZXJwcmV0ZXI6OmR1bXBSZWdpc3RlcnMoQ2FsbEZyYW0K
ICAgICAgICAgZG8gewogICAgICAgICAgICAgSlNWYWx1ZSB2ID0gKCppdCkuanNWYWx1ZSgpOwog
ICAgICAgICAgICAgaW50IHJlZ2lzdGVyTnVtYmVyID0gaXQgLSBjYWxsRnJhbWUtPnJlZ2lzdGVy
cygpOwotICAgICAgICAgICAgZGF0YUxvZ0YoIltyJSAzZF0gICAgICAgICAgICAgICAgICAgICB8
ICUxMHAgfCAlLTE2cyAweCVsbGQgXG4iLCByZWdpc3Rlck51bWJlciwgaXQsIHRvQ1N0cmluZyh2
KS5kYXRhKCksIChsb25nIGxvbmcpSlNWYWx1ZTo6ZW5jb2RlKHYpKTsKKyAgICAgICAgICAgIENT
dHJpbmcgdmFsdWVTdHJpbmcgPQorICAgICAgICAgICAgICAgICh2LmlzQ2VsbCgpICYmICFWTUlu
c3BlY3Rvcjo6aXNWYWxpZENlbGwoJnZtLmhlYXAsIHJlaW50ZXJwcmV0X2Nhc3Q8SlNDZWxsKj4o
SlNWYWx1ZTo6ZW5jb2RlKHYpKSkpCisgICAgICAgICAgICAgICAgPyAiSU5WQUxJRCIKKyAgICAg
ICAgICAgICAgICA6IHRvQ1N0cmluZyh2KTsKKyAgICAgICAgICAgIGRhdGFMb2dGKCJbciUgM2Rd
ICAgICAgICAgICAgICAgICAgICAgfCAlMTBwIHwgJS0xNnMgMHglbGxkIFxuIiwgcmVnaXN0ZXJO
dW1iZXIsIGl0LCB2YWx1ZVN0cmluZy5kYXRhKCksIChsb25nIGxvbmcpSlNWYWx1ZTo6ZW5jb2Rl
KHYpKTsKICAgICAgICAgICAgIC0taXQ7CiAgICAgICAgIH0gd2hpbGUgKGl0ICE9IGVuZCk7CiAg
ICAgfQo=
</data>
<flag name="review"
          id="346194"
          type_id="1"
          status="+"
          setter="msaboff"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>326942</attachid>
            <date>2017-11-14 16:39:16 -0800</date>
            <delta_ts>2017-11-14 16:39:16 -0800</delta_ts>
            <desc>patch for landing.</desc>
            <filename>bug-179699.patch</filename>
            <type>text/plain</type>
            <size>5521</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjI0ODYwKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBA
CisyMDE3LTExLTE0ICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KKworICAgICAgICBG
aXggYSBiaXQtcm90dGVkIEludGVycHJldGVyOjpkdW1wUmVnaXN0ZXJzKCkgYW5kIG1ha2UgaXQg
bW9yZSByb2J1c3QuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNzk2OTkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM1NDYyMzQ2PgorCisgICAgICAg
IFJldmlld2VkIGJ5IE1pY2hhZWwgU2Fib2ZmLgorCisgICAgICAgICogaW50ZXJwcmV0ZXIvSW50
ZXJwcmV0ZXIuY3BwOgorICAgICAgICAoSlNDOjpJbnRlcnByZXRlcjo6ZHVtcFJlZ2lzdGVycyk6
CisgICAgICAgIC0gTmVlZCB0byBza2lwIHRoZSBjYWxsZWUgc2F2ZWQgcmVnaXN0ZXJzCisKIDIw
MTctMTEtMTQgIEd1aWxsYXVtZSBFbW9udCAgPGd1aWplbW9udEBpZ2FsaWEuY29tPgogCiAgICAg
ICAgIFJFR1JFU1NJT04ocjIyNDYyMykgW01JUFNdIGJyYW5jaFRydW5jYXRlRG91YmxlVG9JbnQz
MigpIGRvZXNuJ3Qgc2V0IHJldHVybiByZWdpc3RlciB3aGVuIGJyYW5jaGluZwpJbmRleDogU291
cmNlL0phdmFTY3JpcHRDb3JlL2ludGVycHJldGVyL0ludGVycHJldGVyLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaW50ZXJwcmV0ZXIvSW50ZXJwcmV0ZXIuY3BwCShy
ZXZpc2lvbiAyMjQ4NjApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaW50ZXJwcmV0ZXIvSW50
ZXJwcmV0ZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03NCw2ICs3NCw3IEBACiAjaW5jbHVkZSAi
U3ltYm9sLmgiCiAjaW5jbHVkZSAiVk1FbnRyeVNjb3BlLmgiCiAjaW5jbHVkZSAiVk1JbmxpbmVz
LmgiCisjaW5jbHVkZSAiVk1JbnNwZWN0b3IuaCIKICNpbmNsdWRlICJWaXJ0dWFsUmVnaXN0ZXIu
aCIKIAogI2luY2x1ZGUgPGxpbWl0cy5oPgpAQCAtMzk1LDcgKzM5Niw2IEBAIHB1YmxpYzoKICAg
ICAgICAgdW5zaWduZWQgdW51c2VkQ29sdW1uID0gMDsKICAgICAgICAgdmlzaXRvci0+Y29tcHV0
ZUxpbmVBbmRDb2x1bW4obGluZSwgdW51c2VkQ29sdW1uKTsKICAgICAgICAgZGF0YUxvZ0YoIltS
ZXR1cm5WUENdICAgICAgICAgICAgICAgIHwgJTEwcCB8ICVkIChsaW5lICVkKVxuIiwgbV9pdCwg
dmlzaXRvci0+Ynl0ZWNvZGVPZmZzZXQoKSwgbGluZSk7Ci0gICAgICAgIC0tbV9pdDsKICAgICAg
ICAgcmV0dXJuIFN0YWNrVmlzaXRvcjo6RG9uZTsKICAgICB9CiAKQEAgLTQwNiwxMiArNDA2LDE4
IEBAIHByaXZhdGU6CiAKIHZvaWQgSW50ZXJwcmV0ZXI6OmR1bXBSZWdpc3RlcnMoQ2FsbEZyYW1l
KiBjYWxsRnJhbWUpCiB7CisgICAgQ29kZUJsb2NrKiBjb2RlQmxvY2sgPSBjYWxsRnJhbWUtPmNv
ZGVCbG9jaygpOworICAgIGlmICghY29kZUJsb2NrKSB7CisgICAgICAgIGRhdGFMb2coIkR1bXBp
bmcgaG9zdCBmcmFtZSByZWdpc3RlcnMgbm90IHN1cHBvcnRlZC5cbiIpOworICAgICAgICByZXR1
cm47CisgICAgfQorICAgIFZNJiB2bSA9ICpjb2RlQmxvY2stPnZtKCk7CisKICAgICBkYXRhTG9n
RigiUmVnaXN0ZXIgZnJhbWU6IFxuXG4iKTsKICAgICBkYXRhTG9nRigiLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS1cbiIpOwogICAgIGRhdGFMb2dGKCIgICAgICAgICAgICB1c2UgICAgICAgICAgICB8ICAg
YWRkcmVzcyAgfCAgICAgICAgICAgICAgICB2YWx1ZSAgICAgICAgICAgICAgIFxuIik7CiAgICAg
ZGF0YUxvZ0YoIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iKTsKIAotICAgIENvZGVCbG9jayogY29k
ZUJsb2NrID0gY2FsbEZyYW1lLT5jb2RlQmxvY2soKTsKICAgICBjb25zdCBSZWdpc3RlciogaXQ7
CiAgICAgY29uc3QgUmVnaXN0ZXIqIGVuZDsKIApAQCAtNDI3LDMzICs0MzMsMzYgQEAgdm9pZCBJ
bnRlcnByZXRlcjo6ZHVtcFJlZ2lzdGVycyhDYWxsRnJhbQogICAgIAogICAgIGRhdGFMb2dGKCIt
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLVxuIik7CiAgICAgZGF0YUxvZ0YoIltBcmd1bWVudENvdW50XSAg
ICAgICAgICAgIHwgJTEwcCB8ICVsdSBcbiIsIGl0LCAodW5zaWduZWQgbG9uZykgY2FsbEZyYW1l
LT5hcmd1bWVudENvdW50KCkpOwotICAgIC0taXQ7Ci0gICAgZGF0YUxvZ0YoIltDYWxsZXJGcmFt
ZV0gICAgICAgICAgICAgIHwgJTEwcCB8ICVwIFxuIiwgaXQsIGNhbGxGcmFtZS0+Y2FsbGVyRnJh
bWUoKSk7CisgICAgRHVtcFJldHVyblZpcnR1YWxQQ0Z1bmN0b3IgZnVuY3RvcihpdCk7CisgICAg
Y2FsbEZyYW1lLT5pdGVyYXRlKGZ1bmN0b3IpOwogICAgIC0taXQ7CiAgICAgZGF0YUxvZ0YoIltD
YWxsZWVdICAgICAgICAgICAgICAgICAgIHwgJTEwcCB8ICVwIFxuIiwgaXQsIGNhbGxGcmFtZS0+
anNDYWxsZWUoKSk7CiAgICAgLS1pdDsKLSAgICAvLyBGSVhNRTogUmVtb3ZlIHRoZSBuZXh0IGRl
Y3JlbWVudCB3aGVuIHRoZSBTY29wZUNoYWluIHNsb3QgaXMgcmVtb3ZlZCBmcm9tIHRoZSBjYWxs
IGhlYWRlcgorICAgIGRhdGFMb2dGKCJbQ29kZUJsb2NrXSAgICAgICAgICAgICAgICB8ICUxMHAg
fCAlcCBcbiIsIGl0LCBjYWxsRnJhbWUtPmNvZGVCbG9jaygpKTsKICAgICAtLWl0OwogI2lmIEVO
QUJMRShKSVQpCiAgICAgQWJzdHJhY3RQQyBwYyA9IGNhbGxGcmFtZS0+YWJzdHJhY3RSZXR1cm5Q
QyhjYWxsRnJhbWUtPnZtKCkpOwogICAgIGlmIChwYy5oYXNKSVRSZXR1cm5BZGRyZXNzKCkpCi0g
ICAgICAgIGRhdGFMb2dGKCJbUmV0dXJuSklUUENdICAgICAgICAgICAgICB8ICUxMHAgfCAlcCBc
biIsIGl0LCBwYy5qaXRSZXR1cm5BZGRyZXNzKCkudmFsdWUoKSk7CisgICAgICAgIGRhdGFMb2dG
KCJbUmV0dXJuUENdICAgICAgICAgICAgICAgICB8ICUxMHAgfCAlcCBcbiIsIGl0LCBwYy5qaXRS
ZXR1cm5BZGRyZXNzKCkudmFsdWUoKSk7CisgICAgLS1pdDsKICNlbmRpZgotCi0gICAgRHVtcFJl
dHVyblZpcnR1YWxQQ0Z1bmN0b3IgZnVuY3RvcihpdCk7Ci0gICAgY2FsbEZyYW1lLT5pdGVyYXRl
KGZ1bmN0b3IpOwotCi0gICAgZGF0YUxvZ0YoIltDb2RlQmxvY2tdICAgICAgICAgICAgICAgIHwg
JTEwcCB8ICVwIFxuIiwgaXQsIGNhbGxGcmFtZS0+Y29kZUJsb2NrKCkpOworICAgIGRhdGFMb2dG
KCJbQ2FsbGVyRnJhbWVdICAgICAgICAgICAgICB8ICUxMHAgfCAlcCBcbiIsIGl0LCBjYWxsRnJh
bWUtPmNhbGxlckZyYW1lKCkpOwogICAgIC0taXQ7CiAgICAgZGF0YUxvZ0YoIi0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tXG4iKTsKIAorICAgIHNpemVfdCBudW1iZXJPZkNhbGxlZVNhdmVTbG90cyA9IGNv
ZGVCbG9jay0+Y2FsbGVlU2F2ZVNwYWNlQXNWaXJ0dWFsUmVnaXN0ZXJzKCk7CisgICAgY29uc3Qg
UmVnaXN0ZXIqIGVuZE9mQ2FsbGVlU2F2ZXMgPSBpdCAtIG51bWJlck9mQ2FsbGVlU2F2ZVNsb3Rz
OworCiAgICAgZW5kID0gaXQgLSBjb2RlQmxvY2stPm1fbnVtVmFyczsKICAgICBpZiAoaXQgIT0g
ZW5kKSB7CiAgICAgICAgIGRvIHsKICAgICAgICAgICAgIEpTVmFsdWUgdiA9IGl0LT5qc1ZhbHVl
KCk7CiAgICAgICAgICAgICBpbnQgcmVnaXN0ZXJOdW1iZXIgPSBpdCAtIGNhbGxGcmFtZS0+cmVn
aXN0ZXJzKCk7Ci0gICAgICAgICAgICBTdHJpbmcgbmFtZSA9IGNvZGVCbG9jay0+bmFtZUZvclJl
Z2lzdGVyKFZpcnR1YWxSZWdpc3RlcihyZWdpc3Rlck51bWJlcikpOwotICAgICAgICAgICAgZGF0
YUxvZ0YoIltyJSAzZCAlMTRzXSAgICAgIHwgJTEwcCB8ICUtMTZzIDB4JWxsZCBcbiIsIHJlZ2lz
dGVyTnVtYmVyLCBuYW1lLmFzY2lpKCkuZGF0YSgpLCBpdCwgdG9DU3RyaW5nKHYpLmRhdGEoKSwg
KGxvbmcgbG9uZylKU1ZhbHVlOjplbmNvZGUodikpOworICAgICAgICAgICAgU3RyaW5nIG5hbWUg
PSAoaXQgPiBlbmRPZkNhbGxlZVNhdmVzKQorICAgICAgICAgICAgICAgID8gIkNhbGxlZVNhdmVS
ZWciCisgICAgICAgICAgICAgICAgOiBjb2RlQmxvY2stPm5hbWVGb3JSZWdpc3RlcihWaXJ0dWFs
UmVnaXN0ZXIocmVnaXN0ZXJOdW1iZXIpKTsKKyAgICAgICAgICAgIENTdHJpbmcgdmFsdWVTdHJp
bmcgPSAoaXQgPiBlbmRPZkNhbGxlZVNhdmVzKSA/ICIiIDogdG9DU3RyaW5nKHYpOworICAgICAg
ICAgICAgZGF0YUxvZ0YoIltyJSAzZCAlMTRzXSAgICAgIHwgJTEwcCB8ICUtMTZzIDB4JWxsZCBc
biIsIHJlZ2lzdGVyTnVtYmVyLCBuYW1lLmFzY2lpKCkuZGF0YSgpLCBpdCwgdmFsdWVTdHJpbmcu
ZGF0YSgpLCAobG9uZyBsb25nKUpTVmFsdWU6OmVuY29kZSh2KSk7CiAgICAgICAgICAgICAtLWl0
OwogICAgICAgICB9IHdoaWxlIChpdCAhPSBlbmQpOwogICAgIH0KQEAgLTQ2NCw3ICs0NzMsMTEg
QEAgdm9pZCBJbnRlcnByZXRlcjo6ZHVtcFJlZ2lzdGVycyhDYWxsRnJhbQogICAgICAgICBkbyB7
CiAgICAgICAgICAgICBKU1ZhbHVlIHYgPSAoKml0KS5qc1ZhbHVlKCk7CiAgICAgICAgICAgICBp
bnQgcmVnaXN0ZXJOdW1iZXIgPSBpdCAtIGNhbGxGcmFtZS0+cmVnaXN0ZXJzKCk7Ci0gICAgICAg
ICAgICBkYXRhTG9nRigiW3IlIDNkXSAgICAgICAgICAgICAgICAgICAgIHwgJTEwcCB8ICUtMTZz
IDB4JWxsZCBcbiIsIHJlZ2lzdGVyTnVtYmVyLCBpdCwgdG9DU3RyaW5nKHYpLmRhdGEoKSwgKGxv
bmcgbG9uZylKU1ZhbHVlOjplbmNvZGUodikpOworICAgICAgICAgICAgQ1N0cmluZyB2YWx1ZVN0
cmluZyA9CisgICAgICAgICAgICAgICAgKHYuaXNDZWxsKCkgJiYgIVZNSW5zcGVjdG9yOjppc1Zh
bGlkQ2VsbCgmdm0uaGVhcCwgcmVpbnRlcnByZXRfY2FzdDxKU0NlbGwqPihKU1ZhbHVlOjplbmNv
ZGUodikpKSkKKyAgICAgICAgICAgICAgICA/ICJJTlZBTElEIgorICAgICAgICAgICAgICAgIDog
dG9DU3RyaW5nKHYpOworICAgICAgICAgICAgZGF0YUxvZ0YoIltyJSAzZF0gICAgICAgICAgICAg
ICAgICAgICB8ICUxMHAgfCAlLTE2cyAweCVsbGQgXG4iLCByZWdpc3Rlck51bWJlciwgaXQsIHZh
bHVlU3RyaW5nLmRhdGEoKSwgKGxvbmcgbG9uZylKU1ZhbHVlOjplbmNvZGUodikpOwogICAgICAg
ICAgICAgLS1pdDsKICAgICAgICAgfSB3aGlsZSAoaXQgIT0gZW5kKTsKICAgICB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>