<?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>143962</bug_id>
          
          <creation_ts>2015-04-20 13:20:51 -0700</creation_ts>
          <short_desc>CRASH in operationCreateDirectArgumentsDuringExit()</short_desc>
          <delta_ts>2015-04-25 01:32:49 -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>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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Michael Saboff">msaboff</reporter>
          <assigned_to name="Filip Pizlo">fpizlo</assigned_to>
          <cc>barraclough</cc>
    
    <cc>benjamin</cc>
    
    <cc>ggaren</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mhahnenb</cc>
    
    <cc>mmirman</cc>
    
    <cc>msaboff</cc>
    
    <cc>nrotem</cc>
    
    <cc>oliver</cc>
    
    <cc>saam</cc>
    
    <cc>sam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1086885</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2015-04-20 13:20:51 -0700</bug_when>
    <thetext>Crash opening mail app on iCloud.com:

* thread #1: tid = 0x7d825, 0x00000001144fdb37, queue = &apos;com.apple.main-thread, stop reason = EXC_BAD_ACCESS (code=1, addre</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1086886</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2015-04-20 13:21:25 -0700</bug_when>
    <thetext>&lt;rdar://problem/20621589&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087601</commentid>
    <comment_count>2</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2015-04-22 14:58:11 -0700</bug_when>
    <thetext>&lt;rdar://problem/20492150&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1088320</commentid>
    <comment_count>3</comment_count>
      <attachid>251572</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-04-24 14:08:15 -0700</bug_when>
    <thetext>Created attachment 251572
work in progress

Roughly, I&apos;m making it so that the OSR exit compiler tracks liveness of constant-like things.  This allows for a bunch of simplifications and should fix this bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1088325</commentid>
    <comment_count>4</comment_count>
      <attachid>251573</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-04-24 14:26:20 -0700</bug_when>
    <thetext>Created attachment 251573
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1088351</commentid>
    <comment_count>5</comment_count>
      <attachid>251573</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2015-04-24 15:05:27 -0700</bug_when>
    <thetext>Comment on attachment 251573
the patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1088526</commentid>
    <comment_count>6</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-04-25 01:32:49 -0700</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/183307</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>251572</attachid>
            <date>2015-04-24 14:08:15 -0700</date>
            <delta_ts>2015-04-24 14:26:20 -0700</delta_ts>
            <desc>work in progress</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>10108</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHR2VuZXJhdGlvbkluZm8uaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0dlbmVyYXRpb25JbmZvLmgJ
KHJldmlzaW9uIDE4MzI3NykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHR2VuZXJh
dGlvbkluZm8uaAkod29ya2luZyBjb3B5KQpAQCAtMTUzLDggKzE1Myw2IEBAIHB1YmxpYzoKICAg
ICAKICAgICB2b2lkIG5vdGljZU9TUkJpcnRoKFZhcmlhYmxlRXZlbnRTdHJlYW0mIHN0cmVhbSwg
Tm9kZSogbm9kZSwgVmlydHVhbFJlZ2lzdGVyIHZpcnR1YWxSZWdpc3RlcikKICAgICB7Ci0gICAg
ICAgIGlmIChtX2lzQ29uc3RhbnQpCi0gICAgICAgICAgICByZXR1cm47CiAgICAgICAgIGlmICht
X25vZGUgIT0gbm9kZSkKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgaWYgKCFhbGl2ZSgp
KQpAQCAtMTY0LDcgKzE2Miw5IEBAIHB1YmxpYzoKICAgICAgICAgCiAgICAgICAgIG1fYm9ybkZv
ck9TUiA9IHRydWU7CiAgICAgICAgIAotICAgICAgICBpZiAobV9yZWdpc3RlckZvcm1hdCAhPSBE
YXRhRm9ybWF0Tm9uZSkKKyAgICAgICAgaWYgKG1faXNDb25zdGFudCkKKyAgICAgICAgICAgIGFw
cGVuZEJpcnRoKHN0cmVhbSk7CisgICAgICAgIGVsc2UgaWYgKG1fcmVnaXN0ZXJGb3JtYXQgIT0g
RGF0YUZvcm1hdE5vbmUpCiAgICAgICAgICAgICBhcHBlbmRGaWxsKEJpcnRoVG9GaWxsLCBzdHJl
YW0pOwogICAgICAgICBlbHNlIGlmIChtX3NwaWxsRm9ybWF0ICE9IERhdGFGb3JtYXROb25lKQog
ICAgICAgICAgICAgYXBwZW5kU3BpbGwoQmlydGhUb1NwaWxsLCBzdHJlYW0sIHZpcnR1YWxSZWdp
c3Rlcik7CkBAIC0zNzksNiArMzc5LDExIEBAIHB1YmxpYzoKICAgICB9CiAKIHByaXZhdGU6Cisg
ICAgdm9pZCBhcHBlbmRCaXJ0aChWYXJpYWJsZUV2ZW50U3RyZWFtJiBzdHJlYW0pCisgICAgewor
ICAgICAgICBzdHJlYW0uYXBwZW5kQW5kTG9nKFZhcmlhYmxlRXZlbnQ6OmJpcnRoKE1pbmlmaWVk
SUQobV9ub2RlKSkpOworICAgIH0KKyAgICAKICAgICB2b2lkIGFwcGVuZEZpbGwoVmFyaWFibGVF
dmVudEtpbmQga2luZCwgVmFyaWFibGVFdmVudFN0cmVhbSYgc3RyZWFtKQogICAgIHsKICAgICAg
ICAgQVNTRVJUKG1fYm9ybkZvck9TUik7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR1NwZWN1bGF0aXZlSklULmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvZGZnL0RGR1NwZWN1bGF0aXZlSklULmNwcAkocmV2aXNpb24gMTgzMjc3KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVC5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTE0MjgsMzMgKzE0MjgsMjkgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZUN1cnJl
bnRCbG9jawogICAgICAgICBtX2NvZGVPcmlnaW5Gb3JFeGl0VGFyZ2V0ID0gbV9jdXJyZW50Tm9k
ZS0+b3JpZ2luLmZvckV4aXQ7CiAgICAgICAgIG1fY29kZU9yaWdpbkZvckV4aXRQcm9maWxlID0g
bV9jdXJyZW50Tm9kZS0+b3JpZ2luLnNlbWFudGljOwogICAgICAgICBtX2xhc3RHZW5lcmF0ZWRO
b2RlID0gbV9jdXJyZW50Tm9kZS0+b3AoKTsKLSAgICAgICAgaWYgKCFtX2N1cnJlbnROb2RlLT5z
aG91bGRHZW5lcmF0ZSgpKSB7Ci0gICAgICAgICAgICBpZiAoYmVsb25nc0luTWluaWZpZWRHcmFw
aChtX2N1cnJlbnROb2RlLT5vcCgpKSkKLSAgICAgICAgICAgICAgICBtX21pbmlmaWVkR3JhcGgt
PmFwcGVuZChNaW5pZmllZE5vZGU6OmZyb21Ob2RlKG1fY3VycmVudE5vZGUpKTsKLSAgICAgICAg
fSBlbHNlIHsKLSAgICAgICAgICAgIGlmICh2ZXJib3NlQ29tcGlsYXRpb25FbmFibGVkKCkpIHsK
LSAgICAgICAgICAgICAgICBkYXRhTG9nRigKLSAgICAgICAgICAgICAgICAgICAgIlNwZWN1bGF0
aXZlSklUIGdlbmVyYXRpbmcgTm9kZSBAJWQgKGJjIyV1KSBhdCBKSVQgb2Zmc2V0IDB4JXgiLAot
ICAgICAgICAgICAgICAgICAgICAoaW50KW1fY3VycmVudE5vZGUtPmluZGV4KCksCi0gICAgICAg
ICAgICAgICAgICAgIG1fY3VycmVudE5vZGUtPm9yaWdpbi5zZW1hbnRpYy5ieXRlY29kZUluZGV4
LCBtX2ppdC5kZWJ1Z09mZnNldCgpKTsKLSAgICAgICAgICAgICAgICBkYXRhTG9nKCJcbiIpOwot
ICAgICAgICAgICAgfQotICAgICAgICAgICAgCi0gICAgICAgICAgICBjb21waWxlKG1fY3VycmVu
dE5vZGUpOwotCisgICAgICAgIAorICAgICAgICBBU1NFUlQobV9jdXJyZW50Tm9kZS0+c2hvdWxk
R2VuZXJhdGUoKSk7CisgICAgICAgIAorICAgICAgICBpZiAodmVyYm9zZUNvbXBpbGF0aW9uRW5h
YmxlZCgpKSB7CisgICAgICAgICAgICBkYXRhTG9nRigKKyAgICAgICAgICAgICAgICAiU3BlY3Vs
YXRpdmVKSVQgZ2VuZXJhdGluZyBOb2RlIEAlZCAoYmMjJXUpIGF0IEpJVCBvZmZzZXQgMHgleCIs
CisgICAgICAgICAgICAgICAgKGludCltX2N1cnJlbnROb2RlLT5pbmRleCgpLAorICAgICAgICAg
ICAgICAgIG1fY3VycmVudE5vZGUtPm9yaWdpbi5zZW1hbnRpYy5ieXRlY29kZUluZGV4LCBtX2pp
dC5kZWJ1Z09mZnNldCgpKTsKKyAgICAgICAgICAgIGRhdGFMb2coIlxuIik7CisgICAgICAgIH0K
KyAgICAgICAgCisgICAgICAgIGNvbXBpbGUobV9jdXJyZW50Tm9kZSk7CisgICAgICAgIAorICAg
ICAgICBpZiAoYmVsb25nc0luTWluaWZpZWRHcmFwaChtX2N1cnJlbnROb2RlLT5vcCgpKSkKKyAg
ICAgICAgICAgIG1fbWluaWZpZWRHcmFwaC0+YXBwZW5kKE1pbmlmaWVkTm9kZTo6ZnJvbU5vZGUo
bV9jdXJyZW50Tm9kZSkpOworICAgICAgICAKICNpZiBFTkFCTEUoREZHX1JFR0lTVEVSX0FMTE9D
QVRJT05fVkFMSURBVElPTikKLSAgICAgICAgICAgIG1faml0LmNsZWFyUmVnaXN0ZXJBbGxvY2F0
aW9uT2Zmc2V0cygpOworICAgICAgICBtX2ppdC5jbGVhclJlZ2lzdGVyQWxsb2NhdGlvbk9mZnNl
dHMoKTsKICNlbmRpZgotCi0gICAgICAgICAgICBpZiAoIW1fY29tcGlsZU9rYXkpIHsKLSAgICAg
ICAgICAgICAgICBiYWlsKERGR0JhaWxlZEF0RW5kT2ZOb2RlKTsKLSAgICAgICAgICAgICAgICBy
ZXR1cm47Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGlmIChiZWxv
bmdzSW5NaW5pZmllZEdyYXBoKG1fY3VycmVudE5vZGUtPm9wKCkpKSB7Ci0gICAgICAgICAgICAg
ICAgbV9taW5pZmllZEdyYXBoLT5hcHBlbmQoTWluaWZpZWROb2RlOjpmcm9tTm9kZShtX2N1cnJl
bnROb2RlKSk7Ci0gICAgICAgICAgICAgICAgbm90aWNlT1NSQmlydGgobV9jdXJyZW50Tm9kZSk7
Ci0gICAgICAgICAgICB9CisgICAgICAgIAorICAgICAgICBpZiAoIW1fY29tcGlsZU9rYXkpIHsK
KyAgICAgICAgICAgIGJhaWwoREZHQmFpbGVkQXRFbmRPZk5vZGUpOworICAgICAgICAgICAgcmV0
dXJuOwogICAgICAgICB9CiAgICAgICAgIAogICAgICAgICAvLyBNYWtlIHN1cmUgdGhhdCB0aGUg
YWJzdHJhY3Qgc3RhdGUgaXMgcmVtYXRlcmlhbGl6ZWQgZm9yIHRoZSBuZXh0IG5vZGUuCkluZGV4
OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1ZhcmlhYmxlRXZlbnQuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHVmFyaWFibGVFdmVudC5jcHAJKHJl
dmlzaW9uIDE4MzI3NykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHVmFyaWFibGVF
dmVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ2LDYgKzQ2LDkgQEAgdm9pZCBWYXJpYWJsZUV2
ZW50OjpkdW1wKFByaW50U3RyZWFtJiBvdQogICAgIGNhc2UgQmlydGhUb1NwaWxsOgogICAgICAg
ICBkdW1wU3BpbGxJbmZvKCJCaXJ0aFRvU3BpbGwiLCBvdXQpOwogICAgICAgICBicmVhazsKKyAg
ICBjYXNlIEJpcnRoOgorICAgICAgICBvdXQucHJpbnQoIkJpcnRoKCIsIGlkKCksICIpIik7Cisg
ICAgICAgIGJyZWFrOwogICAgIGNhc2UgRmlsbDoKICAgICAgICAgZHVtcEZpbGxJbmZvKCJGaWxs
Iiwgb3V0KTsKICAgICAgICAgYnJlYWs7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR1ZhcmlhYmxlRXZlbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
ZGZnL0RGR1ZhcmlhYmxlRXZlbnQuaAkocmV2aXNpb24gMTgzMjc3KQorKysgU291cmNlL0phdmFT
Y3JpcHRDb3JlL2RmZy9ERkdWYXJpYWJsZUV2ZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTQ3LDYg
KzQ3LDcgQEAgZW51bSBWYXJpYWJsZUV2ZW50S2luZCB7CiAgICAgLy8gdGhhdCB3ZSBzdGFydCB0
byBjYXJlIGFib3V0IHRoaXMgbm9kZS4KICAgICBCaXJ0aFRvRmlsbCwKICAgICBCaXJ0aFRvU3Bp
bGwsCisgICAgQmlydGgsCiAgICAgCiAgICAgLy8gRXZlbnRzIHJlbGF0ZWQgdG8gaG93IGEgbm9k
ZSBpcyByZXByZXNlbnRlZC4KICAgICBGaWxsLApAQCAtMTMzLDYgKzEzNCwxNCBAQCBwdWJsaWM6
CiAgICAgICAgIHJldHVybiBldmVudDsKICAgICB9CiAgICAgCisgICAgc3RhdGljIFZhcmlhYmxl
RXZlbnQgYmlydGgoTWluaWZpZWRJRCBpZCkKKyAgICB7CisgICAgICAgIFZhcmlhYmxlRXZlbnQg
ZXZlbnQ7CisgICAgICAgIGV2ZW50Lm1fd2hpY2guaWQgPSBpZC5iaXRzKCk7CisgICAgICAgIGV2
ZW50Lm1fa2luZCA9IEJpcnRoOworICAgICAgICByZXR1cm4gZXZlbnQ7CisgICAgfQorICAgIAog
ICAgIHN0YXRpYyBWYXJpYWJsZUV2ZW50IHNwaWxsKFZhcmlhYmxlRXZlbnRLaW5kIGtpbmQsIE1p
bmlmaWVkSUQgaWQsIFZpcnR1YWxSZWdpc3RlciB2aXJ0dWFsUmVnaXN0ZXIsIERhdGFGb3JtYXQg
Zm9ybWF0KQogICAgIHsKICAgICAgICAgQVNTRVJUKGtpbmQgPT0gQmlydGhUb1NwaWxsIHx8IGtp
bmQgPT0gU3BpbGwpOwpAQCAtMTc5LDE3ICsxODgsMTcgQEAgcHVibGljOgogICAgIAogICAgIE1p
bmlmaWVkSUQgaWQoKSBjb25zdAogICAgIHsKLSAgICAgICAgQVNTRVJUKG1fa2luZCA9PSBCaXJ0
aFRvRmlsbCB8fCBtX2tpbmQgPT0gRmlsbAotICAgICAgICAgICAgICAgfHwgbV9raW5kID09IEJp
cnRoVG9TcGlsbCB8fCBtX2tpbmQgPT0gU3BpbGwKLSAgICAgICAgICAgICAgIHx8IG1fa2luZCA9
PSBEZWF0aCB8fCBtX2tpbmQgPT0gTW92SGludEV2ZW50KTsKKyAgICAgICAgQVNTRVJUKAorICAg
ICAgICAgICAgbV9raW5kID09IEJpcnRoVG9GaWxsIHx8IG1fa2luZCA9PSBGaWxsIHx8IG1fa2lu
ZCA9PSBCaXJ0aFRvU3BpbGwgfHwgbV9raW5kID09IFNwaWxsCisgICAgICAgICAgICB8fCBtX2tp
bmQgPT0gRGVhdGggfHwgbV9raW5kID09IE1vdkhpbnRFdmVudCB8fCBtX2tpbmQgPT0gQmlydGgp
OwogICAgICAgICByZXR1cm4gTWluaWZpZWRJRDo6ZnJvbUJpdHMobV93aGljaC5pZCk7CiAgICAg
fQogICAgIAogICAgIERhdGFGb3JtYXQgZGF0YUZvcm1hdCgpIGNvbnN0CiAgICAgewotICAgICAg
ICBBU1NFUlQobV9raW5kID09IEJpcnRoVG9GaWxsIHx8IG1fa2luZCA9PSBGaWxsCi0gICAgICAg
ICAgICAgICB8fCBtX2tpbmQgPT0gQmlydGhUb1NwaWxsIHx8IG1fa2luZCA9PSBTcGlsbAotICAg
ICAgICAgICAgICAgfHwgbV9raW5kID09IFNldExvY2FsRXZlbnQpOworICAgICAgICBBU1NFUlQo
CisgICAgICAgICAgICBtX2tpbmQgPT0gQmlydGhUb0ZpbGwgfHwgbV9raW5kID09IEZpbGwgfHwg
bV9raW5kID09IEJpcnRoVG9TcGlsbCB8fCBtX2tpbmQgPT0gU3BpbGwKKyAgICAgICAgICAgIHx8
IG1fa2luZCA9PSBTZXRMb2NhbEV2ZW50KTsKICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PERh
dGFGb3JtYXQ+KG1fZGF0YUZvcm1hdCk7CiAgICAgfQogICAgIApJbmRleDogU291cmNlL0phdmFT
Y3JpcHRDb3JlL2RmZy9ERkdWYXJpYWJsZUV2ZW50U3RyZWFtLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1ZhcmlhYmxlRXZlbnRTdHJlYW0uY3BwCShyZXZp
c2lvbiAxODMyNzcpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1ZhcmlhYmxlRXZl
bnRTdHJlYW0uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00OCwxMSArNDgsMTQgQEAgbmFtZXNwYWNl
IHsKIAogc3RydWN0IE1pbmlmaWVkR2VuZXJhdGlvbkluZm8gewogICAgIGJvb2wgZmlsbGVkOyAv
LyB0cnVlIC0+IGluIGdwci9mcHIvcGFpciwgZmFsc2UgLT4gc3BpbGxlZAorICAgIGJvb2wgYWxp
dmU7CiAgICAgVmFyaWFibGVSZXByZXNlbnRhdGlvbiB1OwogICAgIERhdGFGb3JtYXQgZm9ybWF0
OwogICAgIAogICAgIE1pbmlmaWVkR2VuZXJhdGlvbkluZm8oKQotICAgICAgICA6IGZvcm1hdChE
YXRhRm9ybWF0Tm9uZSkKKyAgICAgICAgOiBmaWxsZWQoZmFsc2UpCisgICAgICAgICwgYWxpdmUo
ZmFsc2UpCisgICAgICAgICwgZm9ybWF0KERhdGFGb3JtYXROb25lKQogICAgIHsKICAgICB9CiAg
ICAgCkBAIC02MiwxMyArNjUsMTkgQEAgc3RydWN0IE1pbmlmaWVkR2VuZXJhdGlvbkluZm8gewog
ICAgICAgICBjYXNlIEJpcnRoVG9GaWxsOgogICAgICAgICBjYXNlIEZpbGw6CiAgICAgICAgICAg
ICBmaWxsZWQgPSB0cnVlOworICAgICAgICAgICAgYWxpdmUgPSB0cnVlOwogICAgICAgICAgICAg
YnJlYWs7CiAgICAgICAgIGNhc2UgQmlydGhUb1NwaWxsOgogICAgICAgICBjYXNlIFNwaWxsOgog
ICAgICAgICAgICAgZmlsbGVkID0gZmFsc2U7CisgICAgICAgICAgICBhbGl2ZSA9IHRydWU7CiAg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBCaXJ0aDoKKyAgICAgICAgICAgIGFsaXZl
ID0gdHJ1ZTsKKyAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgY2FzZSBEZWF0aDoKICAgICAg
ICAgICAgIGZvcm1hdCA9IERhdGFGb3JtYXROb25lOworICAgICAgICAgICAgYWxpdmUgPSBmYWxz
ZTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgIHJl
dHVybjsKQEAgLTE0Niw3ICsxNTUsOCBAQCB2b2lkIFZhcmlhYmxlRXZlbnRTdHJlYW06OnJlY29u
c3RydWN0KAogICAgICAgICAgICAgLy8gbm90aGluZyB0byBkby4KICAgICAgICAgICAgIGJyZWFr
OwogICAgICAgICBjYXNlIEJpcnRoVG9GaWxsOgotICAgICAgICBjYXNlIEJpcnRoVG9TcGlsbDog
eworICAgICAgICBjYXNlIEJpcnRoVG9TcGlsbDoKKyAgICAgICAgY2FzZSBCaXJ0aDogewogICAg
ICAgICAgICAgTWluaWZpZWRHZW5lcmF0aW9uSW5mbyBpbmZvOwogICAgICAgICAgICAgaW5mby51
cGRhdGUoZXZlbnQpOwogICAgICAgICAgICAgZ2VuZXJhdGlvbkluZm9zLmFkZChldmVudC5pZCgp
LCBpbmZvKTsKQEAgLTE4NSwxNCArMTk1LDE0IEBAIHZvaWQgVmFyaWFibGVFdmVudFN0cmVhbTo6
cmVjb25zdHJ1Y3QoCiAgICAgICAgIAogICAgICAgICBBU1NFUlQoc291cmNlLmtpbmQoKSA9PSBI
YXZlTm9kZSk7CiAgICAgICAgIE1pbmlmaWVkTm9kZSogbm9kZSA9IGdyYXBoLmF0KHNvdXJjZS5p
ZCgpKTsKLSAgICAgICAgaWYgKHRyeVRvU2V0Q29uc3RhbnRSZWNvdmVyeSh2YWx1ZVJlY292ZXJp
ZXNbaV0sIG5vZGUpKQotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIAogICAgICAgICBN
aW5pZmllZEdlbmVyYXRpb25JbmZvIGluZm8gPSBnZW5lcmF0aW9uSW5mb3MuZ2V0KHNvdXJjZS5p
ZCgpKTsKLSAgICAgICAgaWYgKGluZm8uZm9ybWF0ID09IERhdGFGb3JtYXROb25lKSB7CisgICAg
ICAgIGlmICghaW5mby5hbGl2ZSkgewogICAgICAgICAgICAgdmFsdWVSZWNvdmVyaWVzW2ldID0g
VmFsdWVSZWNvdmVyeTo6Y29uc3RhbnQoanNVbmRlZmluZWQoKSk7CiAgICAgICAgICAgICBjb250
aW51ZTsKICAgICAgICAgfQorCisgICAgICAgIGlmICh0cnlUb1NldENvbnN0YW50UmVjb3Zlcnko
dmFsdWVSZWNvdmVyaWVzW2ldLCBub2RlKSkKKyAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAg
ICAKICAgICAgICAgQVNTRVJUKGluZm8uZm9ybWF0ICE9IERhdGFGb3JtYXROb25lKTsKICAgICAg
ICAgCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvc3RyZXNzL3BoYW50b20tZGly
ZWN0LWFyZ3VtZW50cy1jbG9iYmVyLWFyZ3VtZW50LWNvdW50LmpzCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3MvcGhhbnRvbS1kaXJlY3QtYXJndW1lbnRz
LWNsb2JiZXItYXJndW1lbnQtY291bnQuanMJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdHMvc3RyZXNzL3BoYW50b20tZGlyZWN0LWFyZ3VtZW50cy1jbG9iYmVyLWFy
Z3VtZW50LWNvdW50LmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMjAgQEAKK2Z1bmN0aW9u
IGZvbygpIHsKKyAgICByZXR1cm4gZWZmZWN0ZnVsNDIuYXBwbHkodGhpcywgYXJndW1lbnRzKTsK
K30KKworZnVuY3Rpb24gYmFyKGEsIGIpIHsKKyAgICB2YXIgcmVzdWx0ID0gZm9vLmFwcGx5KHRo
aXMsIGIpOworICAgIHJldHVybiBbYSwgYSwgYSwgYSwgYSwgYSwgYSwgYSwgcmVzdWx0ICsgYV07
Cit9CisKK25vSW5saW5lKGJhcik7CisKK2ZvciAodmFyIGkgPSAwOyBpIDwgMTAwMDA7ICsraSkg
eworICAgIHZhciByZXN1bHQgPSAiIiArIGJhcigxLCBbXSk7CisgICAgaWYgKHJlc3VsdCAhPSAi
MSwxLDEsMSwxLDEsMSwxLDQzIikKKyAgICAgICAgdGhyb3cgIkVycm9yOiBiYWQgcmVzdWx0OiAi
ICsgcmVzdWx0OworfQorCit2YXIgcmVzdWx0ID0gIiIgKyBiYXIoMjE0NzQ4MzY0NywgW10pOwor
aWYgKHJlc3VsdCAhPSAiMjE0NzQ4MzY0NywyMTQ3NDgzNjQ3LDIxNDc0ODM2NDcsMjE0NzQ4MzY0
NywyMTQ3NDgzNjQ3LDIxNDc0ODM2NDcsMjE0NzQ4MzY0NywyMTQ3NDgzNjQ3LDIxNDc0ODM2ODki
KQorICAgIHRocm93ICJFcnJvcjogYmFkIHJlc3VsdCBhdCBlbmQ6ICIgKyByZXN1bHQ7CkluZGV4
OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvc3RyZXNzL3BoYW50b20tZGlyZWN0LWFyZ3Vt
ZW50cy1jbG9iYmVyLWNhbGxlZS5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvc3RyZXNzL3BoYW50b20tZGlyZWN0LWFyZ3VtZW50cy1jbG9iYmVyLWNhbGxlZS5q
cwkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3MvcGhh
bnRvbS1kaXJlY3QtYXJndW1lbnRzLWNsb2JiZXItY2FsbGVlLmpzCSh3b3JraW5nIGNvcHkpCkBA
IC0wLDAgKzEsMjEgQEAKK2Z1bmN0aW9uIGZvbygpIHsKKyAgICByZXR1cm4gZnVuY3Rpb24oKSB7
IHJldHVybiBlZmZlY3RmdWw0Mi5hcHBseSh0aGlzLCBhcmd1bWVudHMpIH07Cit9Citub0lubGlu
ZShmb28pOworCitmdW5jdGlvbiBiYXIoYSkgeworICAgIHZhciByZXN1bHQgPSBmb28oKSgpOwor
ICAgIHJldHVybiBbcmVzdWx0LCByZXN1bHQsIHJlc3VsdCwgcmVzdWx0LCByZXN1bHQsIHJlc3Vs
dCwgcmVzdWx0LCByZXN1bHQsIHJlc3VsdCArIGFdOworfQorCitub0lubGluZShiYXIpOworCitm
b3IgKHZhciBpID0gMDsgaSA8IDEwMDAwOyArK2kpIHsKKyAgICB2YXIgcmVzdWx0ID0gIiIgKyBi
YXIoMSk7CisgICAgaWYgKHJlc3VsdCAhPSAiNDIsNDIsNDIsNDIsNDIsNDIsNDIsNDIsNDMiKQor
ICAgICAgICB0aHJvdyAiRXJyb3I6IGJhZCByZXN1bHQ6ICIgKyByZXN1bHQ7Cit9CisKK3ZhciBy
ZXN1bHQgPSAiIiArIGJhcigyMTQ3NDgzNjQ3KTsKK2lmIChyZXN1bHQgIT0gIjQyLDQyLDQyLDQy
LDQyLDQyLDQyLDQyLDIxNDc0ODM2ODkiKQorICAgIHRocm93ICJFcnJvcjogYmFkIHJlc3VsdCBh
dCBlbmQ6ICIgKyByZXN1bHQ7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>251573</attachid>
            <date>2015-04-24 14:26:20 -0700</date>
            <delta_ts>2015-04-24 15:05:27 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>11776</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTgzMjgwKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM0IEBA
CisyMDE1LTA0LTI0ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
Q1JBU0ggaW4gb3BlcmF0aW9uQ3JlYXRlRGlyZWN0QXJndW1lbnRzRHVyaW5nRXhpdCgpCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDM5NjIKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIFdlIHNo
b3VsZG4ndCBhc3N1bWUgdGhhdCBjb25zdGFudC1saWtlIE9TUiBleGl0IHZhbHVlcyBhcmUgYWx3
YXlzIHJlY292ZXJhYmxlLiBUaGV5IGFyZSBvbmx5CisgICAgICAgIHJlY292ZXJhYmxlIHNvIGxv
bmcgYXMgdGhleSBhcmUgbGl2ZS4gVGhlcmVmb3JlLCBPU1IgZXhpdCBzaG91bGQgdHJhY2sgbGl2
ZW5lc3Mgb2YKKyAgICAgICAgY29uc3RhbnRzIGluc3RlYWQgb2YgYXNzdW1pbmcgdGhhdCB0aGV5
IGFyZSBhbHdheXMgbGl2ZS4KKworICAgICAgICAqIGRmZy9ERkdHZW5lcmF0aW9uSW5mby5oOgor
ICAgICAgICAoSlNDOjpERkc6OkdlbmVyYXRpb25JbmZvOjpub3RpY2VPU1JCaXJ0aCk6CisgICAg
ICAgIChKU0M6OkRGRzo6R2VuZXJhdGlvbkluZm86OmFwcGVuZEJpcnRoKToKKyAgICAgICAgKiBk
ZmcvREZHU3BlY3VsYXRpdmVKSVQuY3BwOgorICAgICAgICAoSlNDOjpERkc6OlNwZWN1bGF0aXZl
SklUOjpjb21waWxlQ3VycmVudEJsb2NrKToKKyAgICAgICAgKiBkZmcvREZHVmFyaWFibGVFdmVu
dC5jcHA6CisgICAgICAgIChKU0M6OkRGRzo6VmFyaWFibGVFdmVudDo6ZHVtcCk6CisgICAgICAg
ICogZGZnL0RGR1ZhcmlhYmxlRXZlbnQuaDoKKyAgICAgICAgKEpTQzo6REZHOjpWYXJpYWJsZUV2
ZW50OjpiaXJ0aCk6CisgICAgICAgIChKU0M6OkRGRzo6VmFyaWFibGVFdmVudDo6aWQpOgorICAg
ICAgICAoSlNDOjpERkc6OlZhcmlhYmxlRXZlbnQ6OmRhdGFGb3JtYXQpOgorICAgICAgICAqIGRm
Zy9ERkdWYXJpYWJsZUV2ZW50U3RyZWFtLmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpWYXJpYWJs
ZUV2ZW50U3RyZWFtOjpyZWNvbnN0cnVjdCk6CisgICAgICAgICogdGVzdHMvc3RyZXNzL3BoYW50
b20tZGlyZWN0LWFyZ3VtZW50cy1jbG9iYmVyLWFyZ3VtZW50LWNvdW50LmpzOiBBZGRlZC4KKyAg
ICAgICAgKGZvbyk6CisgICAgICAgIChiYXIpOgorICAgICAgICAqIHRlc3RzL3N0cmVzcy9waGFu
dG9tLWRpcmVjdC1hcmd1bWVudHMtY2xvYmJlci1jYWxsZWUuanM6IEFkZGVkLgorICAgICAgICAo
Zm9vKToKKyAgICAgICAgKGJhcik6CisKIDIwMTUtMDQtMjQgIE1hdHRoZXcgTWlybWFuICA8bW1p
cm1hbkBhcHBsZS5jb20+CiAKICAgICAgICAgTWFkZSBPYmplY3QucHJvdG90eXBlLl9fcHJvdG9f
XyBuYXRpdmUgZ2V0dGVyIGFuZCBzZXR0ZXIgY2hlY2sgdGhhdCB0aGlzIG9iamVjdCBub3QgbnVs
bCBvciB1bmRlZmluZWQKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHR2VuZXJh
dGlvbkluZm8uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0dl
bmVyYXRpb25JbmZvLmgJKHJldmlzaW9uIDE4MzI3NykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9kZmcvREZHR2VuZXJhdGlvbkluZm8uaAkod29ya2luZyBjb3B5KQpAQCAtMTUzLDggKzE1Myw2
IEBAIHB1YmxpYzoKICAgICAKICAgICB2b2lkIG5vdGljZU9TUkJpcnRoKFZhcmlhYmxlRXZlbnRT
dHJlYW0mIHN0cmVhbSwgTm9kZSogbm9kZSwgVmlydHVhbFJlZ2lzdGVyIHZpcnR1YWxSZWdpc3Rl
cikKICAgICB7Ci0gICAgICAgIGlmIChtX2lzQ29uc3RhbnQpCi0gICAgICAgICAgICByZXR1cm47
CiAgICAgICAgIGlmIChtX25vZGUgIT0gbm9kZSkKICAgICAgICAgICAgIHJldHVybjsKICAgICAg
ICAgaWYgKCFhbGl2ZSgpKQpAQCAtMTY0LDcgKzE2Miw5IEBAIHB1YmxpYzoKICAgICAgICAgCiAg
ICAgICAgIG1fYm9ybkZvck9TUiA9IHRydWU7CiAgICAgICAgIAotICAgICAgICBpZiAobV9yZWdp
c3RlckZvcm1hdCAhPSBEYXRhRm9ybWF0Tm9uZSkKKyAgICAgICAgaWYgKG1faXNDb25zdGFudCkK
KyAgICAgICAgICAgIGFwcGVuZEJpcnRoKHN0cmVhbSk7CisgICAgICAgIGVsc2UgaWYgKG1fcmVn
aXN0ZXJGb3JtYXQgIT0gRGF0YUZvcm1hdE5vbmUpCiAgICAgICAgICAgICBhcHBlbmRGaWxsKEJp
cnRoVG9GaWxsLCBzdHJlYW0pOwogICAgICAgICBlbHNlIGlmIChtX3NwaWxsRm9ybWF0ICE9IERh
dGFGb3JtYXROb25lKQogICAgICAgICAgICAgYXBwZW5kU3BpbGwoQmlydGhUb1NwaWxsLCBzdHJl
YW0sIHZpcnR1YWxSZWdpc3Rlcik7CkBAIC0zNzksNiArMzc5LDExIEBAIHB1YmxpYzoKICAgICB9
CiAKIHByaXZhdGU6CisgICAgdm9pZCBhcHBlbmRCaXJ0aChWYXJpYWJsZUV2ZW50U3RyZWFtJiBz
dHJlYW0pCisgICAgeworICAgICAgICBzdHJlYW0uYXBwZW5kQW5kTG9nKFZhcmlhYmxlRXZlbnQ6
OmJpcnRoKE1pbmlmaWVkSUQobV9ub2RlKSkpOworICAgIH0KKyAgICAKICAgICB2b2lkIGFwcGVu
ZEZpbGwoVmFyaWFibGVFdmVudEtpbmQga2luZCwgVmFyaWFibGVFdmVudFN0cmVhbSYgc3RyZWFt
KQogICAgIHsKICAgICAgICAgQVNTRVJUKG1fYm9ybkZvck9TUik7CkluZGV4OiBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklULmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklULmNwcAkocmV2aXNpb24gMTgz
Mjc3KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVC5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTE0MjgsMzMgKzE0MjgsMjkgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJ
VDo6Y29tcGlsZUN1cnJlbnRCbG9jawogICAgICAgICBtX2NvZGVPcmlnaW5Gb3JFeGl0VGFyZ2V0
ID0gbV9jdXJyZW50Tm9kZS0+b3JpZ2luLmZvckV4aXQ7CiAgICAgICAgIG1fY29kZU9yaWdpbkZv
ckV4aXRQcm9maWxlID0gbV9jdXJyZW50Tm9kZS0+b3JpZ2luLnNlbWFudGljOwogICAgICAgICBt
X2xhc3RHZW5lcmF0ZWROb2RlID0gbV9jdXJyZW50Tm9kZS0+b3AoKTsKLSAgICAgICAgaWYgKCFt
X2N1cnJlbnROb2RlLT5zaG91bGRHZW5lcmF0ZSgpKSB7Ci0gICAgICAgICAgICBpZiAoYmVsb25n
c0luTWluaWZpZWRHcmFwaChtX2N1cnJlbnROb2RlLT5vcCgpKSkKLSAgICAgICAgICAgICAgICBt
X21pbmlmaWVkR3JhcGgtPmFwcGVuZChNaW5pZmllZE5vZGU6OmZyb21Ob2RlKG1fY3VycmVudE5v
ZGUpKTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGlmICh2ZXJib3NlQ29tcGlsYXRp
b25FbmFibGVkKCkpIHsKLSAgICAgICAgICAgICAgICBkYXRhTG9nRigKLSAgICAgICAgICAgICAg
ICAgICAgIlNwZWN1bGF0aXZlSklUIGdlbmVyYXRpbmcgTm9kZSBAJWQgKGJjIyV1KSBhdCBKSVQg
b2Zmc2V0IDB4JXgiLAotICAgICAgICAgICAgICAgICAgICAoaW50KW1fY3VycmVudE5vZGUtPmlu
ZGV4KCksCi0gICAgICAgICAgICAgICAgICAgIG1fY3VycmVudE5vZGUtPm9yaWdpbi5zZW1hbnRp
Yy5ieXRlY29kZUluZGV4LCBtX2ppdC5kZWJ1Z09mZnNldCgpKTsKLSAgICAgICAgICAgICAgICBk
YXRhTG9nKCJcbiIpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgCi0gICAgICAgICAgICBj
b21waWxlKG1fY3VycmVudE5vZGUpOwotCisgICAgICAgIAorICAgICAgICBBU1NFUlQobV9jdXJy
ZW50Tm9kZS0+c2hvdWxkR2VuZXJhdGUoKSk7CisgICAgICAgIAorICAgICAgICBpZiAodmVyYm9z
ZUNvbXBpbGF0aW9uRW5hYmxlZCgpKSB7CisgICAgICAgICAgICBkYXRhTG9nRigKKyAgICAgICAg
ICAgICAgICAiU3BlY3VsYXRpdmVKSVQgZ2VuZXJhdGluZyBOb2RlIEAlZCAoYmMjJXUpIGF0IEpJ
VCBvZmZzZXQgMHgleCIsCisgICAgICAgICAgICAgICAgKGludCltX2N1cnJlbnROb2RlLT5pbmRl
eCgpLAorICAgICAgICAgICAgICAgIG1fY3VycmVudE5vZGUtPm9yaWdpbi5zZW1hbnRpYy5ieXRl
Y29kZUluZGV4LCBtX2ppdC5kZWJ1Z09mZnNldCgpKTsKKyAgICAgICAgICAgIGRhdGFMb2coIlxu
Iik7CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIGNvbXBpbGUobV9jdXJyZW50Tm9kZSk7
CisgICAgICAgIAorICAgICAgICBpZiAoYmVsb25nc0luTWluaWZpZWRHcmFwaChtX2N1cnJlbnRO
b2RlLT5vcCgpKSkKKyAgICAgICAgICAgIG1fbWluaWZpZWRHcmFwaC0+YXBwZW5kKE1pbmlmaWVk
Tm9kZTo6ZnJvbU5vZGUobV9jdXJyZW50Tm9kZSkpOworICAgICAgICAKICNpZiBFTkFCTEUoREZH
X1JFR0lTVEVSX0FMTE9DQVRJT05fVkFMSURBVElPTikKLSAgICAgICAgICAgIG1faml0LmNsZWFy
UmVnaXN0ZXJBbGxvY2F0aW9uT2Zmc2V0cygpOworICAgICAgICBtX2ppdC5jbGVhclJlZ2lzdGVy
QWxsb2NhdGlvbk9mZnNldHMoKTsKICNlbmRpZgotCi0gICAgICAgICAgICBpZiAoIW1fY29tcGls
ZU9rYXkpIHsKLSAgICAgICAgICAgICAgICBiYWlsKERGR0JhaWxlZEF0RW5kT2ZOb2RlKTsKLSAg
ICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAKLSAgICAg
ICAgICAgIGlmIChiZWxvbmdzSW5NaW5pZmllZEdyYXBoKG1fY3VycmVudE5vZGUtPm9wKCkpKSB7
Ci0gICAgICAgICAgICAgICAgbV9taW5pZmllZEdyYXBoLT5hcHBlbmQoTWluaWZpZWROb2RlOjpm
cm9tTm9kZShtX2N1cnJlbnROb2RlKSk7Ci0gICAgICAgICAgICAgICAgbm90aWNlT1NSQmlydGgo
bV9jdXJyZW50Tm9kZSk7Ci0gICAgICAgICAgICB9CisgICAgICAgIAorICAgICAgICBpZiAoIW1f
Y29tcGlsZU9rYXkpIHsKKyAgICAgICAgICAgIGJhaWwoREZHQmFpbGVkQXRFbmRPZk5vZGUpOwor
ICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAgICAgICAgIAogICAgICAgICAvLyBNYWtl
IHN1cmUgdGhhdCB0aGUgYWJzdHJhY3Qgc3RhdGUgaXMgcmVtYXRlcmlhbGl6ZWQgZm9yIHRoZSBu
ZXh0IG5vZGUuCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1ZhcmlhYmxlRXZl
bnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHVmFyaWFi
bGVFdmVudC5jcHAJKHJldmlzaW9uIDE4MzI3NykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9k
ZmcvREZHVmFyaWFibGVFdmVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ2LDYgKzQ2LDkgQEAg
dm9pZCBWYXJpYWJsZUV2ZW50OjpkdW1wKFByaW50U3RyZWFtJiBvdQogICAgIGNhc2UgQmlydGhU
b1NwaWxsOgogICAgICAgICBkdW1wU3BpbGxJbmZvKCJCaXJ0aFRvU3BpbGwiLCBvdXQpOwogICAg
ICAgICBicmVhazsKKyAgICBjYXNlIEJpcnRoOgorICAgICAgICBvdXQucHJpbnQoIkJpcnRoKCIs
IGlkKCksICIpIik7CisgICAgICAgIGJyZWFrOwogICAgIGNhc2UgRmlsbDoKICAgICAgICAgZHVt
cEZpbGxJbmZvKCJGaWxsIiwgb3V0KTsKICAgICAgICAgYnJlYWs7CkluZGV4OiBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR1ZhcmlhYmxlRXZlbnQuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvZGZnL0RGR1ZhcmlhYmxlRXZlbnQuaAkocmV2aXNpb24gMTgzMjc3KQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdWYXJpYWJsZUV2ZW50LmgJKHdvcmtpbmcg
Y29weSkKQEAgLTQ3LDYgKzQ3LDcgQEAgZW51bSBWYXJpYWJsZUV2ZW50S2luZCB7CiAgICAgLy8g
dGhhdCB3ZSBzdGFydCB0byBjYXJlIGFib3V0IHRoaXMgbm9kZS4KICAgICBCaXJ0aFRvRmlsbCwK
ICAgICBCaXJ0aFRvU3BpbGwsCisgICAgQmlydGgsCiAgICAgCiAgICAgLy8gRXZlbnRzIHJlbGF0
ZWQgdG8gaG93IGEgbm9kZSBpcyByZXByZXNlbnRlZC4KICAgICBGaWxsLApAQCAtMTMzLDYgKzEz
NCwxNCBAQCBwdWJsaWM6CiAgICAgICAgIHJldHVybiBldmVudDsKICAgICB9CiAgICAgCisgICAg
c3RhdGljIFZhcmlhYmxlRXZlbnQgYmlydGgoTWluaWZpZWRJRCBpZCkKKyAgICB7CisgICAgICAg
IFZhcmlhYmxlRXZlbnQgZXZlbnQ7CisgICAgICAgIGV2ZW50Lm1fd2hpY2guaWQgPSBpZC5iaXRz
KCk7CisgICAgICAgIGV2ZW50Lm1fa2luZCA9IEJpcnRoOworICAgICAgICByZXR1cm4gZXZlbnQ7
CisgICAgfQorICAgIAogICAgIHN0YXRpYyBWYXJpYWJsZUV2ZW50IHNwaWxsKFZhcmlhYmxlRXZl
bnRLaW5kIGtpbmQsIE1pbmlmaWVkSUQgaWQsIFZpcnR1YWxSZWdpc3RlciB2aXJ0dWFsUmVnaXN0
ZXIsIERhdGFGb3JtYXQgZm9ybWF0KQogICAgIHsKICAgICAgICAgQVNTRVJUKGtpbmQgPT0gQmly
dGhUb1NwaWxsIHx8IGtpbmQgPT0gU3BpbGwpOwpAQCAtMTc5LDE3ICsxODgsMTcgQEAgcHVibGlj
OgogICAgIAogICAgIE1pbmlmaWVkSUQgaWQoKSBjb25zdAogICAgIHsKLSAgICAgICAgQVNTRVJU
KG1fa2luZCA9PSBCaXJ0aFRvRmlsbCB8fCBtX2tpbmQgPT0gRmlsbAotICAgICAgICAgICAgICAg
fHwgbV9raW5kID09IEJpcnRoVG9TcGlsbCB8fCBtX2tpbmQgPT0gU3BpbGwKLSAgICAgICAgICAg
ICAgIHx8IG1fa2luZCA9PSBEZWF0aCB8fCBtX2tpbmQgPT0gTW92SGludEV2ZW50KTsKKyAgICAg
ICAgQVNTRVJUKAorICAgICAgICAgICAgbV9raW5kID09IEJpcnRoVG9GaWxsIHx8IG1fa2luZCA9
PSBGaWxsIHx8IG1fa2luZCA9PSBCaXJ0aFRvU3BpbGwgfHwgbV9raW5kID09IFNwaWxsCisgICAg
ICAgICAgICB8fCBtX2tpbmQgPT0gRGVhdGggfHwgbV9raW5kID09IE1vdkhpbnRFdmVudCB8fCBt
X2tpbmQgPT0gQmlydGgpOwogICAgICAgICByZXR1cm4gTWluaWZpZWRJRDo6ZnJvbUJpdHMobV93
aGljaC5pZCk7CiAgICAgfQogICAgIAogICAgIERhdGFGb3JtYXQgZGF0YUZvcm1hdCgpIGNvbnN0
CiAgICAgewotICAgICAgICBBU1NFUlQobV9raW5kID09IEJpcnRoVG9GaWxsIHx8IG1fa2luZCA9
PSBGaWxsCi0gICAgICAgICAgICAgICB8fCBtX2tpbmQgPT0gQmlydGhUb1NwaWxsIHx8IG1fa2lu
ZCA9PSBTcGlsbAotICAgICAgICAgICAgICAgfHwgbV9raW5kID09IFNldExvY2FsRXZlbnQpOwor
ICAgICAgICBBU1NFUlQoCisgICAgICAgICAgICBtX2tpbmQgPT0gQmlydGhUb0ZpbGwgfHwgbV9r
aW5kID09IEZpbGwgfHwgbV9raW5kID09IEJpcnRoVG9TcGlsbCB8fCBtX2tpbmQgPT0gU3BpbGwK
KyAgICAgICAgICAgIHx8IG1fa2luZCA9PSBTZXRMb2NhbEV2ZW50KTsKICAgICAgICAgcmV0dXJu
IHN0YXRpY19jYXN0PERhdGFGb3JtYXQ+KG1fZGF0YUZvcm1hdCk7CiAgICAgfQogICAgIApJbmRl
eDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdWYXJpYWJsZUV2ZW50U3RyZWFtLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1ZhcmlhYmxlRXZlbnRT
dHJlYW0uY3BwCShyZXZpc2lvbiAxODMyNzcpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR1ZhcmlhYmxlRXZlbnRTdHJlYW0uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00OCwxMSArNDgs
MTQgQEAgbmFtZXNwYWNlIHsKIAogc3RydWN0IE1pbmlmaWVkR2VuZXJhdGlvbkluZm8gewogICAg
IGJvb2wgZmlsbGVkOyAvLyB0cnVlIC0+IGluIGdwci9mcHIvcGFpciwgZmFsc2UgLT4gc3BpbGxl
ZAorICAgIGJvb2wgYWxpdmU7CiAgICAgVmFyaWFibGVSZXByZXNlbnRhdGlvbiB1OwogICAgIERh
dGFGb3JtYXQgZm9ybWF0OwogICAgIAogICAgIE1pbmlmaWVkR2VuZXJhdGlvbkluZm8oKQotICAg
ICAgICA6IGZvcm1hdChEYXRhRm9ybWF0Tm9uZSkKKyAgICAgICAgOiBmaWxsZWQoZmFsc2UpCisg
ICAgICAgICwgYWxpdmUoZmFsc2UpCisgICAgICAgICwgZm9ybWF0KERhdGFGb3JtYXROb25lKQog
ICAgIHsKICAgICB9CiAgICAgCkBAIC02MiwxMyArNjUsMTkgQEAgc3RydWN0IE1pbmlmaWVkR2Vu
ZXJhdGlvbkluZm8gewogICAgICAgICBjYXNlIEJpcnRoVG9GaWxsOgogICAgICAgICBjYXNlIEZp
bGw6CiAgICAgICAgICAgICBmaWxsZWQgPSB0cnVlOworICAgICAgICAgICAgYWxpdmUgPSB0cnVl
OwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgQmlydGhUb1NwaWxsOgogICAgICAg
ICBjYXNlIFNwaWxsOgogICAgICAgICAgICAgZmlsbGVkID0gZmFsc2U7CisgICAgICAgICAgICBh
bGl2ZSA9IHRydWU7CiAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBCaXJ0aDoKKyAg
ICAgICAgICAgIGFsaXZlID0gdHJ1ZTsKKyAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgY2Fz
ZSBEZWF0aDoKICAgICAgICAgICAgIGZvcm1hdCA9IERhdGFGb3JtYXROb25lOworICAgICAgICAg
ICAgYWxpdmUgPSBmYWxzZTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgZGVmYXVsdDoK
ICAgICAgICAgICAgIHJldHVybjsKQEAgLTE0Niw3ICsxNTUsOCBAQCB2b2lkIFZhcmlhYmxlRXZl
bnRTdHJlYW06OnJlY29uc3RydWN0KAogICAgICAgICAgICAgLy8gbm90aGluZyB0byBkby4KICAg
ICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIEJpcnRoVG9GaWxsOgotICAgICAgICBjYXNl
IEJpcnRoVG9TcGlsbDogeworICAgICAgICBjYXNlIEJpcnRoVG9TcGlsbDoKKyAgICAgICAgY2Fz
ZSBCaXJ0aDogewogICAgICAgICAgICAgTWluaWZpZWRHZW5lcmF0aW9uSW5mbyBpbmZvOwogICAg
ICAgICAgICAgaW5mby51cGRhdGUoZXZlbnQpOwogICAgICAgICAgICAgZ2VuZXJhdGlvbkluZm9z
LmFkZChldmVudC5pZCgpLCBpbmZvKTsKQEAgLTE4NSwxNCArMTk1LDE0IEBAIHZvaWQgVmFyaWFi
bGVFdmVudFN0cmVhbTo6cmVjb25zdHJ1Y3QoCiAgICAgICAgIAogICAgICAgICBBU1NFUlQoc291
cmNlLmtpbmQoKSA9PSBIYXZlTm9kZSk7CiAgICAgICAgIE1pbmlmaWVkTm9kZSogbm9kZSA9IGdy
YXBoLmF0KHNvdXJjZS5pZCgpKTsKLSAgICAgICAgaWYgKHRyeVRvU2V0Q29uc3RhbnRSZWNvdmVy
eSh2YWx1ZVJlY292ZXJpZXNbaV0sIG5vZGUpKQotICAgICAgICAgICAgY29udGludWU7Ci0gICAg
ICAgIAogICAgICAgICBNaW5pZmllZEdlbmVyYXRpb25JbmZvIGluZm8gPSBnZW5lcmF0aW9uSW5m
b3MuZ2V0KHNvdXJjZS5pZCgpKTsKLSAgICAgICAgaWYgKGluZm8uZm9ybWF0ID09IERhdGFGb3Jt
YXROb25lKSB7CisgICAgICAgIGlmICghaW5mby5hbGl2ZSkgewogICAgICAgICAgICAgdmFsdWVS
ZWNvdmVyaWVzW2ldID0gVmFsdWVSZWNvdmVyeTo6Y29uc3RhbnQoanNVbmRlZmluZWQoKSk7CiAg
ICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQorCisgICAgICAgIGlmICh0cnlUb1NldENv
bnN0YW50UmVjb3ZlcnkodmFsdWVSZWNvdmVyaWVzW2ldLCBub2RlKSkKKyAgICAgICAgICAgIGNv
bnRpbnVlOwogICAgICAgICAKICAgICAgICAgQVNTRVJUKGluZm8uZm9ybWF0ICE9IERhdGFGb3Jt
YXROb25lKTsKICAgICAgICAgCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvc3Ry
ZXNzL3BoYW50b20tZGlyZWN0LWFyZ3VtZW50cy1jbG9iYmVyLWFyZ3VtZW50LWNvdW50LmpzCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3MvcGhhbnRvbS1k
aXJlY3QtYXJndW1lbnRzLWNsb2JiZXItYXJndW1lbnQtY291bnQuanMJKHJldmlzaW9uIDApCisr
KyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvc3RyZXNzL3BoYW50b20tZGlyZWN0LWFyZ3Vt
ZW50cy1jbG9iYmVyLWFyZ3VtZW50LWNvdW50LmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEs
MjAgQEAKK2Z1bmN0aW9uIGZvbygpIHsKKyAgICByZXR1cm4gZWZmZWN0ZnVsNDIuYXBwbHkodGhp
cywgYXJndW1lbnRzKTsKK30KKworZnVuY3Rpb24gYmFyKGEsIGIpIHsKKyAgICB2YXIgcmVzdWx0
ID0gZm9vLmFwcGx5KHRoaXMsIGIpOworICAgIHJldHVybiBbYSwgYSwgYSwgYSwgYSwgYSwgYSwg
YSwgcmVzdWx0ICsgYV07Cit9CisKK25vSW5saW5lKGJhcik7CisKK2ZvciAodmFyIGkgPSAwOyBp
IDwgMTAwMDA7ICsraSkgeworICAgIHZhciByZXN1bHQgPSAiIiArIGJhcigxLCBbXSk7CisgICAg
aWYgKHJlc3VsdCAhPSAiMSwxLDEsMSwxLDEsMSwxLDQzIikKKyAgICAgICAgdGhyb3cgIkVycm9y
OiBiYWQgcmVzdWx0OiAiICsgcmVzdWx0OworfQorCit2YXIgcmVzdWx0ID0gIiIgKyBiYXIoMjE0
NzQ4MzY0NywgW10pOworaWYgKHJlc3VsdCAhPSAiMjE0NzQ4MzY0NywyMTQ3NDgzNjQ3LDIxNDc0
ODM2NDcsMjE0NzQ4MzY0NywyMTQ3NDgzNjQ3LDIxNDc0ODM2NDcsMjE0NzQ4MzY0NywyMTQ3NDgz
NjQ3LDIxNDc0ODM2ODkiKQorICAgIHRocm93ICJFcnJvcjogYmFkIHJlc3VsdCBhdCBlbmQ6ICIg
KyByZXN1bHQ7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvc3RyZXNzL3BoYW50
b20tZGlyZWN0LWFyZ3VtZW50cy1jbG9iYmVyLWNhbGxlZS5qcwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvc3RyZXNzL3BoYW50b20tZGlyZWN0LWFyZ3VtZW50cy1j
bG9iYmVyLWNhbGxlZS5qcwkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90
ZXN0cy9zdHJlc3MvcGhhbnRvbS1kaXJlY3QtYXJndW1lbnRzLWNsb2JiZXItY2FsbGVlLmpzCSh3
b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMjEgQEAKK2Z1bmN0aW9uIGZvbygpIHsKKyAgICByZXR1
cm4gZnVuY3Rpb24oKSB7IHJldHVybiBlZmZlY3RmdWw0Mi5hcHBseSh0aGlzLCBhcmd1bWVudHMp
IH07Cit9Citub0lubGluZShmb28pOworCitmdW5jdGlvbiBiYXIoYSkgeworICAgIHZhciByZXN1
bHQgPSBmb28oKSgpOworICAgIHJldHVybiBbcmVzdWx0LCByZXN1bHQsIHJlc3VsdCwgcmVzdWx0
LCByZXN1bHQsIHJlc3VsdCwgcmVzdWx0LCByZXN1bHQsIHJlc3VsdCArIGFdOworfQorCitub0lu
bGluZShiYXIpOworCitmb3IgKHZhciBpID0gMDsgaSA8IDEwMDAwOyArK2kpIHsKKyAgICB2YXIg
cmVzdWx0ID0gIiIgKyBiYXIoMSk7CisgICAgaWYgKHJlc3VsdCAhPSAiNDIsNDIsNDIsNDIsNDIs
NDIsNDIsNDIsNDMiKQorICAgICAgICB0aHJvdyAiRXJyb3I6IGJhZCByZXN1bHQ6ICIgKyByZXN1
bHQ7Cit9CisKK3ZhciByZXN1bHQgPSAiIiArIGJhcigyMTQ3NDgzNjQ3KTsKK2lmIChyZXN1bHQg
IT0gIjQyLDQyLDQyLDQyLDQyLDQyLDQyLDQyLDIxNDc0ODM2ODkiKQorICAgIHRocm93ICJFcnJv
cjogYmFkIHJlc3VsdCBhdCBlbmQ6ICIgKyByZXN1bHQ7Cg==
</data>
<flag name="review"
          id="276356"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>