<?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>53179</bug_id>
          
          <creation_ts>2011-01-26 10:39:48 -0800</creation_ts>
          <short_desc>[chromium] Implement reflections for composited layers</short_desc>
          <delta_ts>2011-02-03 17:39:26 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>53679</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Vangelis Kokkevis">vangelis</reporter>
          <assigned_to name="Vangelis Kokkevis">vangelis</assigned_to>
          <cc>backer</cc>
    
    <cc>jamesr</cc>
    
    <cc>kbr</cc>
    
    <cc>mihaip</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>340342</commentid>
    <comment_count>0</comment_count>
    <who name="Vangelis Kokkevis">vangelis</who>
    <bug_when>2011-01-26 10:39:48 -0800</bug_when>
    <thetext>Add support for the -webkit-box-reflect property</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>343540</commentid>
    <comment_count>1</comment_count>
      <attachid>80825</attachid>
    <who name="Vangelis Kokkevis">vangelis</who>
    <bug_when>2011-02-01 14:19:18 -0800</bug_when>
    <thetext>Created attachment 80825
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>343562</commentid>
    <comment_count>2</comment_count>
      <attachid>80825</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-02-01 14:48:04 -0800</bug_when>
    <thetext>Comment on attachment 80825
Patch

Looks good to me, in particular the drawableContentRect() refactoring. Do we need test expectations updates for the chromium-gpu port?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>344295</commentid>
    <comment_count>3</comment_count>
    <who name="Vangelis Kokkevis">vangelis</who>
    <bug_when>2011-02-02 15:08:52 -0800</bug_when>
    <thetext>Committed r77425: &lt;http://trac.webkit.org/changeset/77425&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>344297</commentid>
    <comment_count>4</comment_count>
    <who name="Vangelis Kokkevis">vangelis</who>
    <bug_when>2011-02-02 15:10:06 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 80825 [details])
&gt; Looks good to me, in particular the drawableContentRect() refactoring. Do we need test expectations updates for the chromium-gpu port?

New test expectations will be harvested from build bots and updated once the patch lands.  At the moment all compositing tests are marked as PASS FAIL so they won&apos;t turn the chromium-gpu bot red.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>344675</commentid>
    <comment_count>5</comment_count>
    <who name="Jonathan Backer">backer</who>
    <bug_when>2011-02-03 06:38:08 -0800</bug_when>
    <thetext>Regression on http://webkit.org/blog/386/3d-transforms/

ASSERTION FAILED: m_ptr
(third_party/WebKit/Source/JavaScriptCore/wtf/OwnPtr.h:66 typename WTF::RemovePointer&lt;T&gt;::Type* WTF::OwnPtr&lt;T&gt;::operator-&gt;() const [with T = WebCore::RenderSurfaceChromium])

This is on the Linux build. The regression first occurred on a WebKit roll (chromium r73597). From this, I narrowed it down to this particular WebKit commit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>344684</commentid>
    <comment_count>6</comment_count>
    <who name="Jonathan Backer">backer</who>
    <bug_when>2011-02-03 06:55:58 -0800</bug_when>
    <thetext>Based on advice from #webkit, I&apos;ve filed a separate bug for the regression (https://bugs.webkit.org/show_bug.cgi?id=53679).</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>80825</attachid>
            <date>2011-02-01 14:19:18 -0800</date>
            <delta_ts>2011-02-01 14:48:04 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-53179-20110201141917.patch</filename>
            <type>text/plain</type>
            <size>16910</size>
            <attacher name="Vangelis Kokkevis">vangelis</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDc3MjgxKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNDQgQEAKKzIwMTEtMDItMDEgIFZhbmdlbGlz
IEtva2tldmlzICA8dmFuZ2VsaXNAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtjaHJvbWl1bV0gQWRkaW5nIHN1cHBvcnQgZm9y
IHJlZmxlY3Rpb25zIHRvIHRoZSBhY2NlbGVyYXRlZAorICAgICAgICBjb21wb3NpdGluZyBwYXRo
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTMxNzkK
KworICAgICAgICBBbGwgbGF5b3V0IHRlc3RzIGluIGNvbXBvc2l0aW5nL3JlZmxlY3Rpb25zIGdl
bmVyYXRlIGNvcnJlY3QKKyAgICAgICAgcmVzdWx0cyB3aXRoIHRoZSBleGNlcHRpb24gb2Y6Cisg
ICAgICAgIDEuIG5lc3RlZC1yZWZsZWN0aW9uLWFuY2hvci1wb2ludC5odG1sIDogVGhlcmUgYXBw
ZWFycyB0byBiZQorICAgICAgICAgICBzb21lIGlzc3VlIHdpdGggdGhlIGxheWVyIHRyYW5zZm9y
bSBtYXRoIHRoYXQgSSBoYXZlbid0IGJlZW4KKyAgICAgICAgICAgYWJsZSB0byB0cmFjayBkb3du
IHlldC4KKyAgICAgICAgMi4gcmVmbGVjdGlvbi1vcGFjaXR5Lmh0bWwgOiBUaGUgY3VycmVudCBp
bXBsZW1lbnRhdGlvbiBhcHBsaWVzCisgICAgICAgICAgIG9wYWNpdHkgYmVmb3JlIGRvaW5nIHRo
ZSByZWZsZWN0aW9uIHdoaWNoIG1ha2VzIHRoaXMgdGVzdAorICAgICAgICAgICBwcm9kdWNlIGlu
Y29ycmVjdCByZXN1bHRzLiAgVGhpcyB3aWxsIGFmZmVjdCByZWZsZWN0ZWQgbGF5ZXJzCisgICAg
ICAgICAgIHdpdGggb3BhY2l0eSB0aGF0IG92ZXJsYXAgdGhlaXIgb3JpZ2luYWwgbGF5ZXIuICBG
SVhNRSBjb21tZW50CisgICAgICAgICAgIGFkZGVkIGluIHRoZSBjb2RlLgorCisgICAgICAgIFRl
c3RzOiBDb3ZlcmVkIGJ5IGV4aXN0aW5nIGxheW91dCB0ZXN0cyBpbiBjb21wb3NpdGluZy9yZWZs
ZWN0aW9ucy4KKyAgICAgICAgICAgICAgIFBsZWFzZSBzZWUgYWJvdmUgZm9yIGV4Y2VwdGlvbnMu
CisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9HcmFwaGljc0xheWVyQ2hy
b21pdW0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NMYXllckNocm9taXVtOjpzZXRS
ZXBsaWNhdGVkQnlMYXllcik6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0xheWVyQ2hyb21p
dW06OnVwZGF0ZUFuY2hvclBvaW50KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJv
bWl1bS9HcmFwaGljc0xheWVyQ2hyb21pdW0uaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9jaHJvbWl1bS9MYXllckNocm9taXVtLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheWVyQ2hy
b21pdW06OkxheWVyQ2hyb21pdW0pOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL0xheWVyQ2hyb21pdW0uaDoKKyAgICAgICAgKFdlYkNvcmU6OkxheWVyQ2hyb21pdW06OnNl
dFJlcGxpY2FMYXllcik6CisgICAgICAgIChXZWJDb3JlOjpMYXllckNocm9taXVtOjpyZXBsaWNh
TGF5ZXIpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVyUmVuZGVy
ZXJDaHJvbWl1bS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMYXllclJlbmRlcmVyQ2hyb21pdW06
OnVwZGF0ZUxheWVyc1JlY3Vyc2l2ZSk6CisgICAgICAgIChXZWJDb3JlOjpMYXllclJlbmRlcmVy
Q2hyb21pdW06OmRyYXdMYXllcik6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vUmVuZGVyU3VyZmFjZUNocm9taXVtLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN1
cmZhY2VDaHJvbWl1bTo6ZHJhd2FibGVDb250ZW50UmVjdCk6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJTdXJmYWNlQ2hyb21pdW06OmRyYXdTdXJmYWNlKToKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlclN1cmZhY2VDaHJvbWl1bTo6ZHJhdyk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vUmVuZGVyU3VyZmFjZUNocm9taXVtLmg6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJTdXJmYWNlQ2hyb21pdW06OmRyYXdUcmFuc2Zvcm0pOgorCiAyMDExLTAyLTAxICBCZXRoIERh
a2luICA8YmRha2luQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2Vpbmln
LgpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vR3JhcGhp
Y3NMYXllckNocm9taXVtLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9HcmFwaGljc0xheWVyQ2hyb21pdW0uY3BwCShyZXZpc2lvbiA3
NjY4NykKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0dyYXBo
aWNzTGF5ZXJDaHJvbWl1bS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI5NCw2ICsyOTQsMTUgQEAg
dm9pZCBHcmFwaGljc0xheWVyQ2hyb21pdW06OnNldE9wYWNpdHkoZgogICAgIHByaW1hcnlMYXll
cigpLT5zZXRPcGFjaXR5KG9wYWNpdHkpOwogfQogCit2b2lkIEdyYXBoaWNzTGF5ZXJDaHJvbWl1
bTo6c2V0UmVwbGljYXRlZEJ5TGF5ZXIoR3JhcGhpY3NMYXllciogbGF5ZXIpCit7CisgICAgR3Jh
cGhpY3NMYXllckNocm9taXVtKiBsYXllckNocm9taXVtID0gc3RhdGljX2Nhc3Q8R3JhcGhpY3NM
YXllckNocm9taXVtKj4obGF5ZXIpOworICAgIEdyYXBoaWNzTGF5ZXI6OnNldFJlcGxpY2F0ZWRC
eUxheWVyKGxheWVyKTsKKyAgICBMYXllckNocm9taXVtKiByZXBsaWNhTGF5ZXIgPSBsYXllckNo
cm9taXVtID8gbGF5ZXJDaHJvbWl1bS0+cHJpbWFyeUxheWVyKCkgOiAwOworICAgIHByaW1hcnlM
YXllcigpLT5zZXRSZXBsaWNhTGF5ZXIocmVwbGljYUxheWVyKTsKK30KKworCiB2b2lkIEdyYXBo
aWNzTGF5ZXJDaHJvbWl1bTo6c2V0Q29udGVudHNOZWVkc0Rpc3BsYXkoKQogewogICAgIGlmICht
X2NvbnRlbnRzTGF5ZXIpCkBAIC01MDUsNiArNTE0LDcgQEAgdm9pZCBHcmFwaGljc0xheWVyQ2hy
b21pdW06OnVwZGF0ZUFuY2hvcgogewogICAgIHByaW1hcnlMYXllcigpLT5zZXRBbmNob3JQb2lu
dChGbG9hdFBvaW50KG1fYW5jaG9yUG9pbnQueCgpLCBtX2FuY2hvclBvaW50LnkoKSkpOwogICAg
IHByaW1hcnlMYXllcigpLT5zZXRBbmNob3JQb2ludFoobV9hbmNob3JQb2ludC56KCkpOworCiAg
ICAgdXBkYXRlTGF5ZXJQb3NpdGlvbigpOwogfQogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9HcmFwaGljc0xheWVyQ2hyb21pdW0uaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9HcmFwaGljc0xh
eWVyQ2hyb21pdW0uaAkocmV2aXNpb24gNzY2ODcpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9HcmFwaGljc0xheWVyQ2hyb21pdW0uaAkod29ya2luZyBjb3B5
KQpAQCAtNzUsNiArNzUsOCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldENvbnRlbnRz
T3BhcXVlKGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRCYWNrZmFjZVZpc2liaWxpdHkoYm9v
bCk7CiAKKyAgICB2aXJ0dWFsIHZvaWQgc2V0UmVwbGljYXRlZEJ5TGF5ZXIoR3JhcGhpY3NMYXll
ciopOworCiAgICAgdmlydHVhbCB2b2lkIHNldE9wYWNpdHkoZmxvYXQpOwogCiAgICAgdmlydHVh
bCB2b2lkIHNldE5lZWRzRGlzcGxheSgpOwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2hyb21pdW0vTGF5ZXJDaHJvbWl1bS5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF5ZXJDaHJvbWl1bS5jcHAJKHJl
dmlzaW9uIDc2Njg3KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vTGF5ZXJDaHJvbWl1bS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE2Myw2ICsxNjMsNyBAQCBM
YXllckNocm9taXVtOjpMYXllckNocm9taXVtKEdyYXBoaWNzTGF5CiAgICAgLCBtX2RyYXdEZXB0
aCgwKQogICAgICwgbV9sYXllclJlbmRlcmVyKDApCiAgICAgLCBtX3JlbmRlclN1cmZhY2UoMCkK
KyAgICAsIG1fcmVwbGljYUxheWVyKDApCiB7CiB9CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVyQ2hyb21pdW0uaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9MYXllckNocm9taXVtLmgJ
KHJldmlzaW9uIDc2Njg3KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hy
b21pdW0vTGF5ZXJDaHJvbWl1bS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xNTUsNiArMTU1LDkgQEAg
cHVibGljOgogCiAgICAgdm9pZCBzZXRPd25lcihHcmFwaGljc0xheWVyQ2hyb21pdW0qIG93bmVy
KSB7IG1fb3duZXIgPSBvd25lcjsgfQogCisgICAgdm9pZCBzZXRSZXBsaWNhTGF5ZXIoTGF5ZXJD
aHJvbWl1bSogbGF5ZXIpIHsgbV9yZXBsaWNhTGF5ZXIgPSBsYXllcjsgfQorICAgIExheWVyQ2hy
b21pdW0qIHJlcGxpY2FMYXllcigpIHsgcmV0dXJuIG1fcmVwbGljYUxheWVyOyB9CisKICAgICAv
LyBSZXR1cm5zIHRoZSByZWN0IGNvbnRhaW50YWluaW5nIHRoaXMgbGF5ZXIgaW4gdGhlIGN1cnJl
bnQgdmlldydzIGNvb3JkaW5hdGUgc3lzdGVtLgogICAgIGNvbnN0IEludFJlY3QgZ2V0RHJhd1Jl
Y3QoKSBjb25zdDsKIApAQCAtMzA1LDYgKzMwOCw5IEBAIHByaXZhdGU6CiAgICAgLy8gSGllcmFy
Y2hpY2FsIGJvdW5kaW5nIHJlY3QgY29udGFpbmluZyB0aGUgbGF5ZXIgYW5kIGl0cyBkZXNjZW5k
YW50cy4KICAgICBJbnRSZWN0IG1fZHJhd2FibGVDb250ZW50UmVjdDsKIAorICAgIC8vIFJlcGxp
Y2EgbGF5ZXIgdXNlZCBmb3IgcmVmbGVjdGlvbnMuCisgICAgTGF5ZXJDaHJvbWl1bSogbV9yZXBs
aWNhTGF5ZXI7CisKICAgICBTdHJpbmcgbV9uYW1lOwogfTsKIApJbmRleDogU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF5ZXJSZW5kZXJlckNocm9taXVtLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9M
YXllclJlbmRlcmVyQ2hyb21pdW0uY3BwCShyZXZpc2lvbiA3NjY4NykKKysrIFNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVyUmVuZGVyZXJDaHJvbWl1bS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTQ0NywxNCArNDQ3LDE3IEBAIHZvaWQgTGF5ZXJSZW5kZXJlckNo
cm9taXVtOjp1cGRhdGVMYXllcnMKICAgICAvLyB0aGVzZSBjb25kaXRpb25zIGhvbGQ6CiAgICAg
Ly8gMS4gVGhlIGxheWVyIGNsaXBzIGl0cyBkZXNjZW5kYW50cyBhbmQgaXRzIHRyYW5zZm9ybSBp
cyBub3QgYSBzaW1wbGUgdHJhbnNsYXRpb24uCiAgICAgLy8gMi4gSWYgdGhlIGxheWVyIGhhcyBv
cGFjaXR5ICE9IDEgYW5kIGRvZXMgbm90IGhhdmUgYSBwcmVzZXJ2ZXMtM2QgdHJhbnNmb3JtIHN0
eWxlLgorICAgIC8vIDMuIFRoZSBsYXllciB1c2VzIGEgbWFzaworICAgIC8vIDQuIFRoZSBsYXll
ciBoYXMgYSByZXBsaWNhICh1c2VkIGZvciByZWZsZWN0aW9ucykKICAgICAvLyBJZiBhIGxheWVy
IHByZXNlcnZlcy0zZCB0aGVuIHdlIGRvbid0IGNyZWF0ZSBhIFJlbmRlclN1cmZhY2UgZm9yIGl0
IHRvIGF2b2lkIGZsYXR0ZW5pbmcKICAgICAvLyBvdXQgaXRzIGNoaWxkcmVuLiBUaGUgb3BhY2l0
eSB2YWx1ZSBvZiB0aGUgY2hpbGRyZW4gbGF5ZXJzIGlzIG11bHRpcGxpZWQgYnkgdGhlIG9wYWNp
dHkKICAgICAvLyBvZiB0aGVpciBwYXJlbnQuCiAgICAgYm9vbCB1c2VTdXJmYWNlRm9yQ2xpcHBp
bmcgPSBsYXllci0+bWFza3NUb0JvdW5kcygpICYmICFpc1NjYWxlT3JUcmFuc2xhdGlvbihjb21i
aW5lZFRyYW5zZm9ybSk7CiAgICAgYm9vbCB1c2VTdXJmYWNlRm9yT3BhY2l0eSA9IGxheWVyLT5v
cGFjaXR5KCkgIT0gMSAmJiAhbGF5ZXItPnByZXNlcnZlczNEKCk7CiAgICAgYm9vbCB1c2VTdXJm
YWNlRm9yTWFza2luZyA9IGxheWVyLT5tYXNrTGF5ZXIoKTsKKyAgICBib29sIHVzZVN1cmZhY2VG
b3JSZWZsZWN0aW9uID0gbGF5ZXItPnJlcGxpY2FMYXllcigpOwogICAgIGlmICgoKHVzZVN1cmZh
Y2VGb3JDbGlwcGluZyB8fCB1c2VTdXJmYWNlRm9yT3BhY2l0eSkgJiYgbGF5ZXItPmRlc2NlbmRh
bnRzRHJhd0NvbnRlbnQoKSkKLSAgICAgICAgfHwgdXNlU3VyZmFjZUZvck1hc2tpbmcpIHsKKyAg
ICAgICAgfHwgdXNlU3VyZmFjZUZvck1hc2tpbmcgfHwgdXNlU3VyZmFjZUZvclJlZmxlY3Rpb24p
IHsKICAgICAgICAgUmVuZGVyU3VyZmFjZUNocm9taXVtKiByZW5kZXJTdXJmYWNlID0gbGF5ZXIt
Pm1fcmVuZGVyU3VyZmFjZS5nZXQoKTsKICAgICAgICAgaWYgKCFyZW5kZXJTdXJmYWNlKQogICAg
ICAgICAgICAgcmVuZGVyU3VyZmFjZSA9IGxheWVyLT5jcmVhdGVSZW5kZXJTdXJmYWNlKCk7CkBA
IC00OTUsNiArNDk4LDExIEBAIHZvaWQgTGF5ZXJSZW5kZXJlckNocm9taXVtOjp1cGRhdGVMYXll
cnMKICAgICAgICAgfSBlbHNlCiAgICAgICAgICAgICByZW5kZXJTdXJmYWNlLT5tX21hc2tMYXll
ciA9IDA7CiAKKyAgICAgICAgaWYgKGxheWVyLT5yZXBsaWNhTGF5ZXIoKSAmJiBsYXllci0+cmVw
bGljYUxheWVyKCktPm1hc2tMYXllcigpKSB7CisgICAgICAgICAgICBsYXllci0+cmVwbGljYUxh
eWVyKCktPm1hc2tMYXllcigpLT5zZXRMYXllclJlbmRlcmVyKHRoaXMpOworICAgICAgICAgICAg
bGF5ZXItPnJlcGxpY2FMYXllcigpLT5tYXNrTGF5ZXIoKS0+bV90YXJnZXRSZW5kZXJTdXJmYWNl
ID0gcmVuZGVyU3VyZmFjZTsKKyAgICAgICAgfQorCiAgICAgICAgIHJlbmRlclN1cmZhY2VMYXll
ckxpc3QuYXBwZW5kKGxheWVyKTsKICAgICB9IGVsc2UgewogICAgICAgICAvLyBEVCA9IE1bcF0g
KiBMVApAQCAtNTY2LDEwICs1NzQsNyBAQCB2b2lkIExheWVyUmVuZGVyZXJDaHJvbWl1bTo6dXBk
YXRlTGF5ZXJzCiAKICAgICAgICAgaWYgKHN1YmxheWVyLT5tX3JlbmRlclN1cmZhY2UpIHsKICAg
ICAgICAgICAgIFJlbmRlclN1cmZhY2VDaHJvbWl1bSogc3VibGF5ZXJSZW5kZXJTdXJmYWNlID0g
c3VibGF5ZXItPm1fcmVuZGVyU3VyZmFjZS5nZXQoKTsKLSAgICAgICAgICAgIGNvbnN0IEludFJl
Y3QmIGNvbnRlbnRSZWN0ID0gc3VibGF5ZXJSZW5kZXJTdXJmYWNlLT5jb250ZW50UmVjdCgpOwot
ICAgICAgICAgICAgRmxvYXRSZWN0IHN1YmxheWVyUmVjdCgtMC41ICogY29udGVudFJlY3Qud2lk
dGgoKSwgLTAuNSAqIGNvbnRlbnRSZWN0LmhlaWdodCgpLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb250ZW50UmVjdC53aWR0aCgpLCBjb250ZW50UmVjdC5oZWlnaHQoKSk7
Ci0gICAgICAgICAgICBsYXllci0+bV9kcmF3YWJsZUNvbnRlbnRSZWN0LnVuaXRlKGVuY2xvc2lu
Z0ludFJlY3Qoc3VibGF5ZXJSZW5kZXJTdXJmYWNlLT5tX2RyYXdUcmFuc2Zvcm0ubWFwUmVjdChz
dWJsYXllclJlY3QpKSk7CisgICAgICAgICAgICBsYXllci0+bV9kcmF3YWJsZUNvbnRlbnRSZWN0
LnVuaXRlKGVuY2xvc2luZ0ludFJlY3Qoc3VibGF5ZXJSZW5kZXJTdXJmYWNlLT5kcmF3YWJsZUNv
bnRlbnRSZWN0KCkpKTsKICAgICAgICAgICAgIGRlc2NlbmRhbnRzLmFwcGVuZChzdWJsYXllcik7
CiAgICAgICAgIH0gZWxzZQogICAgICAgICAgICAgbGF5ZXItPm1fZHJhd2FibGVDb250ZW50UmVj
dC51bml0ZShzdWJsYXllci0+bV9kcmF3YWJsZUNvbnRlbnRSZWN0KTsKQEAgLTU4NSw5ICs1OTAs
MTMgQEAgdm9pZCBMYXllclJlbmRlcmVyQ2hyb21pdW06OnVwZGF0ZUxheWVycwogCiAgICAgICAg
IC8vIFJlc3RyaWN0IHRoZSBSZW5kZXJTdXJmYWNlIHNpemUgdG8gdGhlIHBvcnRpb24gdGhhdCdz
IHZpc2libGUuCiAgICAgICAgIEZsb2F0U2l6ZSBjZW50ZXJPZmZzZXREdWVUb0NsaXBwaW5nOwot
ICAgICAgICByZW5kZXJTdXJmYWNlLT5tX2NvbnRlbnRSZWN0LmludGVyc2VjdChsYXllci0+bV9z
Y2lzc29yUmVjdCk7Ci0gICAgICAgIEZsb2F0UG9pbnQgY2xpcHBlZFN1cmZhY2VDZW50ZXIgPSBy
ZW5kZXJTdXJmYWNlLT5jb250ZW50UmVjdENlbnRlcigpOwotICAgICAgICBjZW50ZXJPZmZzZXRE
dWVUb0NsaXBwaW5nID0gY2xpcHBlZFN1cmZhY2VDZW50ZXIgLSBzdXJmYWNlQ2VudGVyOworICAg
ICAgICAvLyBEb24ndCBjbGlwIGlmIHRoZSBsYXllciBpcyByZWZsZWN0ZWQgYXMgdGhlIHJlZmxl
Y3Rpb24gc2hvdWxkbid0IGJlCisgICAgICAgIC8vIGNsaXBwZWQuCisgICAgICAgIGlmICghbGF5
ZXItPnJlcGxpY2FMYXllcigpKSB7CisgICAgICAgICAgICByZW5kZXJTdXJmYWNlLT5tX2NvbnRl
bnRSZWN0LmludGVyc2VjdChsYXllci0+bV9zY2lzc29yUmVjdCk7CisgICAgICAgICAgICBGbG9h
dFBvaW50IGNsaXBwZWRTdXJmYWNlQ2VudGVyID0gcmVuZGVyU3VyZmFjZS0+Y29udGVudFJlY3RD
ZW50ZXIoKTsKKyAgICAgICAgICAgIGNlbnRlck9mZnNldER1ZVRvQ2xpcHBpbmcgPSBjbGlwcGVk
U3VyZmFjZUNlbnRlciAtIHN1cmZhY2VDZW50ZXI7CisgICAgICAgIH0KIAogICAgICAgICAvLyBU
aGUgUmVuZGVyU3VyZmFjZSBiYWNraW5nIHRleHR1cmUgY2Fubm90IGV4Y2VlZCB0aGUgbWF4aW11
bSBzdXBwb3J0ZWQKICAgICAgICAgLy8gdGV4dHVyZSBzaXplLgpAQCAtNjA0LDYgKzYxMywxNSBA
QCB2b2lkIExheWVyUmVuZGVyZXJDaHJvbWl1bTo6dXBkYXRlTGF5ZXJzCiAgICAgICAgIC8vIEFk
anVzdCB0aGUgb3JpZ2luIG9mIHRoZSB0cmFuc2Zvcm0gdG8gYmUgdGhlIGNlbnRlciBvZiB0aGUg
cmVuZGVyIHN1cmZhY2UuCiAgICAgICAgIHJlbmRlclN1cmZhY2UtPm1fZHJhd1RyYW5zZm9ybSA9
IHJlbmRlclN1cmZhY2UtPm1fb3JpZ2luVHJhbnNmb3JtOwogICAgICAgICByZW5kZXJTdXJmYWNl
LT5tX2RyYXdUcmFuc2Zvcm0udHJhbnNsYXRlM2Qoc3VyZmFjZUNlbnRlci54KCkgKyBjZW50ZXJP
ZmZzZXREdWVUb0NsaXBwaW5nLndpZHRoKCksIHN1cmZhY2VDZW50ZXIueSgpICsgY2VudGVyT2Zm
c2V0RHVlVG9DbGlwcGluZy5oZWlnaHQoKSwgMCk7CisKKyAgICAgICAgLy8gQ29tcHV0ZSB0aGUg
dHJhbnNmb3JtYXRpb24gbWF0cml4IHVzZWQgdG8gZHJhdyB0aGUgcmVwbGljYSBvZiB0aGUgcmVu
ZGVyCisgICAgICAgIC8vIHN1cmZhY2UuCisgICAgICAgIGlmIChsYXllci0+cmVwbGljYUxheWVy
KCkpIHsKKyAgICAgICAgICAgIHJlbmRlclN1cmZhY2UtPm1fcmVwbGljYURyYXdUcmFuc2Zvcm0g
PSByZW5kZXJTdXJmYWNlLT5tX29yaWdpblRyYW5zZm9ybTsKKyAgICAgICAgICAgIHJlbmRlclN1
cmZhY2UtPm1fcmVwbGljYURyYXdUcmFuc2Zvcm0udHJhbnNsYXRlM2QobGF5ZXItPnJlcGxpY2FM
YXllcigpLT5wb3NpdGlvbigpLngoKSwgbGF5ZXItPnJlcGxpY2FMYXllcigpLT5wb3NpdGlvbigp
LnkoKSwgMCk7CisgICAgICAgICAgICByZW5kZXJTdXJmYWNlLT5tX3JlcGxpY2FEcmF3VHJhbnNm
b3JtLm11bHRpcGx5KGxheWVyLT5yZXBsaWNhTGF5ZXIoKS0+dHJhbnNmb3JtKCkpOworICAgICAg
ICAgICAgcmVuZGVyU3VyZmFjZS0+bV9yZXBsaWNhRHJhd1RyYW5zZm9ybS50cmFuc2xhdGUzZChz
dXJmYWNlQ2VudGVyLngoKSAtIGFuY2hvclBvaW50LngoKSAqIGJvdW5kcy53aWR0aCgpLCBzdXJm
YWNlQ2VudGVyLnkoKSAtIGFuY2hvclBvaW50LnkoKSAqIGJvdW5kcy5oZWlnaHQoKSwgMCk7Cisg
ICAgICAgIH0KICAgICB9CiAKICAgICAvLyBDb21wdXRlIHRoZSBkZXB0aCB2YWx1ZSBvZiB0aGUg
Y2VudGVyIG9mIHRoZSBsYXllciB3aGljaCB3aWxsIGJlIHVzZWQgd2hlbgpAQCAtNjkwLDEwICs3
MDgsNyBAQCB2b2lkIExheWVyUmVuZGVyZXJDaHJvbWl1bTo6ZHJhd0xheWVyKExhCiAgICAgaWYg
KCFpc0xheWVyVmlzaWJsZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgLy8gRklYTUU6IE5lZWQg
dG8gdGFrZSBpbnRvIGFjY291bnQgdGhlIHRyYW5zZm9ybSBvZiB0aGUgY29udGFpbmluZwotICAg
IC8vIFJlbmRlclN1cmZhY2UgaGVyZSwgb3RoZXJ3aXNlIHNpbmdsZS1zaWRlZCBsYXllcnMgdGhh
dCBkcmF3IG9uCi0gICAgLy8gdHJhbnNmb3JtZWQgc3VyZmFjZXMgd29uJ3QgYWx3YXlzIGJlIGN1
bGxlZCBwcm9wZXJseS4KLSAgICBpZiAoIWxheWVyLT5kb3VibGVTaWRlZCgpICYmIGxheWVyLT5t
X2RyYXdUcmFuc2Zvcm0ubTMzKCkgPCAwKQorICAgIGlmICghbGF5ZXItPmRvdWJsZVNpZGVkKCkg
JiYgbGF5ZXItPm1fcmVuZGVyU3VyZmFjZS0+ZHJhd1RyYW5zZm9ybSgpLm11bHRpcGx5KGxheWVy
LT5tX2RyYXdUcmFuc2Zvcm0pLm0zMygpIDwgMCkKICAgICAgICAgIHJldHVybjsKIAogICAgIGlm
IChsYXllci0+ZHJhd3NDb250ZW50KCkpIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Nocm9taXVtL1JlbmRlclN1cmZhY2VDaHJvbWl1bS5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vUmVuZGVyU3VyZmFj
ZUNocm9taXVtLmNwcAkocmV2aXNpb24gNzY2ODcpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9SZW5kZXJTdXJmYWNlQ2hyb21pdW0uY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0xNDgsNiArMTQ4LDE3IEBAIExheWVyUmVuZGVyZXJDaHJvbWl1bSogUmVuZGVyU3Vy
ZmFjZUNocm8KICAgICByZXR1cm4gbV9vd25pbmdMYXllci0+bGF5ZXJSZW5kZXJlcigpOwogfQog
CitGbG9hdFJlY3QgUmVuZGVyU3VyZmFjZUNocm9taXVtOjpkcmF3YWJsZUNvbnRlbnRSZWN0KCkg
Y29uc3QKK3sKKyAgICBGbG9hdFJlY3QgbG9jYWxDb250ZW50UmVjdCgtMC41ICogbV9jb250ZW50
UmVjdC53aWR0aCgpLCAtMC41ICogbV9jb250ZW50UmVjdC5oZWlnaHQoKSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBtX2NvbnRlbnRSZWN0LndpZHRoKCksIG1fY29udGVudFJlY3Qu
aGVpZ2h0KCkpOworICAgIEZsb2F0UmVjdCBkcmF3YWJsZUNvbnRlbnRSZWN0ID0gbV9kcmF3VHJh
bnNmb3JtLm1hcFJlY3QobG9jYWxDb250ZW50UmVjdCk7CisgICAgaWYgKG1fb3duaW5nTGF5ZXIt
PnJlcGxpY2FMYXllcigpKQorICAgICAgICBkcmF3YWJsZUNvbnRlbnRSZWN0LnVuaXRlKG1fcmVw
bGljYURyYXdUcmFuc2Zvcm0ubWFwUmVjdChsb2NhbENvbnRlbnRSZWN0KSk7CisKKyAgICByZXR1
cm4gZHJhd2FibGVDb250ZW50UmVjdDsKK30KKwogYm9vbCBSZW5kZXJTdXJmYWNlQ2hyb21pdW06
OnByZXBhcmVDb250ZW50c1RleHR1cmUoKQogewogICAgIEludFNpemUgcmVxdWlyZWRTaXplKG1f
Y29udGVudFJlY3Quc2l6ZSgpKTsKQEAgLTE2OCwyNiArMTc5LDI0IEBAIGJvb2wgUmVuZGVyU3Vy
ZmFjZUNocm9taXVtOjpwcmVwYXJlQ29udGUKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBS
ZW5kZXJTdXJmYWNlQ2hyb21pdW06OmRyYXcoKQordm9pZCBSZW5kZXJTdXJmYWNlQ2hyb21pdW06
OmRyYXdTdXJmYWNlKExheWVyQ2hyb21pdW0qIG1hc2tMYXllciwgY29uc3QgVHJhbnNmb3JtYXRp
b25NYXRyaXgmIGRyYXdUcmFuc2Zvcm0pCiB7Ci0gICAgaWYgKG1fc2tpcHNEcmF3IHx8ICFtX2Nv
bnRlbnRzVGV4dHVyZSkKLSAgICAgICAgcmV0dXJuOwotCiAgICAgR3JhcGhpY3NDb250ZXh0M0Qq
IGNvbnRleHQzRCA9IGxheWVyUmVuZGVyZXIoKS0+Y29udGV4dCgpOworCiAgICAgaW50IHNoYWRl
ck1hdHJpeExvY2F0aW9uID0gLTE7CiAgICAgaW50IHNoYWRlckFscGhhTG9jYXRpb24gPSAtMTsK
ICAgICBjb25zdCBSZW5kZXJTdXJmYWNlQ2hyb21pdW06OlNoYXJlZFZhbHVlcyogc3YgPSBsYXll
clJlbmRlcmVyKCktPnJlbmRlclN1cmZhY2VTaGFyZWRWYWx1ZXMoKTsKICAgICBBU1NFUlQoc3Yg
JiYgc3YtPmluaXRpYWxpemVkKCkpOwogICAgIGJvb2wgdXNlTWFzayA9IGZhbHNlOwotICAgIGlm
IChtX21hc2tMYXllciAmJiBtX21hc2tMYXllci0+ZHJhd3NDb250ZW50KCkpIHsKLSAgICAgICAg
bV9tYXNrTGF5ZXItPnVwZGF0ZUNvbnRlbnRzSWZEaXJ0eSgpOwotICAgICAgICBpZiAoIW1fbWFz
a0xheWVyLT5ib3VuZHMoKS5pc0VtcHR5KCkpIHsKKyAgICBpZiAobWFza0xheWVyICYmIG1hc2tM
YXllci0+ZHJhd3NDb250ZW50KCkpIHsKKyAgICAgICAgbWFza0xheWVyLT51cGRhdGVDb250ZW50
c0lmRGlydHkoKTsKKyAgICAgICAgaWYgKCFtYXNrTGF5ZXItPmJvdW5kcygpLmlzRW1wdHkoKSkg
ewogICAgICAgICAgICAgY29udGV4dDNELT5tYWtlQ29udGV4dEN1cnJlbnQoKTsKICAgICAgICAg
ICAgIGxheWVyUmVuZGVyZXIoKS0+dXNlU2hhZGVyKHN2LT5tYXNrU2hhZGVyUHJvZ3JhbSgpKTsK
ICAgICAgICAgICAgIEdMQyhjb250ZXh0M0QsIGNvbnRleHQzRC0+YWN0aXZlVGV4dHVyZShHcmFw
aGljc0NvbnRleHQzRDo6VEVYVFVSRTApKTsKICAgICAgICAgICAgIG1fY29udGVudHNUZXh0dXJl
LT5iaW5kVGV4dHVyZSgpOwogICAgICAgICAgICAgR0xDKGNvbnRleHQzRCwgY29udGV4dDNELT5h
Y3RpdmVUZXh0dXJlKEdyYXBoaWNzQ29udGV4dDNEOjpURVhUVVJFMSkpOwotICAgICAgICAgICAg
bV9tYXNrTGF5ZXItPmJpbmRDb250ZW50c1RleHR1cmUoKTsKKyAgICAgICAgICAgIG1hc2tMYXll
ci0+YmluZENvbnRlbnRzVGV4dHVyZSgpOwogICAgICAgICAgICAgR0xDKGNvbnRleHQzRCwgY29u
dGV4dDNELT5hY3RpdmVUZXh0dXJlKEdyYXBoaWNzQ29udGV4dDNEOjpURVhUVVJFMCkpOwogICAg
ICAgICAgICAgc2hhZGVyTWF0cml4TG9jYXRpb24gPSBzdi0+bWFza1NoYWRlck1hdHJpeExvY2F0
aW9uKCk7CiAgICAgICAgICAgICBzaGFkZXJBbHBoYUxvY2F0aW9uID0gc3YtPm1hc2tTaGFkZXJB
bHBoYUxvY2F0aW9uKCk7CkBAIC0yMDEsMTYgKzIxMCwzOCBAQCB2b2lkIFJlbmRlclN1cmZhY2VD
aHJvbWl1bTo6ZHJhdygpCiAgICAgICAgIHNoYWRlck1hdHJpeExvY2F0aW9uID0gc3YtPnNoYWRl
ck1hdHJpeExvY2F0aW9uKCk7CiAgICAgICAgIHNoYWRlckFscGhhTG9jYXRpb24gPSBzdi0+c2hh
ZGVyQWxwaGFMb2NhdGlvbigpOwogICAgIH0KKyAgICAKKyAgICBMYXllckNocm9taXVtOjpkcmF3
VGV4dHVyZWRRdWFkKGxheWVyUmVuZGVyZXIoKS0+Y29udGV4dCgpLCBsYXllclJlbmRlcmVyKCkt
PnByb2plY3Rpb25NYXRyaXgoKSwgZHJhd1RyYW5zZm9ybSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBtX2NvbnRlbnRSZWN0LndpZHRoKCksIG1fY29udGVudFJlY3Qu
aGVpZ2h0KCksIG1fZHJhd09wYWNpdHksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgc2hhZGVyTWF0cml4TG9jYXRpb24sIHNoYWRlckFscGhhTG9jYXRpb24pOworCisg
ICAgbV9jb250ZW50c1RleHR1cmUtPnVucmVzZXJ2ZSgpOworCisgICAgaWYgKG1hc2tMYXllcikK
KyAgICAgICAgbWFza0xheWVyLT51bnJlc2VydmVDb250ZW50c1RleHR1cmUoKTsKK30KKwordm9p
ZCBSZW5kZXJTdXJmYWNlQ2hyb21pdW06OmRyYXcoKQoreworICAgIGlmIChtX3NraXBzRHJhdyB8
fCAhbV9jb250ZW50c1RleHR1cmUpCisgICAgICAgIHJldHVybjsKKyAgICAvLyBGSVhNRTogQnkg
dXNpbmcgdGhlIHNhbWUgUmVuZGVyU3VyZmFjZSBmb3IgYm90aCB0aGUgY29udGVudCBhbmQgaXRz
IHJlZmxlY3Rpb24sCisgICAgLy8gaXQncyBjdXJyZW50bHkgbm90IHBvc3NpYmxlIHRvIGFwcGx5
IGEgc2VwYXJhdGUgbWFzayB0byB0aGUgcmVmbGVjdGlvbiBsYXllcgorICAgIC8vIG9yIGNvcnJl
Y3RseSBoYW5kbGUgb3BhY2l0eSBpbiByZWZsZWN0aW9ucyAob3BhY2l0eSBtdXN0IGJlIGFwcGxp
ZWQgYWZ0ZXIgZHJhd2luZworICAgIC8vIGJvdGggdGhlIGxheWVyIGFuZCBpdHMgcmVmbGVjdGlv
bikuIFRoZSBzb2x1dGlvbiBpcyB0byBpbnRyb2R1Y2UgeWV0IGFub3RoZXIgUmVuZGVyU3VyZmFj
ZQorICAgIC8vIHRvIGRyYXcgdGhlIGxheWVyIGFuZCBpdHMgcmVmbGVjdGlvbiBpbi4gRm9yIG5v
dyB3ZSBvbmx5IGFwcGx5IGEgc2VwYXJhdGUgcmVmbGVjdGlvbgorICAgIC8vIG1hc2sgaWYgdGhl
IGNvbnRlbnRzIGRvbid0IGhhdmUgYSBtYXNrIG9mIHRoZWlyIG93bi4KKyAgICBMYXllckNocm9t
aXVtKiByZXBsaWNhTWFza0xheWVyID0gbV9tYXNrTGF5ZXI7CisgICAgaWYgKCFtX21hc2tMYXll
ciAmJiBtX293bmluZ0xheWVyLT5yZXBsaWNhTGF5ZXIoKSkKKyAgICAgICAgcmVwbGljYU1hc2tM
YXllciA9IG1fb3duaW5nTGF5ZXItPnJlcGxpY2FMYXllcigpLT5tYXNrTGF5ZXIoKTsKIAogICAg
IGxheWVyUmVuZGVyZXIoKS0+c2V0U2Npc3NvclRvUmVjdChtX3NjaXNzb3JSZWN0KTsKIAotICAg
IExheWVyQ2hyb21pdW06OmRyYXdUZXh0dXJlZFF1YWQobGF5ZXJSZW5kZXJlcigpLT5jb250ZXh0
KCksIGxheWVyUmVuZGVyZXIoKS0+cHJvamVjdGlvbk1hdHJpeCgpLCBtX2RyYXdUcmFuc2Zvcm0s
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtX2NvbnRlbnRSZWN0LndpZHRo
KCksIG1fY29udGVudFJlY3QuaGVpZ2h0KCksIG1fZHJhd09wYWNpdHksCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBzaGFkZXJNYXRyaXhMb2NhdGlvbiwgc2hhZGVyQWxwaGFM
b2NhdGlvbik7CisgICAgLy8gUmVmbGVjdGlvbiBkcmF3cyBiZWZvcmUgdGhlIGxheWVyLgorICAg
IGlmIChtX293bmluZ0xheWVyLT5yZXBsaWNhTGF5ZXIoKSkgCisgICAgICAgIGRyYXdTdXJmYWNl
KHJlcGxpY2FNYXNrTGF5ZXIsIG1fcmVwbGljYURyYXdUcmFuc2Zvcm0pOwogCi0gICAgbV9jb250
ZW50c1RleHR1cmUtPnVucmVzZXJ2ZSgpOwotICAgIGlmIChtX21hc2tMYXllcikKLSAgICAgICAg
bV9tYXNrTGF5ZXItPnVucmVzZXJ2ZUNvbnRlbnRzVGV4dHVyZSgpOworICAgIGRyYXdTdXJmYWNl
KG1fbWFza0xheWVyLCBtX2RyYXdUcmFuc2Zvcm0pOwogfQogCiB9CkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9SZW5kZXJTdXJmYWNlQ2hyb21pdW0uaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9S
ZW5kZXJTdXJmYWNlQ2hyb21pdW0uaAkocmV2aXNpb24gNzY2ODcpCisrKyBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9SZW5kZXJTdXJmYWNlQ2hyb21pdW0uaAkod29y
a2luZyBjb3B5KQpAQCAtNTUsNiArNTUsMTEgQEAgcHVibGljOgogICAgIEZsb2F0UG9pbnQgY29u
dGVudFJlY3RDZW50ZXIoKSBjb25zdCB7IHJldHVybiBGbG9hdFJlY3QobV9jb250ZW50UmVjdCku
Y2VudGVyKCk7IH0KICAgICBJbnRSZWN0IGNvbnRlbnRSZWN0KCkgY29uc3QgeyByZXR1cm4gbV9j
b250ZW50UmVjdDsgfQogCisgICAgLy8gUmV0dXJucyB0aGUgcmVjdCB0aGF0IGVuY2xvc2VzIHRo
ZSBSZW5kZXJTdXJmYWNlIGluY2x1ZGluZyBhbnkgcmVmbGVjdGlvbi4KKyAgICBGbG9hdFJlY3Qg
ZHJhd2FibGVDb250ZW50UmVjdCgpIGNvbnN0OworCisgICAgVHJhbnNmb3JtYXRpb25NYXRyaXgg
ZHJhd1RyYW5zZm9ybSgpIGNvbnN0IHsgcmV0dXJuIG1fZHJhd1RyYW5zZm9ybTsgfQorCiAgICAg
Ly8gU3RvcmVzIHZhbHVlcyB0aGF0IGFyZSBzaGFyZWQgYmV0d2VlbiBpbnN0YW5jZXMgb2YgdGhp
cyBjbGFzcyB0aGF0IGFyZQogICAgIC8vIGFzc29jaWF0ZWQgd2l0aCB0aGUgc2FtZSBMYXllclJl
bmRlcmVyQ2hyb21pdW0gKGFuZCBoZW5jZSB0aGUgc2FtZSBHTAogICAgIC8vIGNvbnRleHQpLgpA
QCAtOTEsNiArOTYsNyBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgTGF5ZXJSZW5kZXJlckNo
cm9taXVtKiBsYXllclJlbmRlcmVyKCk7CisgICAgdm9pZCBkcmF3U3VyZmFjZShMYXllckNocm9t
aXVtKiBtYXNrTGF5ZXIsIGNvbnN0IFRyYW5zZm9ybWF0aW9uTWF0cml4JiBkcmF3VHJhbnNmb3Jt
KTsKIAogICAgIExheWVyQ2hyb21pdW0qIG1fb3duaW5nTGF5ZXI7CiAgICAgTGF5ZXJDaHJvbWl1
bSogbV9tYXNrTGF5ZXI7CkBAIC0xMDAsNiArMTA2LDcgQEAgcHJpdmF0ZToKICAgICBPd25QdHI8
TGF5ZXJUZXh0dXJlPiBtX2NvbnRlbnRzVGV4dHVyZTsKICAgICBmbG9hdCBtX2RyYXdPcGFjaXR5
OwogICAgIFRyYW5zZm9ybWF0aW9uTWF0cml4IG1fZHJhd1RyYW5zZm9ybTsKKyAgICBUcmFuc2Zv
cm1hdGlvbk1hdHJpeCBtX3JlcGxpY2FEcmF3VHJhbnNmb3JtOwogICAgIFRyYW5zZm9ybWF0aW9u
TWF0cml4IG1fb3JpZ2luVHJhbnNmb3JtOwogICAgIEludFJlY3QgbV9zY2lzc29yUmVjdDsKICAg
ICBWZWN0b3I8TGF5ZXJDaHJvbWl1bSo+IG1fbGF5ZXJMaXN0Owo=
</data>
<flag name="review"
          id="72326"
          type_id="1"
          status="+"
          setter="kbr"
    />
    <flag name="commit-queue"
          id="72328"
          type_id="3"
          status="-"
          setter="vangelis"
    />
          </attachment>
      

    </bug>

</bugzilla>