<?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>113154</bug_id>
          
          <creation_ts>2013-03-24 10:09:10 -0700</creation_ts>
          <short_desc>[CSSRegions] Consolidate use of RenderRegion::isValid</short_desc>
          <delta_ts>2013-03-28 01:24:47 -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>CSS</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mihnea Ovidenie">mihnea</reporter>
          <assigned_to name="Mihnea Ovidenie">mihnea</assigned_to>
          <cc>abucur</cc>
    
    <cc>eric</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>WebkitBugTracker</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>862383</commentid>
    <comment_count>0</comment_count>
    <who name="Mihnea Ovidenie">mihnea</who>
    <bug_when>2013-03-24 10:09:10 -0700</bug_when>
    <thetext>After https://bugs.webkit.org/show_bug.cgi?id=98752, the list of invalid regions is kept separately. A valid region has always a valid flow thread attached. We can use isValid() throughout the RenderRegion code instead of testing for both isValid() and m_flowThread.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>862385</commentid>
    <comment_count>1</comment_count>
      <attachid>194758</attachid>
    <who name="Mihnea Ovidenie">mihnea</who>
    <bug_when>2013-03-24 10:22:26 -0700</bug_when>
    <thetext>Created attachment 194758
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>864833</commentid>
    <comment_count>2</comment_count>
      <attachid>194758</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2013-03-27 13:47:59 -0700</bug_when>
    <thetext>Comment on attachment 194758
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>865208</commentid>
    <comment_count>3</comment_count>
      <attachid>195492</attachid>
    <who name="Mihnea Ovidenie">mihnea</who>
    <bug_when>2013-03-28 00:25:47 -0700</bug_when>
    <thetext>Created attachment 195492
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>865238</commentid>
    <comment_count>4</comment_count>
      <attachid>195492</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-28 01:24:43 -0700</bug_when>
    <thetext>Comment on attachment 195492
Patch for landing

Clearing flags on attachment: 195492

Committed r147082: &lt;http://trac.webkit.org/changeset/147082&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>865239</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-28 01:24:47 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>194758</attachid>
            <date>2013-03-24 10:22:26 -0700</date>
            <delta_ts>2013-03-28 00:25:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>113154.patch</filename>
            <type>text/plain</type>
            <size>12341</size>
            <attacher name="Mihnea Ovidenie">mihnea</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBkMDI2MTI3Li5hMjYzZTk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzkg
QEAKKzIwMTMtMDMtMjQgIE1paG5lYSBPdmlkZW5pZSAgPG1paG5lYUBhZG9iZS5jb20+CisKKyAg
ICAgICAgW0NTU1JlZ2lvbnNdIENvbnNvbGlkYXRlIHVzZSBvZiBSZW5kZXJSZWdpb246OmlzVmFs
aWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExMzE1
NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFmdGVy
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05ODc1MiwgdGhlIGxpc3Qg
b2YgaW52YWxpZCByZWdpb25zIGlzIGtlcHQgc2VwYXJhdGVseSB0aGFuIHRoZSBsaXN0IG9mIHZh
bGlkIHJlZ2lvbnMuCisgICAgICAgIEEgdmFsaWQgcmVnaW9uIGhhcyBhbHdheXMgYSB2YWxpZCBm
bG93IHRocmVhZCBhdHRhY2hlZC4gV2UgY2FuIHVzZSBpc1ZhbGlkKCkgdGhyb3VnaG91dCB0aGUg
UmVuZGVyUmVnaW9uIGNvZGUKKyAgICAgICAgaW5zdGVhZCBvZiB0ZXN0aW5nIGZvciBib3RoIGlz
VmFsaWQoKSBhbmQgbV9mbG93VGhyZWFkLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cyBzaW5jZSB0
aGVyZSBpcyBubyBjaGFuZ2UgaXMgZnVuY3Rpb25hbGl0eSwganVzdCBjb2RlIHJlZmFjdG9yaW5n
LgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck5hbWVkRmxvd1RocmVhZC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJOYW1lZEZsb3dUaHJlYWQ6OmFkZFJlZ2lvblRvTmFtZWRGbG93
VGhyZWFkKTogQWRkZWQgYSBuZXcgZnVuY3Rpb24gdG8ga2VlcCB0aGUgY29kZQorICAgICAgICB1
c2VkIGluIGFkZFJlZ2lvblRvVGhyZWFkIGFuZCBjaGVja0ludmFsaWRSZWdpb25zLgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyTmFtZWRGbG93VGhyZWFkOjphZGRSZWdpb25Ub1RocmVhZCk6Cisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJOYW1lZEZsb3dUaHJlYWQ6OmNoZWNrSW52YWxpZFJlZ2lv
bnMpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJOYW1lZEZsb3dUaHJlYWQuaDoKKyAgICAg
ICAgKiByZW5kZXJpbmcvUmVuZGVyUmVnaW9uLmNwcDogCisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJSZWdpb246Om92ZXJmbG93UmVjdEZvckZsb3dUaHJlYWRQb3J0aW9uKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlclJlZ2lvbjo6aXNGaXJzdFJlZ2lvbik6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJSZWdpb246OmlzTGFzdFJlZ2lvbik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJSZWdp
b246OnBhaW50T2JqZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclJlZ2lvbjo6bm9kZUF0
UG9pbnQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyUmVnaW9uOjppbmNyZW1lbnRBdXRvTG9n
aWNhbEhlaWdodENvdW50KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclJlZ2lvbjo6ZGVjcmVt
ZW50QXV0b0xvZ2ljYWxIZWlnaHRDb3VudCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJSZWdp
b246OmxheW91dEJsb2NrKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclJlZ2lvbjo6cmVwYWlu
dEZsb3dUaHJlYWRDb250ZW50UmVjdGFuZ2xlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclJl
Z2lvbjo6YXR0YWNoUmVnaW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclJlZ2lvbjo6cmVu
ZGVyQm94UmVnaW9uSW5mbyk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJSZWdpb246OnNldFJl
bmRlckJveFJlZ2lvbkluZm8pOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyUmVnaW9uOjpsb2dp
Y2FsVG9wT2ZGbG93VGhyZWFkQ29udGVudFJlY3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
UmVnaW9uOjpsb2dpY2FsQm90dG9tT2ZGbG93VGhyZWFkQ29udGVudFJlY3QpOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyUmVnaW9uOjpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocyk6CisK
IDIwMTMtMDMtMjEgIEtpcmFuIE11cHBhbGEgIDxjbXVwcGFsYUBhcHBsZS5jb20+CiAKICAgICAg
ICAgQWRkIHJ1bnRpbWUgc2V0dGluZyBmb3IgaGlkZGVuIHBhZ2UgRE9NIHRpbWVyIHRocm90dGxp
bmcgYW5kIENTUyBhbmltYXRpb24gc3VzcGVuc2lvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlck5hbWVkRmxvd1RocmVhZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyTmFtZWRGbG93VGhyZWFkLmNwcAppbmRleCAzY2NlOWRmLi5jMjY2MWI1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTmFtZWRGbG93VGhy
ZWFkLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTmFtZWRGbG93VGhy
ZWFkLmNwcApAQCAtMjIyLDI3ICsyMjIsMzQgQEAgc3RhdGljIHZvaWQgYWRkUmVnaW9uVG9MaXN0
KFJlbmRlclJlZ2lvbkxpc3QmIHJlZ2lvbkxpc3QsIFJlbmRlclJlZ2lvbiogcmVuZGVyUmUKICAg
ICB9CiB9CiAKLXZvaWQgUmVuZGVyTmFtZWRGbG93VGhyZWFkOjphZGRSZWdpb25Ub1RocmVhZChS
ZW5kZXJSZWdpb24qIHJlbmRlclJlZ2lvbikKK3ZvaWQgUmVuZGVyTmFtZWRGbG93VGhyZWFkOjph
ZGRSZWdpb25Ub05hbWVkRmxvd1RocmVhZChSZW5kZXJSZWdpb24qIHJlbmRlclJlZ2lvbikKIHsK
ICAgICBBU1NFUlQocmVuZGVyUmVnaW9uKTsKLQotICAgIHJlc2V0TWFya0ZvckRlc3RydWN0aW9u
KCk7Ci0KICAgICBBU1NFUlQoIXJlbmRlclJlZ2lvbi0+aXNWYWxpZCgpKTsKLSAgICBpZiAocmVu
ZGVyUmVnaW9uLT5wYXJlbnROYW1lZEZsb3dUaHJlYWQoKSkgewotICAgICAgICBpZiAocmVuZGVy
UmVnaW9uLT5wYXJlbnROYW1lZEZsb3dUaHJlYWQoKS0+ZGVwZW5kc09uKHRoaXMpKSB7Ci0gICAg
ICAgICAgICAvLyBUaGUgb3JkZXIgb2YgaW52YWxpZCByZWdpb25zIGlzIGlycmVsZXZhbnQuCi0g
ICAgICAgICAgICBtX2ludmFsaWRSZWdpb25MaXN0LmFkZChyZW5kZXJSZWdpb24pOwotICAgICAg
ICAgICAgLy8gUmVnaXN0ZXIgb3Vyc2VsZiB0byBnZXQgYSBub3RpZmljYXRpb24gd2hlbiB0aGUg
c3RhdGUgY2hhbmdlcy4KLSAgICAgICAgICAgIHJlbmRlclJlZ2lvbi0+cGFyZW50TmFtZWRGbG93
VGhyZWFkKCktPm1fb2JzZXJ2ZXJUaHJlYWRzU2V0LmFkZCh0aGlzKTsKLSAgICAgICAgICAgIHJl
dHVybjsKLSAgICAgICAgfQogCisgICAgaWYgKHJlbmRlclJlZ2lvbi0+cGFyZW50TmFtZWRGbG93
VGhyZWFkKCkpCiAgICAgICAgIGFkZERlcGVuZGVuY3lPbkZsb3dUaHJlYWQocmVuZGVyUmVnaW9u
LT5wYXJlbnROYW1lZEZsb3dUaHJlYWQoKSk7Ci0gICAgfQogCiAgICAgcmVuZGVyUmVnaW9uLT5z
ZXRJc1ZhbGlkKHRydWUpOwogICAgIGFkZFJlZ2lvblRvTGlzdChtX3JlZ2lvbkxpc3QsIHJlbmRl
clJlZ2lvbik7Cit9CisKK3ZvaWQgUmVuZGVyTmFtZWRGbG93VGhyZWFkOjphZGRSZWdpb25Ub1Ro
cmVhZChSZW5kZXJSZWdpb24qIHJlbmRlclJlZ2lvbikKK3sKKyAgICBBU1NFUlQocmVuZGVyUmVn
aW9uKTsKKyAgICBBU1NFUlQoIXJlbmRlclJlZ2lvbi0+aXNWYWxpZCgpKTsKKworICAgIHJlc2V0
TWFya0ZvckRlc3RydWN0aW9uKCk7CisKKyAgICBpZiAocmVuZGVyUmVnaW9uLT5wYXJlbnROYW1l
ZEZsb3dUaHJlYWQoKSAmJiByZW5kZXJSZWdpb24tPnBhcmVudE5hbWVkRmxvd1RocmVhZCgpLT5k
ZXBlbmRzT24odGhpcykpIHsKKyAgICAgICAgLy8gVGhlIG9yZGVyIG9mIGludmFsaWQgcmVnaW9u
cyBpcyBpcnJlbGV2YW50LgorICAgICAgICBtX2ludmFsaWRSZWdpb25MaXN0LmFkZChyZW5kZXJS
ZWdpb24pOworICAgICAgICAvLyBSZWdpc3RlciBvdXJzZWxmIHRvIGdldCBhIG5vdGlmaWNhdGlv
biB3aGVuIHRoZSBzdGF0ZSBjaGFuZ2VzLgorICAgICAgICByZW5kZXJSZWdpb24tPnBhcmVudE5h
bWVkRmxvd1RocmVhZCgpLT5tX29ic2VydmVyVGhyZWFkc1NldC5hZGQodGhpcyk7CisgICAgICAg
IHJldHVybjsKKyAgICB9CisKKyAgICBhZGRSZWdpb25Ub05hbWVkRmxvd1RocmVhZChyZW5kZXJS
ZWdpb24pOwogCiAgICAgaW52YWxpZGF0ZVJlZ2lvbnMoKTsKIH0KQEAgLTI5Myw5ICszMDAsNyBA
QCB2b2lkIFJlbmRlck5hbWVkRmxvd1RocmVhZDo6Y2hlY2tJbnZhbGlkUmVnaW9ucygpCiAgICAg
ICAgIFJlbmRlclJlZ2lvbiogcmVnaW9uID0gKml0ZXI7CiAgICAgICAgIG1faW52YWxpZFJlZ2lv
bkxpc3QucmVtb3ZlKHJlZ2lvbik7CiAgICAgICAgIHJlZ2lvbi0+cGFyZW50TmFtZWRGbG93VGhy
ZWFkKCktPm1fb2JzZXJ2ZXJUaHJlYWRzU2V0LnJlbW92ZSh0aGlzKTsKLSAgICAgICAgcmVnaW9u
LT5zZXRJc1ZhbGlkKHRydWUpOwotICAgICAgICBhZGREZXBlbmRlbmN5T25GbG93VGhyZWFkKHJl
Z2lvbi0+cGFyZW50TmFtZWRGbG93VGhyZWFkKCkpOwotICAgICAgICBhZGRSZWdpb25Ub0xpc3Qo
bV9yZWdpb25MaXN0LCByZWdpb24pOworICAgICAgICBhZGRSZWdpb25Ub05hbWVkRmxvd1RocmVh
ZChyZWdpb24pOwogICAgIH0KIAogICAgIGlmICghbmV3VmFsaWRSZWdpb25zLmlzRW1wdHkoKSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJOYW1lZEZsb3dUaHJl
YWQuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJOYW1lZEZsb3dUaHJlYWQuaApp
bmRleCBjZWNhMGE5Li4xZDljZTUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyTmFtZWRGbG93VGhyZWFkLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlck5hbWVkRmxvd1RocmVhZC5oCkBAIC04Nyw3ICs4NywxMSBAQCBwcml2YXRlOgogICAg
IGJvb2wgZGVwZW5kc09uKFJlbmRlck5hbWVkRmxvd1RocmVhZCogb3RoZXJSZW5kZXJGbG93VGhy
ZWFkKSBjb25zdDsKICAgICB2b2lkIGFkZERlcGVuZGVuY3lPbkZsb3dUaHJlYWQoUmVuZGVyTmFt
ZWRGbG93VGhyZWFkKik7CiAgICAgdm9pZCByZW1vdmVEZXBlbmRlbmN5T25GbG93VGhyZWFkKFJl
bmRlck5hbWVkRmxvd1RocmVhZCopOworCisgICAgdm9pZCBhZGRSZWdpb25Ub05hbWVkRmxvd1Ro
cmVhZChSZW5kZXJSZWdpb24qKTsKKwogICAgIHZvaWQgY2hlY2tJbnZhbGlkUmVnaW9ucygpOwor
CiAgICAgYm9vbCBjYW5CZURlc3Ryb3llZCgpIGNvbnN0IHsgcmV0dXJuIG1faW52YWxpZFJlZ2lv
bkxpc3QuaXNFbXB0eSgpICYmIG1fcmVnaW9uTGlzdC5pc0VtcHR5KCkgJiYgbV9jb250ZW50Tm9k
ZXMuaXNFbXB0eSgpOyB9CiAgICAgdm9pZCByZWdpb25MYXlvdXRVcGRhdGVFdmVudFRpbWVyRmly
ZWQoVGltZXI8UmVuZGVyTmFtZWRGbG93VGhyZWFkPiopOwogICAgIHZvaWQgY2xlYXJDb250ZW50
Tm9kZXMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZWdp
b24uY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlZ2lvbi5jcHAKaW5kZXgg
ZWI0NjVkYy4uOTcwNGI2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlclJlZ2lvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlZ2lv
bi5jcHAKQEAgLTkxLDEyICs5MSwxNCBAQCBMYXlvdXRSZWN0IFJlbmRlclJlZ2lvbjo6Zmxvd1Ro
cmVhZFBvcnRpb25PdmVyZmxvd1JlY3QoKSBjb25zdAogCiBMYXlvdXRSZWN0IFJlbmRlclJlZ2lv
bjo6b3ZlcmZsb3dSZWN0Rm9yRmxvd1RocmVhZFBvcnRpb24oTGF5b3V0UmVjdCBmbG93VGhyZWFk
UG9ydGlvblJlY3QsIGJvb2wgaXNGaXJzdFBvcnRpb24sIGJvb2wgaXNMYXN0UG9ydGlvbikgY29u
c3QKIHsKKyAgICBBU1NFUlQoaXNWYWxpZCgpKTsKKwogICAgIC8vIEZJWE1FOiBXb3VsZCBsaWtl
IHRvIGp1c3QgdXNlIGhhc092ZXJmbG93Q2xpcCgpIGJ1dCB3ZSBhcmVuJ3QgYSBibG9jayB5ZXQu
IFdoZW4gUmVuZGVyUmVnaW9uIGlzIGVsaW1pbmF0ZWQgYW5kCiAgICAgLy8gZm9sZGVkIGludG8g
UmVuZGVyQmxvY2ssIHN3aXRjaCB0byBoYXNPdmVyZmxvd0NsaXAoKS4KICAgICBib29sIGNsaXBY
ID0gc3R5bGUoKS0+b3ZlcmZsb3dYKCkgIT0gT1ZJU0lCTEU7CiAgICAgYm9vbCBjbGlwWSA9IHN0
eWxlKCktPm92ZXJmbG93WSgpICE9IE9WSVNJQkxFOwogICAgIGJvb2wgaXNMYXN0UmVnaW9uV2l0
aFJlZ2lvbk92ZXJmbG93QnJlYWsgPSAoaXNMYXN0UG9ydGlvbiAmJiAoc3R5bGUoKS0+cmVnaW9u
T3ZlcmZsb3coKSA9PSBCcmVha1JlZ2lvbk92ZXJmbG93KSk7Ci0gICAgaWYgKChjbGlwWCAmJiBj
bGlwWSkgfHwgIWlzVmFsaWQoKSB8fCAhbV9mbG93VGhyZWFkIHx8IGlzTGFzdFJlZ2lvbldpdGhS
ZWdpb25PdmVyZmxvd0JyZWFrKQorICAgIGlmICgoY2xpcFggJiYgY2xpcFkpIHx8IGlzTGFzdFJl
Z2lvbldpdGhSZWdpb25PdmVyZmxvd0JyZWFrKQogICAgICAgICByZXR1cm4gZmxvd1RocmVhZFBv
cnRpb25SZWN0OwogCiAgICAgTGF5b3V0UmVjdCBmbG93VGhyZWFkT3ZlcmZsb3cgPSBtX2Zsb3dU
aHJlYWQtPnZpc3VhbE92ZXJmbG93UmVjdCgpOwpAQCAtMTI4LDEzICsxMzAsMTUgQEAgTGF5b3V0
VW5pdCBSZW5kZXJSZWdpb246OnBhZ2VMb2dpY2FsVG9wRm9yT2Zmc2V0KExheW91dFVuaXQgLyog
b2Zmc2V0ICovKSBjb25zdAogCiBib29sIFJlbmRlclJlZ2lvbjo6aXNGaXJzdFJlZ2lvbigpIGNv
bnN0CiB7Ci0gICAgQVNTRVJUKGlzVmFsaWQoKSAmJiBtX2Zsb3dUaHJlYWQpOworICAgIEFTU0VS
VChpc1ZhbGlkKCkpOworCiAgICAgcmV0dXJuIG1fZmxvd1RocmVhZC0+Zmlyc3RSZWdpb24oKSA9
PSB0aGlzOwogfQogCiBib29sIFJlbmRlclJlZ2lvbjo6aXNMYXN0UmVnaW9uKCkgY29uc3QKIHsK
LSAgICBBU1NFUlQoaXNWYWxpZCgpICYmIG1fZmxvd1RocmVhZCk7CisgICAgQVNTRVJUKGlzVmFs
aWQoKSk7CisKICAgICByZXR1cm4gbV9mbG93VGhyZWFkLT5sYXN0UmVnaW9uKCkgPT0gdGhpczsK
IH0KIApAQCAtMTQ5LDcgKzE1Myw3IEBAIHZvaWQgUmVuZGVyUmVnaW9uOjpwYWludE9iamVjdChQ
YWludEluZm8mIHBhaW50SW5mbywgY29uc3QgTGF5b3V0UG9pbnQmIHBhaW50T2ZmCiAgICAgLy8g
UmVuZGVyRmxvd1RocmVhZCBpcyBhIHNlbGYgcGFpbnRpbmcgbGF5ZXIgKGJlaW5nIGEgcG9zaXRp
b25lZCBvYmplY3QpIHdobyBpcyBwYWludGluZyBpdHMgY2hpbGRyZW4sIHRoZSBjb2xsZWN0ZWQg
b2JqZWN0cy4KICAgICAvLyBTaW5jZSB3ZSBkbyBub3Qgd2FudCB0byBwYWludCB0aGUgZmxvdyB0
aHJlYWQgY29udGVudCBtdWx0aXBsZSB0aW1lcyAoZm9yIGVhY2ggcGFpbnRpbmcgcGhhc2Ugb2Yg
dGhlIHJlZ2lvbiBvYmplY3QpLAogICAgIC8vIHdlIGFsbG93IHRoZSBmbG93IHRocmVhZCBwYWlu
dGluZyBvbmx5IGZvciB0aGUgc2VsZWN0aW9uIGFuZCB0aGUgZm9yZWdyb3VuZCBwaGFzZS4KLSAg
ICBpZiAoIW1fZmxvd1RocmVhZCB8fCAhaXNWYWxpZCgpIHx8IChwYWludEluZm8ucGhhc2UgIT0g
UGFpbnRQaGFzZUZvcmVncm91bmQgJiYgcGFpbnRJbmZvLnBoYXNlICE9IFBhaW50UGhhc2VTZWxl
Y3Rpb24pKQorICAgIGlmICghaXNWYWxpZCgpIHx8IChwYWludEluZm8ucGhhc2UgIT0gUGFpbnRQ
aGFzZUZvcmVncm91bmQgJiYgcGFpbnRJbmZvLnBoYXNlICE9IFBhaW50UGhhc2VTZWxlY3Rpb24p
KQogICAgICAgICByZXR1cm47CiAKICAgICBzZXRSZWdpb25PYmplY3RzUmVnaW9uU3R5bGUoKTsK
QEAgLTE3Miw3ICsxNzYsNyBAQCBib29sIFJlbmRlclJlZ2lvbjo6bm9kZUF0UG9pbnQoY29uc3Qg
SGl0VGVzdFJlcXVlc3QmIHJlcXVlc3QsIEhpdFRlc3RSZXN1bHQmIHJlcwogICAgIGJvdW5kc1Jl
Y3QubW92ZUJ5KGFkanVzdGVkTG9jYXRpb24pOwogICAgIGlmICh2aXNpYmxlVG9IaXRUZXN0aW5n
KCkgJiYgYWN0aW9uID09IEhpdFRlc3RGb3JlZ3JvdW5kICYmIGxvY2F0aW9uSW5Db250YWluZXIu
aW50ZXJzZWN0cyhib3VuZHNSZWN0KSkgewogICAgICAgICAvLyBDaGVjayB0aGUgY29udGVudHMg
b2YgdGhlIFJlbmRlckZsb3dUaHJlYWQuCi0gICAgICAgIGlmIChtX2Zsb3dUaHJlYWQgJiYgbV9m
bG93VGhyZWFkLT5oaXRUZXN0Rmxvd1RocmVhZFBvcnRpb25JblJlZ2lvbih0aGlzLCBmbG93VGhy
ZWFkUG9ydGlvblJlY3QoKSwgZmxvd1RocmVhZFBvcnRpb25PdmVyZmxvd1JlY3QoKSwgcmVxdWVz
dCwgcmVzdWx0LCBsb2NhdGlvbkluQ29udGFpbmVyLCBMYXlvdXRQb2ludChhZGp1c3RlZExvY2F0
aW9uLngoKSArIGJvcmRlckxlZnQoKSArIHBhZGRpbmdMZWZ0KCksIGFkanVzdGVkTG9jYXRpb24u
eSgpICsgYm9yZGVyVG9wKCkgKyBwYWRkaW5nVG9wKCkpKSkKKyAgICAgICAgaWYgKG1fZmxvd1Ro
cmVhZC0+aGl0VGVzdEZsb3dUaHJlYWRQb3J0aW9uSW5SZWdpb24odGhpcywgZmxvd1RocmVhZFBv
cnRpb25SZWN0KCksIGZsb3dUaHJlYWRQb3J0aW9uT3ZlcmZsb3dSZWN0KCksIHJlcXVlc3QsIHJl
c3VsdCwgbG9jYXRpb25JbkNvbnRhaW5lciwgTGF5b3V0UG9pbnQoYWRqdXN0ZWRMb2NhdGlvbi54
KCkgKyBib3JkZXJMZWZ0KCkgKyBwYWRkaW5nTGVmdCgpLCBhZGp1c3RlZExvY2F0aW9uLnkoKSAr
IGJvcmRlclRvcCgpICsgcGFkZGluZ1RvcCgpKSkpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsK
ICAgICAgICAgdXBkYXRlSGl0VGVzdFJlc3VsdChyZXN1bHQsIGxvY2F0aW9uSW5Db250YWluZXIu
cG9pbnQoKSAtIHRvTGF5b3V0U2l6ZShhZGp1c3RlZExvY2F0aW9uKSk7CiAgICAgICAgIGlmICgh
cmVzdWx0LmFkZE5vZGVUb1JlY3RCYXNlZFRlc3RSZXN1bHQoZ2VuZXJhdGluZ05vZGUoKSwgcmVx
dWVzdCwgbG9jYXRpb25JbkNvbnRhaW5lciwgYm91bmRzUmVjdCkpCkBAIC0xOTgsNyArMjAyLDYg
QEAgdm9pZCBSZW5kZXJSZWdpb246OmNoZWNrUmVnaW9uU3R5bGUoKQogCiB2b2lkIFJlbmRlclJl
Z2lvbjo6aW5jcmVtZW50QXV0b0xvZ2ljYWxIZWlnaHRDb3VudCgpCiB7Ci0gICAgQVNTRVJUKG1f
Zmxvd1RocmVhZCk7CiAgICAgQVNTRVJUKGlzVmFsaWQoKSk7CiAgICAgQVNTRVJUKG1faGFzQXV0
b0xvZ2ljYWxIZWlnaHQpOwogCkBAIC0yMDcsNyArMjEwLDYgQEAgdm9pZCBSZW5kZXJSZWdpb246
OmluY3JlbWVudEF1dG9Mb2dpY2FsSGVpZ2h0Q291bnQoKQogCiB2b2lkIFJlbmRlclJlZ2lvbjo6
ZGVjcmVtZW50QXV0b0xvZ2ljYWxIZWlnaHRDb3VudCgpCiB7Ci0gICAgQVNTRVJUKG1fZmxvd1Ro
cmVhZCk7CiAgICAgQVNTRVJUKGlzVmFsaWQoKSk7CiAKICAgICBtX2Zsb3dUaHJlYWQtPmRlY3Jl
bWVudEF1dG9Mb2dpY2FsSGVpZ2h0UmVnaW9ucygpOwpAQCAtMjYwLDcgKzI2Miw3IEBAIHZvaWQg
UmVuZGVyUmVnaW9uOjpsYXlvdXRCbG9jayhib29sIHJlbGF5b3V0Q2hpbGRyZW4sIExheW91dFVu
aXQpCiAgICAgU3RhY2tTdGF0czo6TGF5b3V0Q2hlY2tQb2ludCBsYXlvdXRDaGVja1BvaW50Owog
ICAgIFJlbmRlckJsb2NrOjpsYXlvdXRCbG9jayhyZWxheW91dENoaWxkcmVuKTsKIAotICAgIGlm
IChtX2Zsb3dUaHJlYWQgJiYgaXNWYWxpZCgpKSB7CisgICAgaWYgKGlzVmFsaWQoKSkgewogICAg
ICAgICBMYXlvdXRSZWN0IG9sZFJlZ2lvblJlY3QoZmxvd1RocmVhZFBvcnRpb25SZWN0KCkpOwog
ICAgICAgICBpZiAoIWlzSG9yaXpvbnRhbFdyaXRpbmdNb2RlKCkpCiAgICAgICAgICAgICBvbGRS
ZWdpb25SZWN0ID0gb2xkUmVnaW9uUmVjdC50cmFuc3Bvc2VkUmVjdCgpOwpAQCAtMjk0LDYgKzI5
Niw4IEBAIHZvaWQgUmVuZGVyUmVnaW9uOjpyZXBhaW50Rmxvd1RocmVhZENvbnRlbnQoY29uc3Qg
TGF5b3V0UmVjdCYgcmVwYWludFJlY3QsIGJvb2wKIAogdm9pZCBSZW5kZXJSZWdpb246OnJlcGFp
bnRGbG93VGhyZWFkQ29udGVudFJlY3RhbmdsZShjb25zdCBMYXlvdXRSZWN0JiByZXBhaW50UmVj
dCwgYm9vbCBpbW1lZGlhdGUsIGNvbnN0IExheW91dFJlY3QmIGZsb3dUaHJlYWRQb3J0aW9uUmVj
dCwgY29uc3QgTGF5b3V0UmVjdCYgZmxvd1RocmVhZFBvcnRpb25PdmVyZmxvd1JlY3QsIGNvbnN0
IExheW91dFBvaW50JiByZWdpb25Mb2NhdGlvbikgY29uc3QKIHsKKyAgICBBU1NFUlQoaXNWYWxp
ZCgpKTsKKwogICAgIC8vIFdlIG9ubHkgaGF2ZSB0byBpc3N1ZSBhIHJlcGFpbnQgaW4gdGhpcyBy
ZWdpb24gaWYgdGhlIHJlZ2lvbiByZWN0IGludGVyc2VjdHMgdGhlIHJlcGFpbnQgcmVjdC4KICAg
ICBMYXlvdXRSZWN0IGZsaXBwZWRGbG93VGhyZWFkUG9ydGlvblJlY3QoZmxvd1RocmVhZFBvcnRp
b25SZWN0KTsKICAgICBMYXlvdXRSZWN0IGZsaXBwZWRGbG93VGhyZWFkUG9ydGlvbk92ZXJmbG93
UmVjdChmbG93VGhyZWFkUG9ydGlvbk92ZXJmbG93UmVjdCk7CkBAIC0zNTQsNiArMzU4LDcgQEAg
dm9pZCBSZW5kZXJSZWdpb246OmF0dGFjaFJlZ2lvbigpCiAgICAgaWYgKCFtX2Zsb3dUaHJlYWQp
CiAgICAgICAgIHJldHVybjsKIAorICAgIC8vIE9ubHkgYWZ0ZXIgYWRkaW5nIHRoZSByZWdpb24g
dG8gdGhlIHRocmVhZCwgdGhlIHJlZ2lvbiBpcyBtYXJrZWQgdG8gYmUgdmFsaWQuCiAgICAgbV9m
bG93VGhyZWFkLT5hZGRSZWdpb25Ub1RocmVhZCh0aGlzKTsKIAogICAgIC8vIFRoZSByZWdpb24g
anVzdCBnb3QgYXR0YWNoZWQgdG8gdGhlIGZsb3cgdGhyZWFkLCBsZXRzIGNoZWNrIHdoZXRoZXIK
QEAgLTM4MCwxNyArMzg1LDE0IEBAIHZvaWQgUmVuZGVyUmVnaW9uOjpkZXRhY2hSZWdpb24oKQog
CiBSZW5kZXJCb3hSZWdpb25JbmZvKiBSZW5kZXJSZWdpb246OnJlbmRlckJveFJlZ2lvbkluZm8o
Y29uc3QgUmVuZGVyQm94KiBib3gpIGNvbnN0CiB7Ci0gICAgaWYgKCFtX2lzVmFsaWQgfHwgIW1f
Zmxvd1RocmVhZCkKLSAgICAgICAgcmV0dXJuIDA7CisgICAgQVNTRVJUKGlzVmFsaWQoKSk7CiAg
ICAgcmV0dXJuIG1fcmVuZGVyQm94UmVnaW9uSW5mby5nZXQoYm94KTsKIH0KIAogUmVuZGVyQm94
UmVnaW9uSW5mbyogUmVuZGVyUmVnaW9uOjpzZXRSZW5kZXJCb3hSZWdpb25JbmZvKGNvbnN0IFJl
bmRlckJveCogYm94LCBMYXlvdXRVbml0IGxvZ2ljYWxMZWZ0SW5zZXQsIExheW91dFVuaXQgbG9n
aWNhbFJpZ2h0SW5zZXQsCiAgICAgYm9vbCBjb250YWluaW5nQmxvY2tDaGFpbklzSW5zZXQpCiB7
Ci0gICAgQVNTRVJUKG1faXNWYWxpZCAmJiBtX2Zsb3dUaHJlYWQpOwotICAgIGlmICghbV9pc1Zh
bGlkIHx8ICFtX2Zsb3dUaHJlYWQpCi0gICAgICAgIHJldHVybiAwOworICAgIEFTU0VSVChpc1Zh
bGlkKCkpOwogCiAgICAgT3duUHRyPFJlbmRlckJveFJlZ2lvbkluZm8+JiBib3hJbmZvID0gbV9y
ZW5kZXJCb3hSZWdpb25JbmZvLmFkZChib3gsIG51bGxwdHIpLml0ZXJhdG9yLT52YWx1ZTsKICAg
ICBpZiAoYm94SW5mbykKQEAgLTQxOCwxNSArNDIwLDEzIEBAIHZvaWQgUmVuZGVyUmVnaW9uOjpk
ZWxldGVBbGxSZW5kZXJCb3hSZWdpb25JbmZvKCkKIAogTGF5b3V0VW5pdCBSZW5kZXJSZWdpb246
OmxvZ2ljYWxUb3BPZkZsb3dUaHJlYWRDb250ZW50UmVjdChjb25zdCBMYXlvdXRSZWN0JiByZWN0
KSBjb25zdAogewotICAgIGlmICghbV9pc1ZhbGlkIHx8ICFmbG93VGhyZWFkKCkpCi0gICAgICAg
IHJldHVybiAwOworICAgIEFTU0VSVChpc1ZhbGlkKCkpOwogICAgIHJldHVybiBmbG93VGhyZWFk
KCktPmlzSG9yaXpvbnRhbFdyaXRpbmdNb2RlKCkgPyByZWN0LnkoKSA6IHJlY3QueCgpOwogfQog
CiBMYXlvdXRVbml0IFJlbmRlclJlZ2lvbjo6bG9naWNhbEJvdHRvbU9mRmxvd1RocmVhZENvbnRl
bnRSZWN0KGNvbnN0IExheW91dFJlY3QmIHJlY3QpIGNvbnN0CiB7Ci0gICAgaWYgKCFtX2lzVmFs
aWQgfHwgIWZsb3dUaHJlYWQoKSkKLSAgICAgICAgcmV0dXJuIDA7CisgICAgQVNTRVJUKGlzVmFs
aWQoKSk7CiAgICAgcmV0dXJuIGZsb3dUaHJlYWQoKS0+aXNIb3Jpem9udGFsV3JpdGluZ01vZGUo
KSA/IHJlY3QubWF4WSgpIDogcmVjdC5tYXhYKCk7CiB9CiAKQEAgLTU5MCw3ICs1OTAsOCBAQCB2
b2lkIFJlbmRlclJlZ2lvbjo6Y2xlYXJPYmplY3RTdHlsZUluUmVnaW9uKGNvbnN0IFJlbmRlck9i
amVjdCogb2JqZWN0KQogdm9pZCBSZW5kZXJSZWdpb246OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2Fs
V2lkdGhzKCkKIHsKICAgICBBU1NFUlQocHJlZmVycmVkTG9naWNhbFdpZHRoc0RpcnR5KCkpOwot
ICAgIGlmICghbV9mbG93VGhyZWFkIHx8ICFtX2lzVmFsaWQpIHsKKworICAgIGlmICghaXNWYWxp
ZCgpKSB7CiAgICAgICAgIFJlbmRlckJsb2NrOjpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRo
cygpOwogICAgICAgICByZXR1cm47CiAgICAgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>195492</attachid>
            <date>2013-03-28 00:25:47 -0700</date>
            <delta_ts>2013-03-28 01:24:43 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-113154-20130328092544.patch</filename>
            <type>text/plain</type>
            <size>12624</size>
            <attacher name="Mihnea Ovidenie">mihnea</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ3MDU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmQ1NTlmNzJmMWIyNzA1
ZDQ2MzQ5YWNhY2FhNWE4NmY1NDM4YjVlYy4uMTk4YzgyZGE3MmY3Mzk4MGFkMzM4ZTEyODM2YTEw
MzVmMGNkYTk5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM5IEBACisyMDEzLTAzLTI4ICBNaWhu
ZWEgT3ZpZGVuaWUgIDxtaWhuZWFAYWRvYmUuY29tPgorCisgICAgICAgIFtDU1NSZWdpb25zXSBD
b25zb2xpZGF0ZSB1c2Ugb2YgUmVuZGVyUmVnaW9uOjppc1ZhbGlkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTMxNTQKKworICAgICAgICBSZXZpZXdl
ZCBieSBEYXZpZCBIeWF0dC4KKworICAgICAgICBBZnRlciBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9OTg3NTIsIHRoZSBsaXN0IG9mIGludmFsaWQgcmVnaW9ucyBpcyBr
ZXB0IHNlcGFyYXRlbHkgdGhhbiB0aGUgbGlzdCBvZiB2YWxpZCByZWdpb25zLgorICAgICAgICBB
IHZhbGlkIHJlZ2lvbiBoYXMgYWx3YXlzIGEgdmFsaWQgZmxvdyB0aHJlYWQgYXR0YWNoZWQuIFdl
IGNhbiB1c2UgaXNWYWxpZCgpIHRocm91Z2hvdXQgdGhlIFJlbmRlclJlZ2lvbiBjb2RlCisgICAg
ICAgIGluc3RlYWQgb2YgdGVzdGluZyBmb3IgYm90aCBpc1ZhbGlkKCkgYW5kIG1fZmxvd1RocmVh
ZC4KKworICAgICAgICBObyBuZXcgdGVzdHMgc2luY2UgdGhlcmUgaXMgbm8gY2hhbmdlIGlzIGZ1
bmN0aW9uYWxpdHksIGp1c3QgY29kZSByZWZhY3RvcmluZy4KKworICAgICAgICAqIHJlbmRlcmlu
Zy9SZW5kZXJOYW1lZEZsb3dUaHJlYWQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTmFt
ZWRGbG93VGhyZWFkOjphZGRSZWdpb25Ub05hbWVkRmxvd1RocmVhZCk6IEFkZGVkIGEgbmV3IGZ1
bmN0aW9uIHRvIGtlZXAgdGhlIGNvZGUKKyAgICAgICAgdXNlZCBpbiBhZGRSZWdpb25Ub1RocmVh
ZCBhbmQgY2hlY2tJbnZhbGlkUmVnaW9ucy4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck5hbWVk
Rmxvd1RocmVhZDo6YWRkUmVnaW9uVG9UaHJlYWQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
TmFtZWRGbG93VGhyZWFkOjpjaGVja0ludmFsaWRSZWdpb25zKToKKyAgICAgICAgKiByZW5kZXJp
bmcvUmVuZGVyTmFtZWRGbG93VGhyZWFkLmg6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclJl
Z2lvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJSZWdpb246Om92ZXJmbG93UmVjdEZv
ckZsb3dUaHJlYWRQb3J0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclJlZ2lvbjo6aXNG
aXJzdFJlZ2lvbik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJSZWdpb246OmlzTGFzdFJlZ2lv
bik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJSZWdpb246OnBhaW50T2JqZWN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlclJlZ2lvbjo6bm9kZUF0UG9pbnQpOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyUmVnaW9uOjppbmNyZW1lbnRBdXRvTG9naWNhbEhlaWdodENvdW50KToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlclJlZ2lvbjo6ZGVjcmVtZW50QXV0b0xvZ2ljYWxIZWlnaHRDb3Vu
dCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJSZWdpb246OmxheW91dEJsb2NrKToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlclJlZ2lvbjo6cmVwYWludEZsb3dUaHJlYWRDb250ZW50UmVjdGFu
Z2xlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclJlZ2lvbjo6YXR0YWNoUmVnaW9uKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlclJlZ2lvbjo6cmVuZGVyQm94UmVnaW9uSW5mbyk6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJSZWdpb246OnNldFJlbmRlckJveFJlZ2lvbkluZm8pOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyUmVnaW9uOjpsb2dpY2FsVG9wT2ZGbG93VGhyZWFkQ29udGVu
dFJlY3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyUmVnaW9uOjpsb2dpY2FsQm90dG9tT2ZG
bG93VGhyZWFkQ29udGVudFJlY3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyUmVnaW9uOjpj
b21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocyk6CisKIDIwMTMtMDMtMjcgIFNpbW9uIEZyYXNl
ciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIGEgd2F5IHRvIHVwZGF0
ZSBHcmFwaGljc0xheWVyQ0EgdmlzaWJsZVJlY3RzIHdpdGhvdXQgaGF2aW5nIHRvIGRvIGEgZmx1
c2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJOYW1lZEZsb3dU
aHJlYWQuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck5hbWVkRmxvd1RocmVh
ZC5jcHAKaW5kZXggM2NjZTlkZmY3ZjJjYTAzZmY1NDZmNWRhZGU2NWU3NTNmZTg1YmUyZS4uYzI2
NjFiNWIxZWEzYjEzZjFlNjQ5ZmNjNGNhNTk0MWEzNzQ3ZTZiOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck5hbWVkRmxvd1RocmVhZC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck5hbWVkRmxvd1RocmVhZC5jcHAKQEAgLTIyMiwyNyAr
MjIyLDM0IEBAIHN0YXRpYyB2b2lkIGFkZFJlZ2lvblRvTGlzdChSZW5kZXJSZWdpb25MaXN0JiBy
ZWdpb25MaXN0LCBSZW5kZXJSZWdpb24qIHJlbmRlclJlCiAgICAgfQogfQogCi12b2lkIFJlbmRl
ck5hbWVkRmxvd1RocmVhZDo6YWRkUmVnaW9uVG9UaHJlYWQoUmVuZGVyUmVnaW9uKiByZW5kZXJS
ZWdpb24pCit2b2lkIFJlbmRlck5hbWVkRmxvd1RocmVhZDo6YWRkUmVnaW9uVG9OYW1lZEZsb3dU
aHJlYWQoUmVuZGVyUmVnaW9uKiByZW5kZXJSZWdpb24pCiB7CiAgICAgQVNTRVJUKHJlbmRlclJl
Z2lvbik7Ci0KLSAgICByZXNldE1hcmtGb3JEZXN0cnVjdGlvbigpOwotCiAgICAgQVNTRVJUKCFy
ZW5kZXJSZWdpb24tPmlzVmFsaWQoKSk7Ci0gICAgaWYgKHJlbmRlclJlZ2lvbi0+cGFyZW50TmFt
ZWRGbG93VGhyZWFkKCkpIHsKLSAgICAgICAgaWYgKHJlbmRlclJlZ2lvbi0+cGFyZW50TmFtZWRG
bG93VGhyZWFkKCktPmRlcGVuZHNPbih0aGlzKSkgewotICAgICAgICAgICAgLy8gVGhlIG9yZGVy
IG9mIGludmFsaWQgcmVnaW9ucyBpcyBpcnJlbGV2YW50LgotICAgICAgICAgICAgbV9pbnZhbGlk
UmVnaW9uTGlzdC5hZGQocmVuZGVyUmVnaW9uKTsKLSAgICAgICAgICAgIC8vIFJlZ2lzdGVyIG91
cnNlbGYgdG8gZ2V0IGEgbm90aWZpY2F0aW9uIHdoZW4gdGhlIHN0YXRlIGNoYW5nZXMuCi0gICAg
ICAgICAgICByZW5kZXJSZWdpb24tPnBhcmVudE5hbWVkRmxvd1RocmVhZCgpLT5tX29ic2VydmVy
VGhyZWFkc1NldC5hZGQodGhpcyk7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KIAor
ICAgIGlmIChyZW5kZXJSZWdpb24tPnBhcmVudE5hbWVkRmxvd1RocmVhZCgpKQogICAgICAgICBh
ZGREZXBlbmRlbmN5T25GbG93VGhyZWFkKHJlbmRlclJlZ2lvbi0+cGFyZW50TmFtZWRGbG93VGhy
ZWFkKCkpOwotICAgIH0KIAogICAgIHJlbmRlclJlZ2lvbi0+c2V0SXNWYWxpZCh0cnVlKTsKICAg
ICBhZGRSZWdpb25Ub0xpc3QobV9yZWdpb25MaXN0LCByZW5kZXJSZWdpb24pOworfQorCit2b2lk
IFJlbmRlck5hbWVkRmxvd1RocmVhZDo6YWRkUmVnaW9uVG9UaHJlYWQoUmVuZGVyUmVnaW9uKiBy
ZW5kZXJSZWdpb24pCit7CisgICAgQVNTRVJUKHJlbmRlclJlZ2lvbik7CisgICAgQVNTRVJUKCFy
ZW5kZXJSZWdpb24tPmlzVmFsaWQoKSk7CisKKyAgICByZXNldE1hcmtGb3JEZXN0cnVjdGlvbigp
OworCisgICAgaWYgKHJlbmRlclJlZ2lvbi0+cGFyZW50TmFtZWRGbG93VGhyZWFkKCkgJiYgcmVu
ZGVyUmVnaW9uLT5wYXJlbnROYW1lZEZsb3dUaHJlYWQoKS0+ZGVwZW5kc09uKHRoaXMpKSB7Cisg
ICAgICAgIC8vIFRoZSBvcmRlciBvZiBpbnZhbGlkIHJlZ2lvbnMgaXMgaXJyZWxldmFudC4KKyAg
ICAgICAgbV9pbnZhbGlkUmVnaW9uTGlzdC5hZGQocmVuZGVyUmVnaW9uKTsKKyAgICAgICAgLy8g
UmVnaXN0ZXIgb3Vyc2VsZiB0byBnZXQgYSBub3RpZmljYXRpb24gd2hlbiB0aGUgc3RhdGUgY2hh
bmdlcy4KKyAgICAgICAgcmVuZGVyUmVnaW9uLT5wYXJlbnROYW1lZEZsb3dUaHJlYWQoKS0+bV9v
YnNlcnZlclRocmVhZHNTZXQuYWRkKHRoaXMpOworICAgICAgICByZXR1cm47CisgICAgfQorCisg
ICAgYWRkUmVnaW9uVG9OYW1lZEZsb3dUaHJlYWQocmVuZGVyUmVnaW9uKTsKIAogICAgIGludmFs
aWRhdGVSZWdpb25zKCk7CiB9CkBAIC0yOTMsOSArMzAwLDcgQEAgdm9pZCBSZW5kZXJOYW1lZEZs
b3dUaHJlYWQ6OmNoZWNrSW52YWxpZFJlZ2lvbnMoKQogICAgICAgICBSZW5kZXJSZWdpb24qIHJl
Z2lvbiA9ICppdGVyOwogICAgICAgICBtX2ludmFsaWRSZWdpb25MaXN0LnJlbW92ZShyZWdpb24p
OwogICAgICAgICByZWdpb24tPnBhcmVudE5hbWVkRmxvd1RocmVhZCgpLT5tX29ic2VydmVyVGhy
ZWFkc1NldC5yZW1vdmUodGhpcyk7Ci0gICAgICAgIHJlZ2lvbi0+c2V0SXNWYWxpZCh0cnVlKTsK
LSAgICAgICAgYWRkRGVwZW5kZW5jeU9uRmxvd1RocmVhZChyZWdpb24tPnBhcmVudE5hbWVkRmxv
d1RocmVhZCgpKTsKLSAgICAgICAgYWRkUmVnaW9uVG9MaXN0KG1fcmVnaW9uTGlzdCwgcmVnaW9u
KTsKKyAgICAgICAgYWRkUmVnaW9uVG9OYW1lZEZsb3dUaHJlYWQocmVnaW9uKTsKICAgICB9CiAK
ICAgICBpZiAoIW5ld1ZhbGlkUmVnaW9ucy5pc0VtcHR5KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTmFtZWRGbG93VGhyZWFkLmggYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyTmFtZWRGbG93VGhyZWFkLmgKaW5kZXggY2VjYTBhOTg2MThiOGIx
ZTdhMGMyNmIxZTdhZDkxYTA2NzY3YzZkOS4uMWQ5Y2U1MzExMjY3OTZjMDU4MWI3Y2QxZDA4ZWE4
NDVjNWMyM2RiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck5h
bWVkRmxvd1RocmVhZC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJOYW1l
ZEZsb3dUaHJlYWQuaApAQCAtODcsNyArODcsMTEgQEAgcHJpdmF0ZToKICAgICBib29sIGRlcGVu
ZHNPbihSZW5kZXJOYW1lZEZsb3dUaHJlYWQqIG90aGVyUmVuZGVyRmxvd1RocmVhZCkgY29uc3Q7
CiAgICAgdm9pZCBhZGREZXBlbmRlbmN5T25GbG93VGhyZWFkKFJlbmRlck5hbWVkRmxvd1RocmVh
ZCopOwogICAgIHZvaWQgcmVtb3ZlRGVwZW5kZW5jeU9uRmxvd1RocmVhZChSZW5kZXJOYW1lZEZs
b3dUaHJlYWQqKTsKKworICAgIHZvaWQgYWRkUmVnaW9uVG9OYW1lZEZsb3dUaHJlYWQoUmVuZGVy
UmVnaW9uKik7CisKICAgICB2b2lkIGNoZWNrSW52YWxpZFJlZ2lvbnMoKTsKKwogICAgIGJvb2wg
Y2FuQmVEZXN0cm95ZWQoKSBjb25zdCB7IHJldHVybiBtX2ludmFsaWRSZWdpb25MaXN0LmlzRW1w
dHkoKSAmJiBtX3JlZ2lvbkxpc3QuaXNFbXB0eSgpICYmIG1fY29udGVudE5vZGVzLmlzRW1wdHko
KTsgfQogICAgIHZvaWQgcmVnaW9uTGF5b3V0VXBkYXRlRXZlbnRUaW1lckZpcmVkKFRpbWVyPFJl
bmRlck5hbWVkRmxvd1RocmVhZD4qKTsKICAgICB2b2lkIGNsZWFyQ29udGVudE5vZGVzKCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUmVnaW9uLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZWdpb24uY3BwCmluZGV4IGViNDY1ZGM4OGFk
NTM5ODUzNWNlZWMxOTZmNWFhOTM5MjM1MzU4YWIuLjk3MDRiNjBlZDU3ODE5Y2I2ZGNkNzhhZDA0
MGRhMTc2NmE4MzQ4MGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJSZWdpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZWdpb24u
Y3BwCkBAIC05MSwxMiArOTEsMTQgQEAgTGF5b3V0UmVjdCBSZW5kZXJSZWdpb246OmZsb3dUaHJl
YWRQb3J0aW9uT3ZlcmZsb3dSZWN0KCkgY29uc3QKIAogTGF5b3V0UmVjdCBSZW5kZXJSZWdpb246
Om92ZXJmbG93UmVjdEZvckZsb3dUaHJlYWRQb3J0aW9uKExheW91dFJlY3QgZmxvd1RocmVhZFBv
cnRpb25SZWN0LCBib29sIGlzRmlyc3RQb3J0aW9uLCBib29sIGlzTGFzdFBvcnRpb24pIGNvbnN0
CiB7CisgICAgQVNTRVJUKGlzVmFsaWQoKSk7CisKICAgICAvLyBGSVhNRTogV291bGQgbGlrZSB0
byBqdXN0IHVzZSBoYXNPdmVyZmxvd0NsaXAoKSBidXQgd2UgYXJlbid0IGEgYmxvY2sgeWV0LiBX
aGVuIFJlbmRlclJlZ2lvbiBpcyBlbGltaW5hdGVkIGFuZAogICAgIC8vIGZvbGRlZCBpbnRvIFJl
bmRlckJsb2NrLCBzd2l0Y2ggdG8gaGFzT3ZlcmZsb3dDbGlwKCkuCiAgICAgYm9vbCBjbGlwWCA9
IHN0eWxlKCktPm92ZXJmbG93WCgpICE9IE9WSVNJQkxFOwogICAgIGJvb2wgY2xpcFkgPSBzdHls
ZSgpLT5vdmVyZmxvd1koKSAhPSBPVklTSUJMRTsKICAgICBib29sIGlzTGFzdFJlZ2lvbldpdGhS
ZWdpb25PdmVyZmxvd0JyZWFrID0gKGlzTGFzdFBvcnRpb24gJiYgKHN0eWxlKCktPnJlZ2lvbk92
ZXJmbG93KCkgPT0gQnJlYWtSZWdpb25PdmVyZmxvdykpOwotICAgIGlmICgoY2xpcFggJiYgY2xp
cFkpIHx8ICFpc1ZhbGlkKCkgfHwgIW1fZmxvd1RocmVhZCB8fCBpc0xhc3RSZWdpb25XaXRoUmVn
aW9uT3ZlcmZsb3dCcmVhaykKKyAgICBpZiAoKGNsaXBYICYmIGNsaXBZKSB8fCBpc0xhc3RSZWdp
b25XaXRoUmVnaW9uT3ZlcmZsb3dCcmVhaykKICAgICAgICAgcmV0dXJuIGZsb3dUaHJlYWRQb3J0
aW9uUmVjdDsKIAogICAgIExheW91dFJlY3QgZmxvd1RocmVhZE92ZXJmbG93ID0gbV9mbG93VGhy
ZWFkLT52aXN1YWxPdmVyZmxvd1JlY3QoKTsKQEAgLTEyOCwxMyArMTMwLDE1IEBAIExheW91dFVu
aXQgUmVuZGVyUmVnaW9uOjpwYWdlTG9naWNhbFRvcEZvck9mZnNldChMYXlvdXRVbml0IC8qIG9m
ZnNldCAqLykgY29uc3QKIAogYm9vbCBSZW5kZXJSZWdpb246OmlzRmlyc3RSZWdpb24oKSBjb25z
dAogewotICAgIEFTU0VSVChpc1ZhbGlkKCkgJiYgbV9mbG93VGhyZWFkKTsKKyAgICBBU1NFUlQo
aXNWYWxpZCgpKTsKKwogICAgIHJldHVybiBtX2Zsb3dUaHJlYWQtPmZpcnN0UmVnaW9uKCkgPT0g
dGhpczsKIH0KIAogYm9vbCBSZW5kZXJSZWdpb246OmlzTGFzdFJlZ2lvbigpIGNvbnN0CiB7Ci0g
ICAgQVNTRVJUKGlzVmFsaWQoKSAmJiBtX2Zsb3dUaHJlYWQpOworICAgIEFTU0VSVChpc1ZhbGlk
KCkpOworCiAgICAgcmV0dXJuIG1fZmxvd1RocmVhZC0+bGFzdFJlZ2lvbigpID09IHRoaXM7CiB9
CiAKQEAgLTE0OSw3ICsxNTMsNyBAQCB2b2lkIFJlbmRlclJlZ2lvbjo6cGFpbnRPYmplY3QoUGFp
bnRJbmZvJiBwYWludEluZm8sIGNvbnN0IExheW91dFBvaW50JiBwYWludE9mZgogICAgIC8vIFJl
bmRlckZsb3dUaHJlYWQgaXMgYSBzZWxmIHBhaW50aW5nIGxheWVyIChiZWluZyBhIHBvc2l0aW9u
ZWQgb2JqZWN0KSB3aG8gaXMgcGFpbnRpbmcgaXRzIGNoaWxkcmVuLCB0aGUgY29sbGVjdGVkIG9i
amVjdHMuCiAgICAgLy8gU2luY2Ugd2UgZG8gbm90IHdhbnQgdG8gcGFpbnQgdGhlIGZsb3cgdGhy
ZWFkIGNvbnRlbnQgbXVsdGlwbGUgdGltZXMgKGZvciBlYWNoIHBhaW50aW5nIHBoYXNlIG9mIHRo
ZSByZWdpb24gb2JqZWN0KSwKICAgICAvLyB3ZSBhbGxvdyB0aGUgZmxvdyB0aHJlYWQgcGFpbnRp
bmcgb25seSBmb3IgdGhlIHNlbGVjdGlvbiBhbmQgdGhlIGZvcmVncm91bmQgcGhhc2UuCi0gICAg
aWYgKCFtX2Zsb3dUaHJlYWQgfHwgIWlzVmFsaWQoKSB8fCAocGFpbnRJbmZvLnBoYXNlICE9IFBh
aW50UGhhc2VGb3JlZ3JvdW5kICYmIHBhaW50SW5mby5waGFzZSAhPSBQYWludFBoYXNlU2VsZWN0
aW9uKSkKKyAgICBpZiAoIWlzVmFsaWQoKSB8fCAocGFpbnRJbmZvLnBoYXNlICE9IFBhaW50UGhh
c2VGb3JlZ3JvdW5kICYmIHBhaW50SW5mby5waGFzZSAhPSBQYWludFBoYXNlU2VsZWN0aW9uKSkK
ICAgICAgICAgcmV0dXJuOwogCiAgICAgc2V0UmVnaW9uT2JqZWN0c1JlZ2lvblN0eWxlKCk7CkBA
IC0xNzIsNyArMTc2LDcgQEAgYm9vbCBSZW5kZXJSZWdpb246Om5vZGVBdFBvaW50KGNvbnN0IEhp
dFRlc3RSZXF1ZXN0JiByZXF1ZXN0LCBIaXRUZXN0UmVzdWx0JiByZXMKICAgICBib3VuZHNSZWN0
Lm1vdmVCeShhZGp1c3RlZExvY2F0aW9uKTsKICAgICBpZiAodmlzaWJsZVRvSGl0VGVzdGluZygp
ICYmIGFjdGlvbiA9PSBIaXRUZXN0Rm9yZWdyb3VuZCAmJiBsb2NhdGlvbkluQ29udGFpbmVyLmlu
dGVyc2VjdHMoYm91bmRzUmVjdCkpIHsKICAgICAgICAgLy8gQ2hlY2sgdGhlIGNvbnRlbnRzIG9m
IHRoZSBSZW5kZXJGbG93VGhyZWFkLgotICAgICAgICBpZiAobV9mbG93VGhyZWFkICYmIG1fZmxv
d1RocmVhZC0+aGl0VGVzdEZsb3dUaHJlYWRQb3J0aW9uSW5SZWdpb24odGhpcywgZmxvd1RocmVh
ZFBvcnRpb25SZWN0KCksIGZsb3dUaHJlYWRQb3J0aW9uT3ZlcmZsb3dSZWN0KCksIHJlcXVlc3Qs
IHJlc3VsdCwgbG9jYXRpb25JbkNvbnRhaW5lciwgTGF5b3V0UG9pbnQoYWRqdXN0ZWRMb2NhdGlv
bi54KCkgKyBib3JkZXJMZWZ0KCkgKyBwYWRkaW5nTGVmdCgpLCBhZGp1c3RlZExvY2F0aW9uLnko
KSArIGJvcmRlclRvcCgpICsgcGFkZGluZ1RvcCgpKSkpCisgICAgICAgIGlmIChtX2Zsb3dUaHJl
YWQtPmhpdFRlc3RGbG93VGhyZWFkUG9ydGlvbkluUmVnaW9uKHRoaXMsIGZsb3dUaHJlYWRQb3J0
aW9uUmVjdCgpLCBmbG93VGhyZWFkUG9ydGlvbk92ZXJmbG93UmVjdCgpLCByZXF1ZXN0LCByZXN1
bHQsIGxvY2F0aW9uSW5Db250YWluZXIsIExheW91dFBvaW50KGFkanVzdGVkTG9jYXRpb24ueCgp
ICsgYm9yZGVyTGVmdCgpICsgcGFkZGluZ0xlZnQoKSwgYWRqdXN0ZWRMb2NhdGlvbi55KCkgKyBi
b3JkZXJUb3AoKSArIHBhZGRpbmdUb3AoKSkpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAg
ICAgICAgIHVwZGF0ZUhpdFRlc3RSZXN1bHQocmVzdWx0LCBsb2NhdGlvbkluQ29udGFpbmVyLnBv
aW50KCkgLSB0b0xheW91dFNpemUoYWRqdXN0ZWRMb2NhdGlvbikpOwogICAgICAgICBpZiAoIXJl
c3VsdC5hZGROb2RlVG9SZWN0QmFzZWRUZXN0UmVzdWx0KGdlbmVyYXRpbmdOb2RlKCksIHJlcXVl
c3QsIGxvY2F0aW9uSW5Db250YWluZXIsIGJvdW5kc1JlY3QpKQpAQCAtMTk4LDcgKzIwMiw2IEBA
IHZvaWQgUmVuZGVyUmVnaW9uOjpjaGVja1JlZ2lvblN0eWxlKCkKIAogdm9pZCBSZW5kZXJSZWdp
b246OmluY3JlbWVudEF1dG9Mb2dpY2FsSGVpZ2h0Q291bnQoKQogewotICAgIEFTU0VSVChtX2Zs
b3dUaHJlYWQpOwogICAgIEFTU0VSVChpc1ZhbGlkKCkpOwogICAgIEFTU0VSVChtX2hhc0F1dG9M
b2dpY2FsSGVpZ2h0KTsKIApAQCAtMjA3LDcgKzIxMCw2IEBAIHZvaWQgUmVuZGVyUmVnaW9uOjpp
bmNyZW1lbnRBdXRvTG9naWNhbEhlaWdodENvdW50KCkKIAogdm9pZCBSZW5kZXJSZWdpb246OmRl
Y3JlbWVudEF1dG9Mb2dpY2FsSGVpZ2h0Q291bnQoKQogewotICAgIEFTU0VSVChtX2Zsb3dUaHJl
YWQpOwogICAgIEFTU0VSVChpc1ZhbGlkKCkpOwogCiAgICAgbV9mbG93VGhyZWFkLT5kZWNyZW1l
bnRBdXRvTG9naWNhbEhlaWdodFJlZ2lvbnMoKTsKQEAgLTI2MCw3ICsyNjIsNyBAQCB2b2lkIFJl
bmRlclJlZ2lvbjo6bGF5b3V0QmxvY2soYm9vbCByZWxheW91dENoaWxkcmVuLCBMYXlvdXRVbml0
KQogICAgIFN0YWNrU3RhdHM6OkxheW91dENoZWNrUG9pbnQgbGF5b3V0Q2hlY2tQb2ludDsKICAg
ICBSZW5kZXJCbG9jazo6bGF5b3V0QmxvY2socmVsYXlvdXRDaGlsZHJlbik7CiAKLSAgICBpZiAo
bV9mbG93VGhyZWFkICYmIGlzVmFsaWQoKSkgeworICAgIGlmIChpc1ZhbGlkKCkpIHsKICAgICAg
ICAgTGF5b3V0UmVjdCBvbGRSZWdpb25SZWN0KGZsb3dUaHJlYWRQb3J0aW9uUmVjdCgpKTsKICAg
ICAgICAgaWYgKCFpc0hvcml6b250YWxXcml0aW5nTW9kZSgpKQogICAgICAgICAgICAgb2xkUmVn
aW9uUmVjdCA9IG9sZFJlZ2lvblJlY3QudHJhbnNwb3NlZFJlY3QoKTsKQEAgLTI5NCw2ICsyOTYs
OCBAQCB2b2lkIFJlbmRlclJlZ2lvbjo6cmVwYWludEZsb3dUaHJlYWRDb250ZW50KGNvbnN0IExh
eW91dFJlY3QmIHJlcGFpbnRSZWN0LCBib29sCiAKIHZvaWQgUmVuZGVyUmVnaW9uOjpyZXBhaW50
Rmxvd1RocmVhZENvbnRlbnRSZWN0YW5nbGUoY29uc3QgTGF5b3V0UmVjdCYgcmVwYWludFJlY3Qs
IGJvb2wgaW1tZWRpYXRlLCBjb25zdCBMYXlvdXRSZWN0JiBmbG93VGhyZWFkUG9ydGlvblJlY3Qs
IGNvbnN0IExheW91dFJlY3QmIGZsb3dUaHJlYWRQb3J0aW9uT3ZlcmZsb3dSZWN0LCBjb25zdCBM
YXlvdXRQb2ludCYgcmVnaW9uTG9jYXRpb24pIGNvbnN0CiB7CisgICAgQVNTRVJUKGlzVmFsaWQo
KSk7CisKICAgICAvLyBXZSBvbmx5IGhhdmUgdG8gaXNzdWUgYSByZXBhaW50IGluIHRoaXMgcmVn
aW9uIGlmIHRoZSByZWdpb24gcmVjdCBpbnRlcnNlY3RzIHRoZSByZXBhaW50IHJlY3QuCiAgICAg
TGF5b3V0UmVjdCBmbGlwcGVkRmxvd1RocmVhZFBvcnRpb25SZWN0KGZsb3dUaHJlYWRQb3J0aW9u
UmVjdCk7CiAgICAgTGF5b3V0UmVjdCBmbGlwcGVkRmxvd1RocmVhZFBvcnRpb25PdmVyZmxvd1Jl
Y3QoZmxvd1RocmVhZFBvcnRpb25PdmVyZmxvd1JlY3QpOwpAQCAtMzU0LDYgKzM1OCw3IEBAIHZv
aWQgUmVuZGVyUmVnaW9uOjphdHRhY2hSZWdpb24oKQogICAgIGlmICghbV9mbG93VGhyZWFkKQog
ICAgICAgICByZXR1cm47CiAKKyAgICAvLyBPbmx5IGFmdGVyIGFkZGluZyB0aGUgcmVnaW9uIHRv
IHRoZSB0aHJlYWQsIHRoZSByZWdpb24gaXMgbWFya2VkIHRvIGJlIHZhbGlkLgogICAgIG1fZmxv
d1RocmVhZC0+YWRkUmVnaW9uVG9UaHJlYWQodGhpcyk7CiAKICAgICAvLyBUaGUgcmVnaW9uIGp1
c3QgZ290IGF0dGFjaGVkIHRvIHRoZSBmbG93IHRocmVhZCwgbGV0cyBjaGVjayB3aGV0aGVyCkBA
IC0zODAsMTcgKzM4NSwxNCBAQCB2b2lkIFJlbmRlclJlZ2lvbjo6ZGV0YWNoUmVnaW9uKCkKIAog
UmVuZGVyQm94UmVnaW9uSW5mbyogUmVuZGVyUmVnaW9uOjpyZW5kZXJCb3hSZWdpb25JbmZvKGNv
bnN0IFJlbmRlckJveCogYm94KSBjb25zdAogewotICAgIGlmICghbV9pc1ZhbGlkIHx8ICFtX2Zs
b3dUaHJlYWQpCi0gICAgICAgIHJldHVybiAwOworICAgIEFTU0VSVChpc1ZhbGlkKCkpOwogICAg
IHJldHVybiBtX3JlbmRlckJveFJlZ2lvbkluZm8uZ2V0KGJveCk7CiB9CiAKIFJlbmRlckJveFJl
Z2lvbkluZm8qIFJlbmRlclJlZ2lvbjo6c2V0UmVuZGVyQm94UmVnaW9uSW5mbyhjb25zdCBSZW5k
ZXJCb3gqIGJveCwgTGF5b3V0VW5pdCBsb2dpY2FsTGVmdEluc2V0LCBMYXlvdXRVbml0IGxvZ2lj
YWxSaWdodEluc2V0LAogICAgIGJvb2wgY29udGFpbmluZ0Jsb2NrQ2hhaW5Jc0luc2V0KQogewot
ICAgIEFTU0VSVChtX2lzVmFsaWQgJiYgbV9mbG93VGhyZWFkKTsKLSAgICBpZiAoIW1faXNWYWxp
ZCB8fCAhbV9mbG93VGhyZWFkKQotICAgICAgICByZXR1cm4gMDsKKyAgICBBU1NFUlQoaXNWYWxp
ZCgpKTsKIAogICAgIE93blB0cjxSZW5kZXJCb3hSZWdpb25JbmZvPiYgYm94SW5mbyA9IG1fcmVu
ZGVyQm94UmVnaW9uSW5mby5hZGQoYm94LCBudWxscHRyKS5pdGVyYXRvci0+dmFsdWU7CiAgICAg
aWYgKGJveEluZm8pCkBAIC00MTgsMTUgKzQyMCwxMyBAQCB2b2lkIFJlbmRlclJlZ2lvbjo6ZGVs
ZXRlQWxsUmVuZGVyQm94UmVnaW9uSW5mbygpCiAKIExheW91dFVuaXQgUmVuZGVyUmVnaW9uOjps
b2dpY2FsVG9wT2ZGbG93VGhyZWFkQ29udGVudFJlY3QoY29uc3QgTGF5b3V0UmVjdCYgcmVjdCkg
Y29uc3QKIHsKLSAgICBpZiAoIW1faXNWYWxpZCB8fCAhZmxvd1RocmVhZCgpKQotICAgICAgICBy
ZXR1cm4gMDsKKyAgICBBU1NFUlQoaXNWYWxpZCgpKTsKICAgICByZXR1cm4gZmxvd1RocmVhZCgp
LT5pc0hvcml6b250YWxXcml0aW5nTW9kZSgpID8gcmVjdC55KCkgOiByZWN0LngoKTsKIH0KIAog
TGF5b3V0VW5pdCBSZW5kZXJSZWdpb246OmxvZ2ljYWxCb3R0b21PZkZsb3dUaHJlYWRDb250ZW50
UmVjdChjb25zdCBMYXlvdXRSZWN0JiByZWN0KSBjb25zdAogewotICAgIGlmICghbV9pc1ZhbGlk
IHx8ICFmbG93VGhyZWFkKCkpCi0gICAgICAgIHJldHVybiAwOworICAgIEFTU0VSVChpc1ZhbGlk
KCkpOwogICAgIHJldHVybiBmbG93VGhyZWFkKCktPmlzSG9yaXpvbnRhbFdyaXRpbmdNb2RlKCkg
PyByZWN0Lm1heFkoKSA6IHJlY3QubWF4WCgpOwogfQogCkBAIC01OTAsNyArNTkwLDggQEAgdm9p
ZCBSZW5kZXJSZWdpb246OmNsZWFyT2JqZWN0U3R5bGVJblJlZ2lvbihjb25zdCBSZW5kZXJPYmpl
Y3QqIG9iamVjdCkKIHZvaWQgUmVuZGVyUmVnaW9uOjpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdp
ZHRocygpCiB7CiAgICAgQVNTRVJUKHByZWZlcnJlZExvZ2ljYWxXaWR0aHNEaXJ0eSgpKTsKLSAg
ICBpZiAoIW1fZmxvd1RocmVhZCB8fCAhbV9pc1ZhbGlkKSB7CisKKyAgICBpZiAoIWlzVmFsaWQo
KSkgewogICAgICAgICBSZW5kZXJCbG9jazo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMo
KTsKICAgICAgICAgcmV0dXJuOwogICAgIH0K
</data>

          </attachment>
      

    </bug>

</bugzilla>