<?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>145524</bug_id>
          
          <creation_ts>2015-06-01 13:55:34 -0700</creation_ts>
          <short_desc>Add the ability to tell between Catch and Finally blocks</short_desc>
          <delta_ts>2015-06-01 16:23:33 -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>JavaScriptCore</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>145525</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Mark Lam">mark.lam</reporter>
          <assigned_to name="Mark Lam">mark.lam</assigned_to>
          <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mmirman</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1098582</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2015-06-01 13:55:34 -0700</bug_when>
    <thetext>... and also SynthesizedFinally blocks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1098617</commentid>
    <comment_count>1</comment_count>
      <attachid>254019</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2015-06-01 15:44:55 -0700</bug_when>
    <thetext>Created attachment 254019
the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1098619</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-06-01 15:48:05 -0700</bug_when>
    <thetext>Attachment 254019 did not pass style-queue:


ERROR: Source/JavaScriptCore/bytecode/HandlerInfo.h:64:  Please declare enum bitfields as unsigned integral types.  [runtime/enum_bitfields] [5]
ERROR: Source/JavaScriptCore/bytecode/HandlerInfo.h:65:  Please declare enum bitfields as unsigned integral types.  [runtime/enum_bitfields] [5]
Total errors found: 2 in 6 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>1098620</commentid>
    <comment_count>3</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2015-06-01 15:50:19 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; ERROR: Source/JavaScriptCore/bytecode/HandlerInfo.h:64:  Please declare enum
&gt; bitfields as unsigned integral types.  [runtime/enum_bitfields] [5]
&gt; ERROR: Source/JavaScriptCore/bytecode/HandlerInfo.h:65:  Please declare enum
&gt; bitfields as unsigned integral types.  [runtime/enum_bitfields] [5]
&gt; Total errors found: 2 in 6 files

The style checker is mistaken.  I&apos;m already using an unsigned integral type (uint32_t).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1098623</commentid>
    <comment_count>4</comment_count>
      <attachid>254019</attachid>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2015-06-01 16:08:04 -0700</bug_when>
    <thetext>Comment on attachment 254019
the patch.

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

Continue to use the name popTryAndEmitCatch() as it emits an op_catch bytecode.
r=me

&gt; Source/JavaScriptCore/ChangeLog:8
&gt; +        ... and also SynthesizedFinally blocks too.

Add what you mean by &quot;SynthesizedFinally&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1098630</commentid>
    <comment_count>5</comment_count>
      <attachid>254021</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2015-06-01 16:20:01 -0700</bug_when>
    <thetext>Created attachment 254021
Patch for landing (already r+&apos;ed by Michael).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1098633</commentid>
    <comment_count>6</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2015-06-01 16:23:33 -0700</bug_when>
    <thetext>Thanks for the review.  Landed in r185083: &lt;http://trac.webkit.org/r185083&gt;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>254019</attachid>
            <date>2015-06-01 15:44:55 -0700</date>
            <delta_ts>2015-06-01 16:20:01 -0700</delta_ts>
            <desc>the patch.</desc>
            <filename>bug-145524.patch</filename>
            <type>text/plain</type>
            <size>10216</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTg1MDc1KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM5IEBA
CisyMDE1LTA2LTAxICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KKworICAgICAgICBB
ZGQgdGhlIGFiaWxpdHkgdG8gdGVsbCBiZXR3ZWVuIENhdGNoIGFuZCBGaW5hbGx5IGJsb2Nrcy4K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NTUyNCAK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAuLi4gYW5k
IGFsc28gU3ludGhlc2l6ZWRGaW5hbGx5IGJsb2NrcyB0b28uCisKKyAgICAgICAgTWFudWFsbHkg
dGVzdGVkIGJ5IGluc3BlY3RpbmcgdGhlIGJ5dGVjb2RlIGR1bXAgb2YgZnVuY3Rpb25zIHdpdGgK
KyAgICAgICAgdHJ5LWNhdGNoLWZpbmFsbHkgYmxvY2tzIGFzIHdlbGwgYXMgZm9yIG9mIHN0YXRl
bWVudHMgd2hpY2ggaGF2ZQorICAgICAgICBzeW50aGVzaXplZCBmaW5hbGx5IGJsb2Nrcy4gIFRo
ZSBieXRlY29kZSBkdW1wcyBjb250YWlucyB0aGUgZXhjZXB0aW9uCisgICAgICAgIGhhbmRsZXJz
IHRhYmxlIHdoaWNoIGhhcyB0aGVzZSBibG9ja3MgbGFiZWxsZWQgd2l0aCB0aGVpciBuZXdseSBh
ZGRlZAorICAgICAgICB0eXBlcy4gIE5vIGF1dG9tYXRpYyB0ZXN0IGJlY2F1c2UgdGhpcyB0eXBl
IGluZm8gaXMgbm90IHZpc2libGUgdG8gSlMKKyAgICAgICAgY29kZS4KKworICAgICAgICAqIGJ5
dGVjb2RlL0NvZGVCbG9jay5jcHA6CisgICAgICAgIChKU0M6OkNvZGVCbG9jazo6ZHVtcEJ5dGVj
b2RlKToKKyAgICAgICAgKiBieXRlY29kZS9IYW5kbGVySW5mby5oOgorICAgICAgICAoSlNDOjpI
YW5kbGVySW5mb0Jhc2U6OnR5cGUpOgorICAgICAgICAoSlNDOjpIYW5kbGVySW5mb0Jhc2U6OnNl
dFR5cGUpOgorICAgICAgICAoSlNDOjpIYW5kbGVySW5mb0Jhc2U6OnR5cGVOYW1lKToKKyAgICAg
ICAgKEpTQzo6SGFuZGxlckluZm9CYXNlOjppc0NhdGNoSGFuZGxlcik6CisgICAgICAgIChKU0M6
OlVubGlua2VkSGFuZGxlckluZm86OlVubGlua2VkSGFuZGxlckluZm8pOgorICAgICAgICAoSlND
OjpIYW5kbGVySW5mbzo6aW5pdGlhbGl6ZSk6CisgICAgICAgICogYnl0ZWNvbXBpbGVyL0J5dGVj
b2RlR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Qnl0ZWNvZGVHZW5lcmF0b3I6OmdlbmVy
YXRlKToKKyAgICAgICAgKEpTQzo6Qnl0ZWNvZGVHZW5lcmF0b3I6OnB1c2hUcnkpOgorICAgICAg
ICAoSlNDOjpCeXRlY29kZUdlbmVyYXRvcjo6cG9wVHJ5QW5kRW1pdEhhbmRsZXIpOgorICAgICAg
ICAoSlNDOjpCeXRlY29kZUdlbmVyYXRvcjo6ZW1pdEVudW1lcmF0aW9uKToKKyAgICAgICAgKEpT
Qzo6Qnl0ZWNvZGVHZW5lcmF0b3I6OnBvcFRyeUFuZEVtaXRDYXRjaCk6IERlbGV0ZWQuCisgICAg
ICAgICogYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmg6CisgICAgICAgIChKU0M6OkJ5
dGVjb2RlR2VuZXJhdG9yOjplbWl0VGhyb3cpOgorICAgICAgICAqIGJ5dGVjb21waWxlci9Ob2Rl
c0NvZGVnZW4uY3BwOgorICAgICAgICAoSlNDOjpUcnlOb2RlOjplbWl0Qnl0ZWNvZGUpOgorCiAy
MDE1LTA1LTI5ICBHZW9mZnJleSBHYXJlbiAgPGdnYXJlbkBhcHBsZS5jb20+CiAKICAgICAgICAg
UkVHUkVTU0lPTjogVGhlc2Ugc29ydGluZyBpZGlvbXMgdXNlZCBieSBQZWFjZWtlZXBlciBhbmQg
QnJvd3Nlcm1hcmsgYXJlIH4yMFggc2xvd2VyCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
Ynl0ZWNvZGUvQ29kZUJsb2NrLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcAkocmV2aXNpb24gMTg1MDcyKQorKysgU291cmNlL0ph
dmFTY3JpcHRDb3JlL2J5dGVjb2RlL0NvZGVCbG9jay5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY1
NSw4ICs2NTUsOCBAQCB2b2lkIENvZGVCbG9jazo6ZHVtcEJ5dGVjb2RlKFByaW50U3RyZWFtCiAg
ICAgICAgIHVuc2lnbmVkIGkgPSAwOwogICAgICAgICBkbyB7CiAgICAgICAgICAgICBIYW5kbGVy
SW5mbyYgaGFuZGxlciA9IG1fcmFyZURhdGEtPm1fZXhjZXB0aW9uSGFuZGxlcnNbaV07Ci0gICAg
ICAgICAgICBvdXQucHJpbnRmKCJcdCAlZDogeyBzdGFydDogWyU0ZF0gZW5kOiBbJTRkXSB0YXJn
ZXQ6IFslNGRdIGRlcHRoOiBbJTRkXSB9XG4iLAotICAgICAgICAgICAgICAgIGkgKyAxLCBoYW5k
bGVyLnN0YXJ0LCBoYW5kbGVyLmVuZCwgaGFuZGxlci50YXJnZXQsIGhhbmRsZXIuc2NvcGVEZXB0
aCk7CisgICAgICAgICAgICBvdXQucHJpbnRmKCJcdCAlZDogeyBzdGFydDogWyU0ZF0gZW5kOiBb
JTRkXSB0YXJnZXQ6IFslNGRdIGRlcHRoOiBbJTRkXSB9ICVzXG4iLAorICAgICAgICAgICAgICAg
IGkgKyAxLCBoYW5kbGVyLnN0YXJ0LCBoYW5kbGVyLmVuZCwgaGFuZGxlci50YXJnZXQsIGhhbmRs
ZXIuc2NvcGVEZXB0aCwgaGFuZGxlci50eXBlTmFtZSgpKTsKICAgICAgICAgICAgICsraTsKICAg
ICAgICAgfSB3aGlsZSAoaSA8IG1fcmFyZURhdGEtPm1fZXhjZXB0aW9uSGFuZGxlcnMuc2l6ZSgp
KTsKICAgICB9CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvSGFuZGxlcklu
Zm8uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvSGFuZGxl
ckluZm8uaAkocmV2aXNpb24gMTg1MDcyKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVj
b2RlL0hhbmRsZXJJbmZvLmgJKHdvcmtpbmcgY29weSkKQEAgLTMwLDIwICszMCw1MCBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAorZW51bSBjbGFzcyBIYW5kbGVyVHlwZSB7CisgICAgSWxsZWdhbCA9
IDAsCisgICAgQ2F0Y2ggPSAxLAorICAgIEZpbmFsbHkgPSAyLAorICAgIFN5bnRoZXNpemVkRmlu
YWxseSA9IDMKK307CisKIHN0cnVjdCBIYW5kbGVySW5mb0Jhc2UgeworICAgIEhhbmRsZXJUeXBl
IHR5cGUoKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxIYW5kbGVyVHlwZT4odHlwZUJpdHMp
OyB9CisgICAgdm9pZCBzZXRUeXBlKEhhbmRsZXJUeXBlIHR5cGUpIHsgdHlwZUJpdHMgPSBzdGF0
aWNfY2FzdDx1aW50MzJfdD4odHlwZSk7IH0KKyAgICAKKyAgICBjb25zdCBjaGFyKiB0eXBlTmFt
ZSgpCisgICAgeworICAgICAgICBzd2l0Y2ggKHR5cGUoKSkgeworICAgICAgICBjYXNlIEhhbmRs
ZXJUeXBlOjpDYXRjaDoKKyAgICAgICAgICAgIHJldHVybiAiY2F0Y2giOworICAgICAgICBjYXNl
IEhhbmRsZXJUeXBlOjpGaW5hbGx5OgorICAgICAgICAgICAgcmV0dXJuICJmaW5hbGx5IjsKKyAg
ICAgICAgY2FzZSBIYW5kbGVyVHlwZTo6U3ludGhlc2l6ZWRGaW5hbGx5OgorICAgICAgICAgICAg
cmV0dXJuICJzeW50aGVzaXplZCBmaW5hbGx5IjsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAg
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICB9CisgICAgICAgIHJldHVybiBudWxs
cHRyOworICAgIH0KKyAgICAKKyAgICBib29sIGlzQ2F0Y2hIYW5kbGVyKCkgY29uc3QgeyByZXR1
cm4gdHlwZSgpID09IEhhbmRsZXJUeXBlOjpDYXRjaDsgfQorICAgIAogICAgIHVpbnQzMl90IHN0
YXJ0OwogICAgIHVpbnQzMl90IGVuZDsKICAgICB1aW50MzJfdCB0YXJnZXQ7Ci0gICAgdWludDMy
X3Qgc2NvcGVEZXB0aDsKKyAgICB1aW50MzJfdCBzY29wZURlcHRoIDogMzA7CisgICAgdWludDMy
X3QgdHlwZUJpdHMgOiAyOyAvLyBIYW5kbGVyVHlwZQogfTsKIAogc3RydWN0IFVubGlua2VkSGFu
ZGxlckluZm8gOiBwdWJsaWMgSGFuZGxlckluZm9CYXNlIHsKLSAgICBVbmxpbmtlZEhhbmRsZXJJ
bmZvKHVpbnQzMl90IHN0YXJ0LCB1aW50MzJfdCBlbmQsIHVpbnQzMl90IHRhcmdldCwgdWludDMy
X3Qgc2NvcGVEZXB0aCkKKyAgICBVbmxpbmtlZEhhbmRsZXJJbmZvKHVpbnQzMl90IHN0YXJ0LCB1
aW50MzJfdCBlbmQsIHVpbnQzMl90IHRhcmdldCwgdWludDMyX3Qgc2NvcGVEZXB0aCwgSGFuZGxl
clR5cGUgaGFuZGxlclR5cGUpCiAgICAgewogICAgICAgICB0aGlzLT5zdGFydCA9IHN0YXJ0Owog
ICAgICAgICB0aGlzLT5lbmQgPSBlbmQ7CiAgICAgICAgIHRoaXMtPnRhcmdldCA9IHRhcmdldDsK
ICAgICAgICAgdGhpcy0+c2NvcGVEZXB0aCA9IHNjb3BlRGVwdGg7CisgICAgICAgIHNldFR5cGUo
aGFuZGxlclR5cGUpOworICAgICAgICBBU1NFUlQodHlwZSgpID09IGhhbmRsZXJUeXBlKTsKICAg
ICB9CiB9OwogCkBAIC01NCw2ICs4NCw3IEBAIHN0cnVjdCBIYW5kbGVySW5mbyA6IHB1YmxpYyBI
YW5kbGVySW5mb0IKICAgICAgICAgZW5kID0gdW5saW5rZWRJbmZvLmVuZDsKICAgICAgICAgdGFy
Z2V0ID0gdW5saW5rZWRJbmZvLnRhcmdldDsKICAgICAgICAgc2NvcGVEZXB0aCA9IHVubGlua2Vk
SW5mby5zY29wZURlcHRoICsgbm9uTG9jYWxTY29wZURlcHRoOworICAgICAgICB0eXBlQml0cyA9
IHVubGlua2VkSW5mby50eXBlQml0czsKICAgICB9CiAKICNpZiBFTkFCTEUoSklUKQpJbmRleDog
U291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9CeXRlY29kZUdlbmVyYXRvci5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9CeXRlY29k
ZUdlbmVyYXRvci5jcHAJKHJldmlzaW9uIDE4NTA3MikKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ieXRlY29tcGlsZXIvQnl0ZWNvZGVHZW5lcmF0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0x
MjksOCArMTI5LDEwIEBAIFBhcnNlckVycm9yIEJ5dGVjb2RlR2VuZXJhdG9yOjpnZW5lcmF0ZSgK
ICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAKICAgICAgICAgQVNTRVJUKHJhbmdlLnRy
eURhdGEtPnRhcmdldFNjb3BlRGVwdGggIT0gVUlOVF9NQVgpOworICAgICAgICBBU1NFUlQocmFu
Z2UudHJ5RGF0YS0+aGFuZGxlclR5cGUgIT0gSGFuZGxlclR5cGU6OklsbGVnYWwpOwogICAgICAg
ICBVbmxpbmtlZEhhbmRsZXJJbmZvIGluZm8oc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHN0YXJ0KSwg
c3RhdGljX2Nhc3Q8dWludDMyX3Q+KGVuZCksCi0gICAgICAgICAgICBzdGF0aWNfY2FzdDx1aW50
MzJfdD4ocmFuZ2UudHJ5RGF0YS0+dGFyZ2V0LT5iaW5kKCkpLCByYW5nZS50cnlEYXRhLT50YXJn
ZXRTY29wZURlcHRoKTsKKyAgICAgICAgICAgIHN0YXRpY19jYXN0PHVpbnQzMl90PihyYW5nZS50
cnlEYXRhLT50YXJnZXQtPmJpbmQoKSksIHJhbmdlLnRyeURhdGEtPnRhcmdldFNjb3BlRGVwdGgs
CisgICAgICAgICAgICByYW5nZS50cnlEYXRhLT5oYW5kbGVyVHlwZSk7CiAgICAgICAgIG1fY29k
ZUJsb2NrLT5hZGRFeGNlcHRpb25IYW5kbGVyKGluZm8pOwogICAgIH0KICAgICAKQEAgLTI1MTMs
NiArMjUxNSw3IEBAIFRyeURhdGEqIEJ5dGVjb2RlR2VuZXJhdG9yOjpwdXNoVHJ5KExhYmUKICAg
ICBUcnlEYXRhIHRyeURhdGE7CiAgICAgdHJ5RGF0YS50YXJnZXQgPSBuZXdMYWJlbCgpOwogICAg
IHRyeURhdGEudGFyZ2V0U2NvcGVEZXB0aCA9IFVJTlRfTUFYOworICAgIHRyeURhdGEuaGFuZGxl
clR5cGUgPSBIYW5kbGVyVHlwZTo6SWxsZWdhbDsKICAgICBtX3RyeURhdGEuYXBwZW5kKHRyeURh
dGEpOwogICAgIFRyeURhdGEqIHJlc3VsdCA9ICZtX3RyeURhdGEubGFzdCgpOwogICAgIApAQCAt
MjUyNSw3ICsyNTI4LDcgQEAgVHJ5RGF0YSogQnl0ZWNvZGVHZW5lcmF0b3I6OnB1c2hUcnkoTGFi
ZQogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKLVJlZ2lzdGVySUQqIEJ5dGVjb2RlR2VuZXJhdG9y
Ojpwb3BUcnlBbmRFbWl0Q2F0Y2goVHJ5RGF0YSogdHJ5RGF0YSwgUmVnaXN0ZXJJRCogdGFyZ2V0
UmVnaXN0ZXIsIExhYmVsKiBlbmQpCitSZWdpc3RlcklEKiBCeXRlY29kZUdlbmVyYXRvcjo6cG9w
VHJ5QW5kRW1pdEhhbmRsZXIoVHJ5RGF0YSogdHJ5RGF0YSwgUmVnaXN0ZXJJRCogdGFyZ2V0UmVn
aXN0ZXIsIExhYmVsKiBlbmQsIEhhbmRsZXJUeXBlIGhhbmRsZXJUeXBlKQogewogICAgIG1fdXNl
c0V4Y2VwdGlvbnMgPSB0cnVlOwogICAgIApAQCAtMjU0MCw2ICsyNTQzLDcgQEAgUmVnaXN0ZXJJ
RCogQnl0ZWNvZGVHZW5lcmF0b3I6OnBvcFRyeUFuZAogICAgIAogICAgIGVtaXRMYWJlbCh0cnlS
YW5nZS50cnlEYXRhLT50YXJnZXQuZ2V0KCkpOwogICAgIHRyeVJhbmdlLnRyeURhdGEtPnRhcmdl
dFNjb3BlRGVwdGggPSBtX2xvY2FsU2NvcGVEZXB0aDsKKyAgICB0cnlSYW5nZS50cnlEYXRhLT5o
YW5kbGVyVHlwZSA9IGhhbmRsZXJUeXBlOwogCiAgICAgZW1pdE9wY29kZShvcF9jYXRjaCk7CiAg
ICAgaW5zdHJ1Y3Rpb25zKCkuYXBwZW5kKHRhcmdldFJlZ2lzdGVyLT5pbmRleCgpKTsKQEAgLTI3
NTYsNyArMjc2MCw3IEBAIHZvaWQgQnl0ZWNvZGVHZW5lcmF0b3I6OmVtaXRFbnVtZXJhdGlvbigK
ICAgICAgICAgLy8gSXRlcmF0b3JDbG9zZSBzZXF1ZW5jZSBmb3IgdGhyb3ctZWQgY29udHJvbCBm
bG93LgogICAgICAgICB7CiAgICAgICAgICAgICBSZWZQdHI8TGFiZWw+IGNhdGNoSGVyZSA9IGVt
aXRMYWJlbChuZXdMYWJlbCgpLmdldCgpKTsKLSAgICAgICAgICAgIFJlZlB0cjxSZWdpc3RlcklE
PiBleGNlcHRpb25SZWdpc3RlciA9IHBvcFRyeUFuZEVtaXRDYXRjaCh0cnlEYXRhLCBuZXdUZW1w
b3JhcnkoKSwgY2F0Y2hIZXJlLmdldCgpKTsKKyAgICAgICAgICAgIFJlZlB0cjxSZWdpc3RlcklE
PiBleGNlcHRpb25SZWdpc3RlciA9IHBvcFRyeUFuZEVtaXRIYW5kbGVyKHRyeURhdGEsIG5ld1Rl
bXBvcmFyeSgpLCBjYXRjaEhlcmUuZ2V0KCksIEhhbmRsZXJUeXBlOjpTeW50aGVzaXplZEZpbmFs
bHkpOwogICAgICAgICAgICAgUmVmUHRyPExhYmVsPiBjYXRjaERvbmUgPSBuZXdMYWJlbCgpOwog
CiAgICAgICAgICAgICBSZWZQdHI8UmVnaXN0ZXJJRD4gcmV0dXJuTWV0aG9kID0gZW1pdEdldEJ5
SWQobmV3VGVtcG9yYXJ5KCksIGl0ZXJhdG9yLmdldCgpLCBwcm9wZXJ0eU5hbWVzKCkucmV0dXJu
S2V5d29yZCk7CkBAIC0yNzc0LDcgKzI3NzgsNyBAQCB2b2lkIEJ5dGVjb2RlR2VuZXJhdG9yOjpl
bWl0RW51bWVyYXRpb24oCiAgICAgICAgICAgICBlbWl0VGhyb3coZXhjZXB0aW9uUmVnaXN0ZXIu
Z2V0KCkpOwogCiAgICAgICAgICAgICAvLyBBYnNvcmIgZXhjZXB0aW9uLgotICAgICAgICAgICAg
cG9wVHJ5QW5kRW1pdENhdGNoKHJldHVybkNhbGxUcnlEYXRhLCBuZXdUZW1wb3JhcnkoKSwgY2F0
Y2hEb25lLmdldCgpKTsKKyAgICAgICAgICAgIHBvcFRyeUFuZEVtaXRIYW5kbGVyKHJldHVybkNh
bGxUcnlEYXRhLCBuZXdUZW1wb3JhcnkoKSwgY2F0Y2hEb25lLmdldCgpLCBIYW5kbGVyVHlwZTo6
U3ludGhlc2l6ZWRGaW5hbGx5KTsKICAgICAgICAgICAgIGVtaXRUaHJvdyhleGNlcHRpb25SZWdp
c3Rlci5nZXQoKSk7CiAgICAgICAgIH0KIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2J5
dGVjb21waWxlci9CeXRlY29kZUdlbmVyYXRvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ieXRlY29tcGlsZXIvQnl0ZWNvZGVHZW5lcmF0b3IuaAkocmV2aXNpb24gMTg1
MDcyKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9CeXRlY29kZUdlbmVy
YXRvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xNzUsNiArMTc1LDcgQEAgbmFtZXNwYWNlIEpTQyB7
CiAgICAgc3RydWN0IFRyeURhdGEgewogICAgICAgICBSZWZQdHI8TGFiZWw+IHRhcmdldDsKICAg
ICAgICAgdW5zaWduZWQgdGFyZ2V0U2NvcGVEZXB0aDsKKyAgICAgICAgSGFuZGxlclR5cGUgaGFu
ZGxlclR5cGU7CiAgICAgfTsKIAogICAgIHN0cnVjdCBUcnlDb250ZXh0IHsKQEAgLTU1Miw3ICs1
NTMsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgLy8gU3RhcnQgYSB0cnkgYmxvY2suICdz
dGFydCcgbXVzdCBoYXZlIGJlZW4gZW1pdHRlZC4KICAgICAgICAgVHJ5RGF0YSogcHVzaFRyeShM
YWJlbCogc3RhcnQpOwogICAgICAgICAvLyBFbmQgYSB0cnkgYmxvY2suICdlbmQnIG11c3QgaGF2
ZSBiZWVuIGVtaXR0ZWQuCi0gICAgICAgIFJlZ2lzdGVySUQqIHBvcFRyeUFuZEVtaXRDYXRjaChU
cnlEYXRhKiwgUmVnaXN0ZXJJRCogdGFyZ2V0UmVnaXN0ZXIsIExhYmVsKiBlbmQpOworICAgICAg
ICBSZWdpc3RlcklEKiBwb3BUcnlBbmRFbWl0SGFuZGxlcihUcnlEYXRhKiwgUmVnaXN0ZXJJRCog
dGFyZ2V0UmVnaXN0ZXIsIExhYmVsKiBlbmQsIEhhbmRsZXJUeXBlKTsKIAogICAgICAgICB2b2lk
IGVtaXRUaHJvdyhSZWdpc3RlcklEKiBleGMpCiAgICAgICAgIHsgCkluZGV4OiBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL05vZGVzQ29kZWdlbi5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9Ob2Rlc0NvZGVnZW4uY3BwCShyZXZp
c2lvbiAxODUwNzIpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL05vZGVz
Q29kZWdlbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI4ODEsNyArMjg4MSw3IEBAIHZvaWQgVHJ5
Tm9kZTo6ZW1pdEJ5dGVjb2RlKEJ5dGVjb2RlR2VuZXIKIAogICAgICAgICAvLyBVbmNhdWdodCBl
eGNlcHRpb24gcGF0aDogdGhlIGNhdGNoIGJsb2NrLgogICAgICAgICBSZWZQdHI8TGFiZWw+IGhl
cmUgPSBnZW5lcmF0b3IuZW1pdExhYmVsKGdlbmVyYXRvci5uZXdMYWJlbCgpLmdldCgpKTsKLSAg
ICAgICAgUmVmUHRyPFJlZ2lzdGVySUQ+IGV4Y2VwdGlvblJlZ2lzdGVyID0gZ2VuZXJhdG9yLnBv
cFRyeUFuZEVtaXRDYXRjaCh0cnlEYXRhLCBnZW5lcmF0b3IubmV3VGVtcG9yYXJ5KCksIGhlcmUu
Z2V0KCkpOworICAgICAgICBSZWZQdHI8UmVnaXN0ZXJJRD4gZXhjZXB0aW9uUmVnaXN0ZXIgPSBn
ZW5lcmF0b3IucG9wVHJ5QW5kRW1pdEhhbmRsZXIodHJ5RGF0YSwgZ2VuZXJhdG9yLm5ld1RlbXBv
cmFyeSgpLCBoZXJlLmdldCgpLCBIYW5kbGVyVHlwZTo6Q2F0Y2gpOwogICAgICAgICAKICAgICAg
ICAgaWYgKG1fZmluYWxseUJsb2NrKSB7CiAgICAgICAgICAgICAvLyBJZiB0aGUgY2F0Y2ggYmxv
Y2sgdGhyb3dzIGFuIGV4Y2VwdGlvbiBhbmQgd2UgaGF2ZSBhIGZpbmFsbHkgYmxvY2ssIHRoZW4g
dGhlIGZpbmFsbHkKQEAgLTI5MTIsNyArMjkxMiw3IEBAIHZvaWQgVHJ5Tm9kZTo6ZW1pdEJ5dGVj
b2RlKEJ5dGVjb2RlR2VuZXIKICAgICAgICAgZ2VuZXJhdG9yLmVtaXRKdW1wKGZpbmFsbHlFbmRM
YWJlbC5nZXQoKSk7CiAKICAgICAgICAgLy8gVW5jYXVnaHQgZXhjZXB0aW9uIHBhdGg6IGludm9r
ZSB0aGUgZmluYWxseSBibG9jaywgdGhlbiByZS10aHJvdyB0aGUgZXhjZXB0aW9uLgotICAgICAg
ICBSZWZQdHI8UmVnaXN0ZXJJRD4gdGVtcEV4Y2VwdGlvblJlZ2lzdGVyID0gZ2VuZXJhdG9yLnBv
cFRyeUFuZEVtaXRDYXRjaCh0cnlEYXRhLCBnZW5lcmF0b3IubmV3VGVtcG9yYXJ5KCksIHByZUZp
bmFsbHlMYWJlbC5nZXQoKSk7CisgICAgICAgIFJlZlB0cjxSZWdpc3RlcklEPiB0ZW1wRXhjZXB0
aW9uUmVnaXN0ZXIgPSBnZW5lcmF0b3IucG9wVHJ5QW5kRW1pdEhhbmRsZXIodHJ5RGF0YSwgZ2Vu
ZXJhdG9yLm5ld1RlbXBvcmFyeSgpLCBwcmVGaW5hbGx5TGFiZWwuZ2V0KCksIEhhbmRsZXJUeXBl
OjpGaW5hbGx5KTsKICAgICAgICAgZ2VuZXJhdG9yLmVtaXRQcm9maWxlQ29udHJvbEZsb3coZmlu
YWxseVN0YXJ0T2Zmc2V0KTsKICAgICAgICAgZ2VuZXJhdG9yLmVtaXROb2RlKGRzdCwgbV9maW5h
bGx5QmxvY2spOwogICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93KHRlbXBFeGNlcHRpb25SZWdp
c3Rlci5nZXQoKSk7Cg==
</data>
<flag name="review"
          id="278996"
          type_id="1"
          status="+"
          setter="msaboff"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>254021</attachid>
            <date>2015-06-01 16:20:01 -0700</date>
            <delta_ts>2015-06-01 16:20:01 -0700</delta_ts>
            <desc>Patch for landing (already r+&apos;ed by Michael).</desc>
            <filename>bug-145524.patch</filename>
            <type>text/plain</type>
            <size>10500</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTg1MDc1KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQzIEBA
CisyMDE1LTA2LTAxICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KKworICAgICAgICBB
ZGQgdGhlIGFiaWxpdHkgdG8gdGVsbCBiZXR3ZWVuIENhdGNoIGFuZCBGaW5hbGx5IGJsb2Nrcy4K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NTUyNCAK
KworICAgICAgICBSZXZpZXdlZCBieSBNaWNoYWVsIFNhYm9mZi4KKworICAgICAgICAuLi4gYW5k
IGFsc28gU3ludGhlc2l6ZWRGaW5hbGx5IGJsb2NrcyB0b28uICBBIFN5bnRoZXNpemVkRmluYWxs
eSBibG9jaworICAgICAgICBpcyBhIGZpbmFsbHkgYmxvY2sgdGhhdCBpcyBzeW50aGVzaXplZCBi
eSB0aGUgYnl0ZWNvZGUgZ2VuZXJhdG9yIGJ1dAorICAgICAgICBkb2VzIG5vdCBhY3R1YWxseSBj
b3JyZXNwb25kIHRvIGFueSBleGNlcHRpb24gaGFuZGxpbmcgY29uc3RydWN0IGF0IHRoZQorICAg
ICAgICBKUyBzb3VyY2UgY29kZSBsZXZlbC4gIEFuIGV4YW1wbGUgb2YgdGhpcyBpcyB0aGUgImZv
ciAuLi4gb2YiIHN0YXRlbWVudAorICAgICAgICB3aGVyZSBpdCBuZWVkcyB0byBkbyBzb21lICJm
aW5hbCIgY2xlYW4gdXAgYmVmb3JlIHBhc3Npbmcgb24gdGhlCisgICAgICAgIGV4Y2VwdGlvbi4K
KworICAgICAgICBNYW51YWxseSB0ZXN0ZWQgYnkgaW5zcGVjdGluZyB0aGUgYnl0ZWNvZGUgZHVt
cCBvZiBmdW5jdGlvbnMgd2l0aAorICAgICAgICB0cnktY2F0Y2gtZmluYWxseSBibG9ja3MgYXMg
d2VsbCBhcyBmb3Igb2Ygc3RhdGVtZW50cyB3aGljaCBoYXZlCisgICAgICAgIHN5bnRoZXNpemVk
IGZpbmFsbHkgYmxvY2tzLiAgVGhlIGJ5dGVjb2RlIGR1bXBzIGNvbnRhaW5zIHRoZSBleGNlcHRp
b24KKyAgICAgICAgaGFuZGxlcnMgdGFibGUgd2hpY2ggaGFzIHRoZXNlIGJsb2NrcyBsYWJlbGxl
ZCB3aXRoIHRoZWlyIG5ld2x5IGFkZGVkCisgICAgICAgIHR5cGVzLiAgTm8gYXV0b21hdGljIHRl
c3QgYmVjYXVzZSB0aGlzIHR5cGUgaW5mbyBpcyBub3QgdmlzaWJsZSB0byBKUworICAgICAgICBj
b2RlLgorCisgICAgICAgICogYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcDoKKyAgICAgICAgKEpTQzo6
Q29kZUJsb2NrOjpkdW1wQnl0ZWNvZGUpOgorICAgICAgICAqIGJ5dGVjb2RlL0hhbmRsZXJJbmZv
Lmg6CisgICAgICAgIChKU0M6OkhhbmRsZXJJbmZvQmFzZTo6dHlwZSk6CisgICAgICAgIChKU0M6
OkhhbmRsZXJJbmZvQmFzZTo6c2V0VHlwZSk6CisgICAgICAgIChKU0M6OkhhbmRsZXJJbmZvQmFz
ZTo6dHlwZU5hbWUpOgorICAgICAgICAoSlNDOjpIYW5kbGVySW5mb0Jhc2U6OmlzQ2F0Y2hIYW5k
bGVyKToKKyAgICAgICAgKEpTQzo6VW5saW5rZWRIYW5kbGVySW5mbzo6VW5saW5rZWRIYW5kbGVy
SW5mbyk6CisgICAgICAgIChKU0M6OkhhbmRsZXJJbmZvOjppbml0aWFsaXplKToKKyAgICAgICAg
KiBieXRlY29tcGlsZXIvQnl0ZWNvZGVHZW5lcmF0b3IuY3BwOgorICAgICAgICAoSlNDOjpCeXRl
Y29kZUdlbmVyYXRvcjo6Z2VuZXJhdGUpOgorICAgICAgICAoSlNDOjpCeXRlY29kZUdlbmVyYXRv
cjo6cHVzaFRyeSk6CisgICAgICAgIChKU0M6OkJ5dGVjb2RlR2VuZXJhdG9yOjpwb3BUcnlBbmRF
bWl0Q2F0Y2gpOgorICAgICAgICAoSlNDOjpCeXRlY29kZUdlbmVyYXRvcjo6ZW1pdEVudW1lcmF0
aW9uKToKKyAgICAgICAgKiBieXRlY29tcGlsZXIvQnl0ZWNvZGVHZW5lcmF0b3IuaDoKKyAgICAg
ICAgKEpTQzo6Qnl0ZWNvZGVHZW5lcmF0b3I6OmVtaXRUaHJvdyk6CisgICAgICAgICogYnl0ZWNv
bXBpbGVyL05vZGVzQ29kZWdlbi5jcHA6CisgICAgICAgIChKU0M6OlRyeU5vZGU6OmVtaXRCeXRl
Y29kZSk6CisKIDIwMTUtMDUtMjkgIEdlb2ZmcmV5IEdhcmVuICA8Z2dhcmVuQGFwcGxlLmNvbT4K
IAogICAgICAgICBSRUdSRVNTSU9OOiBUaGVzZSBzb3J0aW5nIGlkaW9tcyB1c2VkIGJ5IFBlYWNl
a2VlcGVyIGFuZCBCcm93c2VybWFyayBhcmUgfjIwWCBzbG93ZXIKSW5kZXg6IFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ieXRlY29kZS9Db2RlQmxvY2suY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Db2RlQmxvY2suY3BwCShyZXZpc2lvbiAxODUwNzIpCisr
KyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtNjU1LDggKzY1NSw4IEBAIHZvaWQgQ29kZUJsb2NrOjpkdW1wQnl0ZWNvZGUoUHJp
bnRTdHJlYW0KICAgICAgICAgdW5zaWduZWQgaSA9IDA7CiAgICAgICAgIGRvIHsKICAgICAgICAg
ICAgIEhhbmRsZXJJbmZvJiBoYW5kbGVyID0gbV9yYXJlRGF0YS0+bV9leGNlcHRpb25IYW5kbGVy
c1tpXTsKLSAgICAgICAgICAgIG91dC5wcmludGYoIlx0ICVkOiB7IHN0YXJ0OiBbJTRkXSBlbmQ6
IFslNGRdIHRhcmdldDogWyU0ZF0gZGVwdGg6IFslNGRdIH1cbiIsCi0gICAgICAgICAgICAgICAg
aSArIDEsIGhhbmRsZXIuc3RhcnQsIGhhbmRsZXIuZW5kLCBoYW5kbGVyLnRhcmdldCwgaGFuZGxl
ci5zY29wZURlcHRoKTsKKyAgICAgICAgICAgIG91dC5wcmludGYoIlx0ICVkOiB7IHN0YXJ0OiBb
JTRkXSBlbmQ6IFslNGRdIHRhcmdldDogWyU0ZF0gZGVwdGg6IFslNGRdIH0gJXNcbiIsCisgICAg
ICAgICAgICAgICAgaSArIDEsIGhhbmRsZXIuc3RhcnQsIGhhbmRsZXIuZW5kLCBoYW5kbGVyLnRh
cmdldCwgaGFuZGxlci5zY29wZURlcHRoLCBoYW5kbGVyLnR5cGVOYW1lKCkpOwogICAgICAgICAg
ICAgKytpOwogICAgICAgICB9IHdoaWxlIChpIDwgbV9yYXJlRGF0YS0+bV9leGNlcHRpb25IYW5k
bGVycy5zaXplKCkpOwogICAgIH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29k
ZS9IYW5kbGVySW5mby5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRl
Y29kZS9IYW5kbGVySW5mby5oCShyZXZpc2lvbiAxODUwNzIpCisrKyBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvYnl0ZWNvZGUvSGFuZGxlckluZm8uaAkod29ya2luZyBjb3B5KQpAQCAtMzAsMjAgKzMw
LDUwIEBACiAKIG5hbWVzcGFjZSBKU0MgewogCitlbnVtIGNsYXNzIEhhbmRsZXJUeXBlIHsKKyAg
ICBJbGxlZ2FsID0gMCwKKyAgICBDYXRjaCA9IDEsCisgICAgRmluYWxseSA9IDIsCisgICAgU3lu
dGhlc2l6ZWRGaW5hbGx5ID0gMworfTsKKwogc3RydWN0IEhhbmRsZXJJbmZvQmFzZSB7CisgICAg
SGFuZGxlclR5cGUgdHlwZSgpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PEhhbmRsZXJUeXBl
Pih0eXBlQml0cyk7IH0KKyAgICB2b2lkIHNldFR5cGUoSGFuZGxlclR5cGUgdHlwZSkgeyB0eXBl
Qml0cyA9IHN0YXRpY19jYXN0PHVpbnQzMl90Pih0eXBlKTsgfQorICAgIAorICAgIGNvbnN0IGNo
YXIqIHR5cGVOYW1lKCkKKyAgICB7CisgICAgICAgIHN3aXRjaCAodHlwZSgpKSB7CisgICAgICAg
IGNhc2UgSGFuZGxlclR5cGU6OkNhdGNoOgorICAgICAgICAgICAgcmV0dXJuICJjYXRjaCI7Cisg
ICAgICAgIGNhc2UgSGFuZGxlclR5cGU6OkZpbmFsbHk6CisgICAgICAgICAgICByZXR1cm4gImZp
bmFsbHkiOworICAgICAgICBjYXNlIEhhbmRsZXJUeXBlOjpTeW50aGVzaXplZEZpbmFsbHk6Cisg
ICAgICAgICAgICByZXR1cm4gInN5bnRoZXNpemVkIGZpbmFsbHkiOworICAgICAgICBkZWZhdWx0
OgorICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIH0KKyAgICAgICAg
cmV0dXJuIG51bGxwdHI7CisgICAgfQorICAgIAorICAgIGJvb2wgaXNDYXRjaEhhbmRsZXIoKSBj
b25zdCB7IHJldHVybiB0eXBlKCkgPT0gSGFuZGxlclR5cGU6OkNhdGNoOyB9CisgICAgCiAgICAg
dWludDMyX3Qgc3RhcnQ7CiAgICAgdWludDMyX3QgZW5kOwogICAgIHVpbnQzMl90IHRhcmdldDsK
LSAgICB1aW50MzJfdCBzY29wZURlcHRoOworICAgIHVpbnQzMl90IHNjb3BlRGVwdGggOiAzMDsK
KyAgICB1aW50MzJfdCB0eXBlQml0cyA6IDI7IC8vIEhhbmRsZXJUeXBlCiB9OwogCiBzdHJ1Y3Qg
VW5saW5rZWRIYW5kbGVySW5mbyA6IHB1YmxpYyBIYW5kbGVySW5mb0Jhc2UgewotICAgIFVubGlu
a2VkSGFuZGxlckluZm8odWludDMyX3Qgc3RhcnQsIHVpbnQzMl90IGVuZCwgdWludDMyX3QgdGFy
Z2V0LCB1aW50MzJfdCBzY29wZURlcHRoKQorICAgIFVubGlua2VkSGFuZGxlckluZm8odWludDMy
X3Qgc3RhcnQsIHVpbnQzMl90IGVuZCwgdWludDMyX3QgdGFyZ2V0LCB1aW50MzJfdCBzY29wZURl
cHRoLCBIYW5kbGVyVHlwZSBoYW5kbGVyVHlwZSkKICAgICB7CiAgICAgICAgIHRoaXMtPnN0YXJ0
ID0gc3RhcnQ7CiAgICAgICAgIHRoaXMtPmVuZCA9IGVuZDsKICAgICAgICAgdGhpcy0+dGFyZ2V0
ID0gdGFyZ2V0OwogICAgICAgICB0aGlzLT5zY29wZURlcHRoID0gc2NvcGVEZXB0aDsKKyAgICAg
ICAgc2V0VHlwZShoYW5kbGVyVHlwZSk7CisgICAgICAgIEFTU0VSVCh0eXBlKCkgPT0gaGFuZGxl
clR5cGUpOwogICAgIH0KIH07CiAKQEAgLTU0LDYgKzg0LDcgQEAgc3RydWN0IEhhbmRsZXJJbmZv
IDogcHVibGljIEhhbmRsZXJJbmZvQgogICAgICAgICBlbmQgPSB1bmxpbmtlZEluZm8uZW5kOwog
ICAgICAgICB0YXJnZXQgPSB1bmxpbmtlZEluZm8udGFyZ2V0OwogICAgICAgICBzY29wZURlcHRo
ID0gdW5saW5rZWRJbmZvLnNjb3BlRGVwdGggKyBub25Mb2NhbFNjb3BlRGVwdGg7CisgICAgICAg
IHR5cGVCaXRzID0gdW5saW5rZWRJbmZvLnR5cGVCaXRzOwogICAgIH0KIAogI2lmIEVOQUJMRShK
SVQpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2Vu
ZXJhdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBp
bGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcAkocmV2aXNpb24gMTg1MDcyKQorKysgU291cmNlL0ph
dmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9CeXRlY29kZUdlbmVyYXRvci5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTEyOSw4ICsxMjksMTAgQEAgUGFyc2VyRXJyb3IgQnl0ZWNvZGVHZW5lcmF0b3I6
OmdlbmVyYXRlKAogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIAogICAgICAgICBBU1NF
UlQocmFuZ2UudHJ5RGF0YS0+dGFyZ2V0U2NvcGVEZXB0aCAhPSBVSU5UX01BWCk7CisgICAgICAg
IEFTU0VSVChyYW5nZS50cnlEYXRhLT5oYW5kbGVyVHlwZSAhPSBIYW5kbGVyVHlwZTo6SWxsZWdh
bCk7CiAgICAgICAgIFVubGlua2VkSGFuZGxlckluZm8gaW5mbyhzdGF0aWNfY2FzdDx1aW50MzJf
dD4oc3RhcnQpLCBzdGF0aWNfY2FzdDx1aW50MzJfdD4oZW5kKSwKLSAgICAgICAgICAgIHN0YXRp
Y19jYXN0PHVpbnQzMl90PihyYW5nZS50cnlEYXRhLT50YXJnZXQtPmJpbmQoKSksIHJhbmdlLnRy
eURhdGEtPnRhcmdldFNjb3BlRGVwdGgpOworICAgICAgICAgICAgc3RhdGljX2Nhc3Q8dWludDMy
X3Q+KHJhbmdlLnRyeURhdGEtPnRhcmdldC0+YmluZCgpKSwgcmFuZ2UudHJ5RGF0YS0+dGFyZ2V0
U2NvcGVEZXB0aCwKKyAgICAgICAgICAgIHJhbmdlLnRyeURhdGEtPmhhbmRsZXJUeXBlKTsKICAg
ICAgICAgbV9jb2RlQmxvY2stPmFkZEV4Y2VwdGlvbkhhbmRsZXIoaW5mbyk7CiAgICAgfQogICAg
IApAQCAtMjUxMyw2ICsyNTE1LDcgQEAgVHJ5RGF0YSogQnl0ZWNvZGVHZW5lcmF0b3I6OnB1c2hU
cnkoTGFiZQogICAgIFRyeURhdGEgdHJ5RGF0YTsKICAgICB0cnlEYXRhLnRhcmdldCA9IG5ld0xh
YmVsKCk7CiAgICAgdHJ5RGF0YS50YXJnZXRTY29wZURlcHRoID0gVUlOVF9NQVg7CisgICAgdHJ5
RGF0YS5oYW5kbGVyVHlwZSA9IEhhbmRsZXJUeXBlOjpJbGxlZ2FsOwogICAgIG1fdHJ5RGF0YS5h
cHBlbmQodHJ5RGF0YSk7CiAgICAgVHJ5RGF0YSogcmVzdWx0ID0gJm1fdHJ5RGF0YS5sYXN0KCk7
CiAgICAgCkBAIC0yNTI1LDcgKzI1MjgsNyBAQCBUcnlEYXRhKiBCeXRlY29kZUdlbmVyYXRvcjo6
cHVzaFRyeShMYWJlCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotUmVnaXN0ZXJJRCogQnl0ZWNv
ZGVHZW5lcmF0b3I6OnBvcFRyeUFuZEVtaXRDYXRjaChUcnlEYXRhKiB0cnlEYXRhLCBSZWdpc3Rl
cklEKiB0YXJnZXRSZWdpc3RlciwgTGFiZWwqIGVuZCkKK1JlZ2lzdGVySUQqIEJ5dGVjb2RlR2Vu
ZXJhdG9yOjpwb3BUcnlBbmRFbWl0Q2F0Y2goVHJ5RGF0YSogdHJ5RGF0YSwgUmVnaXN0ZXJJRCog
dGFyZ2V0UmVnaXN0ZXIsIExhYmVsKiBlbmQsIEhhbmRsZXJUeXBlIGhhbmRsZXJUeXBlKQogewog
ICAgIG1fdXNlc0V4Y2VwdGlvbnMgPSB0cnVlOwogICAgIApAQCAtMjU0MCw2ICsyNTQzLDcgQEAg
UmVnaXN0ZXJJRCogQnl0ZWNvZGVHZW5lcmF0b3I6OnBvcFRyeUFuZAogICAgIAogICAgIGVtaXRM
YWJlbCh0cnlSYW5nZS50cnlEYXRhLT50YXJnZXQuZ2V0KCkpOwogICAgIHRyeVJhbmdlLnRyeURh
dGEtPnRhcmdldFNjb3BlRGVwdGggPSBtX2xvY2FsU2NvcGVEZXB0aDsKKyAgICB0cnlSYW5nZS50
cnlEYXRhLT5oYW5kbGVyVHlwZSA9IGhhbmRsZXJUeXBlOwogCiAgICAgZW1pdE9wY29kZShvcF9j
YXRjaCk7CiAgICAgaW5zdHJ1Y3Rpb25zKCkuYXBwZW5kKHRhcmdldFJlZ2lzdGVyLT5pbmRleCgp
KTsKQEAgLTI3NTYsNyArMjc2MCw3IEBAIHZvaWQgQnl0ZWNvZGVHZW5lcmF0b3I6OmVtaXRFbnVt
ZXJhdGlvbigKICAgICAgICAgLy8gSXRlcmF0b3JDbG9zZSBzZXF1ZW5jZSBmb3IgdGhyb3ctZWQg
Y29udHJvbCBmbG93LgogICAgICAgICB7CiAgICAgICAgICAgICBSZWZQdHI8TGFiZWw+IGNhdGNo
SGVyZSA9IGVtaXRMYWJlbChuZXdMYWJlbCgpLmdldCgpKTsKLSAgICAgICAgICAgIFJlZlB0cjxS
ZWdpc3RlcklEPiBleGNlcHRpb25SZWdpc3RlciA9IHBvcFRyeUFuZEVtaXRDYXRjaCh0cnlEYXRh
LCBuZXdUZW1wb3JhcnkoKSwgY2F0Y2hIZXJlLmdldCgpKTsKKyAgICAgICAgICAgIFJlZlB0cjxS
ZWdpc3RlcklEPiBleGNlcHRpb25SZWdpc3RlciA9IHBvcFRyeUFuZEVtaXRDYXRjaCh0cnlEYXRh
LCBuZXdUZW1wb3JhcnkoKSwgY2F0Y2hIZXJlLmdldCgpLCBIYW5kbGVyVHlwZTo6U3ludGhlc2l6
ZWRGaW5hbGx5KTsKICAgICAgICAgICAgIFJlZlB0cjxMYWJlbD4gY2F0Y2hEb25lID0gbmV3TGFi
ZWwoKTsKIAogICAgICAgICAgICAgUmVmUHRyPFJlZ2lzdGVySUQ+IHJldHVybk1ldGhvZCA9IGVt
aXRHZXRCeUlkKG5ld1RlbXBvcmFyeSgpLCBpdGVyYXRvci5nZXQoKSwgcHJvcGVydHlOYW1lcygp
LnJldHVybktleXdvcmQpOwpAQCAtMjc3NCw3ICsyNzc4LDcgQEAgdm9pZCBCeXRlY29kZUdlbmVy
YXRvcjo6ZW1pdEVudW1lcmF0aW9uKAogICAgICAgICAgICAgZW1pdFRocm93KGV4Y2VwdGlvblJl
Z2lzdGVyLmdldCgpKTsKIAogICAgICAgICAgICAgLy8gQWJzb3JiIGV4Y2VwdGlvbi4KLSAgICAg
ICAgICAgIHBvcFRyeUFuZEVtaXRDYXRjaChyZXR1cm5DYWxsVHJ5RGF0YSwgbmV3VGVtcG9yYXJ5
KCksIGNhdGNoRG9uZS5nZXQoKSk7CisgICAgICAgICAgICBwb3BUcnlBbmRFbWl0Q2F0Y2gocmV0
dXJuQ2FsbFRyeURhdGEsIG5ld1RlbXBvcmFyeSgpLCBjYXRjaERvbmUuZ2V0KCksIEhhbmRsZXJU
eXBlOjpTeW50aGVzaXplZEZpbmFsbHkpOwogICAgICAgICAgICAgZW1pdFRocm93KGV4Y2VwdGlv
blJlZ2lzdGVyLmdldCgpKTsKICAgICAgICAgfQogCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L0phdmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9CeXRlY29kZUdlbmVyYXRvci5oCShyZXZpc2lv
biAxODUwNzIpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL0J5dGVjb2Rl
R2VuZXJhdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTE3NSw2ICsxNzUsNyBAQCBuYW1lc3BhY2Ug
SlNDIHsKICAgICBzdHJ1Y3QgVHJ5RGF0YSB7CiAgICAgICAgIFJlZlB0cjxMYWJlbD4gdGFyZ2V0
OwogICAgICAgICB1bnNpZ25lZCB0YXJnZXRTY29wZURlcHRoOworICAgICAgICBIYW5kbGVyVHlw
ZSBoYW5kbGVyVHlwZTsKICAgICB9OwogCiAgICAgc3RydWN0IFRyeUNvbnRleHQgewpAQCAtNTUy
LDcgKzU1Myw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICAvLyBTdGFydCBhIHRyeSBibG9j
ay4gJ3N0YXJ0JyBtdXN0IGhhdmUgYmVlbiBlbWl0dGVkLgogICAgICAgICBUcnlEYXRhKiBwdXNo
VHJ5KExhYmVsKiBzdGFydCk7CiAgICAgICAgIC8vIEVuZCBhIHRyeSBibG9jay4gJ2VuZCcgbXVz
dCBoYXZlIGJlZW4gZW1pdHRlZC4KLSAgICAgICAgUmVnaXN0ZXJJRCogcG9wVHJ5QW5kRW1pdENh
dGNoKFRyeURhdGEqLCBSZWdpc3RlcklEKiB0YXJnZXRSZWdpc3RlciwgTGFiZWwqIGVuZCk7Cisg
ICAgICAgIFJlZ2lzdGVySUQqIHBvcFRyeUFuZEVtaXRDYXRjaChUcnlEYXRhKiwgUmVnaXN0ZXJJ
RCogdGFyZ2V0UmVnaXN0ZXIsIExhYmVsKiBlbmQsIEhhbmRsZXJUeXBlKTsKIAogICAgICAgICB2
b2lkIGVtaXRUaHJvdyhSZWdpc3RlcklEKiBleGMpCiAgICAgICAgIHsgCkluZGV4OiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL05vZGVzQ29kZWdlbi5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9Ob2Rlc0NvZGVnZW4uY3BwCShy
ZXZpc2lvbiAxODUwNzIpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL05v
ZGVzQ29kZWdlbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI4ODEsNyArMjg4MSw3IEBAIHZvaWQg
VHJ5Tm9kZTo6ZW1pdEJ5dGVjb2RlKEJ5dGVjb2RlR2VuZXIKIAogICAgICAgICAvLyBVbmNhdWdo
dCBleGNlcHRpb24gcGF0aDogdGhlIGNhdGNoIGJsb2NrLgogICAgICAgICBSZWZQdHI8TGFiZWw+
IGhlcmUgPSBnZW5lcmF0b3IuZW1pdExhYmVsKGdlbmVyYXRvci5uZXdMYWJlbCgpLmdldCgpKTsK
LSAgICAgICAgUmVmUHRyPFJlZ2lzdGVySUQ+IGV4Y2VwdGlvblJlZ2lzdGVyID0gZ2VuZXJhdG9y
LnBvcFRyeUFuZEVtaXRDYXRjaCh0cnlEYXRhLCBnZW5lcmF0b3IubmV3VGVtcG9yYXJ5KCksIGhl
cmUuZ2V0KCkpOworICAgICAgICBSZWZQdHI8UmVnaXN0ZXJJRD4gZXhjZXB0aW9uUmVnaXN0ZXIg
PSBnZW5lcmF0b3IucG9wVHJ5QW5kRW1pdENhdGNoKHRyeURhdGEsIGdlbmVyYXRvci5uZXdUZW1w
b3JhcnkoKSwgaGVyZS5nZXQoKSwgSGFuZGxlclR5cGU6OkNhdGNoKTsKICAgICAgICAgCiAgICAg
ICAgIGlmIChtX2ZpbmFsbHlCbG9jaykgewogICAgICAgICAgICAgLy8gSWYgdGhlIGNhdGNoIGJs
b2NrIHRocm93cyBhbiBleGNlcHRpb24gYW5kIHdlIGhhdmUgYSBmaW5hbGx5IGJsb2NrLCB0aGVu
IHRoZSBmaW5hbGx5CkBAIC0yOTEyLDcgKzI5MTIsNyBAQCB2b2lkIFRyeU5vZGU6OmVtaXRCeXRl
Y29kZShCeXRlY29kZUdlbmVyCiAgICAgICAgIGdlbmVyYXRvci5lbWl0SnVtcChmaW5hbGx5RW5k
TGFiZWwuZ2V0KCkpOwogCiAgICAgICAgIC8vIFVuY2F1Z2h0IGV4Y2VwdGlvbiBwYXRoOiBpbnZv
a2UgdGhlIGZpbmFsbHkgYmxvY2ssIHRoZW4gcmUtdGhyb3cgdGhlIGV4Y2VwdGlvbi4KLSAgICAg
ICAgUmVmUHRyPFJlZ2lzdGVySUQ+IHRlbXBFeGNlcHRpb25SZWdpc3RlciA9IGdlbmVyYXRvci5w
b3BUcnlBbmRFbWl0Q2F0Y2godHJ5RGF0YSwgZ2VuZXJhdG9yLm5ld1RlbXBvcmFyeSgpLCBwcmVG
aW5hbGx5TGFiZWwuZ2V0KCkpOworICAgICAgICBSZWZQdHI8UmVnaXN0ZXJJRD4gdGVtcEV4Y2Vw
dGlvblJlZ2lzdGVyID0gZ2VuZXJhdG9yLnBvcFRyeUFuZEVtaXRDYXRjaCh0cnlEYXRhLCBnZW5l
cmF0b3IubmV3VGVtcG9yYXJ5KCksIHByZUZpbmFsbHlMYWJlbC5nZXQoKSwgSGFuZGxlclR5cGU6
OkZpbmFsbHkpOwogICAgICAgICBnZW5lcmF0b3IuZW1pdFByb2ZpbGVDb250cm9sRmxvdyhmaW5h
bGx5U3RhcnRPZmZzZXQpOwogICAgICAgICBnZW5lcmF0b3IuZW1pdE5vZGUoZHN0LCBtX2ZpbmFs
bHlCbG9jayk7CiAgICAgICAgIGdlbmVyYXRvci5lbWl0VGhyb3codGVtcEV4Y2VwdGlvblJlZ2lz
dGVyLmdldCgpKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>