<?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>171549</bug_id>
          
          <creation_ts>2017-05-02 05:59:31 -0700</creation_ts>
          <short_desc>Document style resolvers should share user rulesets</short_desc>
          <delta_ts>2017-05-02 12:02:48 -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>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>kling</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1303651</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2017-05-02 05:59:31 -0700</bug_when>
    <thetext>User style is per-document. We can save memory and work by sharing it between document and shadow trees.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1303652</commentid>
    <comment_count>1</comment_count>
      <attachid>308819</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2017-05-02 06:12:15 -0700</bug_when>
    <thetext>Created attachment 308819
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1303657</commentid>
    <comment_count>2</comment_count>
      <attachid>308819</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2017-05-02 06:58:18 -0700</bug_when>
    <thetext>Comment on attachment 308819
patch

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

r=me, this nicely fixes 50% of what i complained about :)
What about frames though!

&gt; Source/WebCore/ChangeLog:8
&gt; +        Large user stylesheets (like those user by add blockers) can end up using lots of memory if

&quot;add blockers&quot; jeez</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1303662</commentid>
    <comment_count>3</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2017-05-02 07:32:56 -0700</bug_when>
    <thetext>https://trac.webkit.org/r216069</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1303678</commentid>
    <comment_count>4</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2017-05-02 09:22:58 -0700</bug_when>
    <thetext>Reverted r216069 for reason:

This change broke the build.

Committed r216071: &lt;http://trac.webkit.org/changeset/216071&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1303679</commentid>
    <comment_count>5</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2017-05-02 09:23:22 -0700</bug_when>
    <thetext>(In reply to Ryan Haddad from comment #4)
&gt; Reverted r216069 for reason:
&gt; 
&gt; This change broke the build.
&gt; 
&gt; Committed r216071: &lt;http://trac.webkit.org/changeset/216071&gt;

https://build.webkit.org/builders/Apple%20Sierra%20Release%20%28Build%29/builds/1337</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1303711</commentid>
    <comment_count>6</comment_count>
      <attachid>308834</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2017-05-02 10:42:22 -0700</bug_when>
    <thetext>Created attachment 308834
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1303712</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-05-02 10:43:05 -0700</bug_when>
    <thetext>&lt;rdar://problem/31940552&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1303749</commentid>
    <comment_count>8</comment_count>
      <attachid>308834</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-05-02 12:02:47 -0700</bug_when>
    <thetext>Comment on attachment 308834
patch

Clearing flags on attachment: 308834

Committed r216083: &lt;http://trac.webkit.org/changeset/216083&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1303750</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-05-02 12:02:48 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>308819</attachid>
            <date>2017-05-02 06:12:15 -0700</date>
            <delta_ts>2017-05-02 10:42:22 -0700</delta_ts>
            <desc>patch</desc>
            <filename>user-style-shadow-share-2.patch</filename>
            <type>text/plain</type>
            <size>7659</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxNjA2OCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM2IEBACisyMDE3LTA1LTAyICBBbnR0aSBL
b2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBEb2N1bWVudCBzdHlsZSByZXNv
bHZlcnMgc2hvdWxkIHNoYXJlIHVzZXIgcnVsZXNldHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MTU0OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIExhcmdlIHVzZXIgc3R5bGVzaGVldHMgKGxpa2UgdGhv
c2UgdXNlciBieSBhZGQgYmxvY2tlcnMpIGNhbiBlbmQgdXAgdXNpbmcgbG90cyBvZiBtZW1vcnkg
aWYKKyAgICAgICAgYSBkb2N1bWVudCB1c2VycyBsYXJnZSBudW1iZXIgb2Ygc2hhZG93IHRyZWVz
LiBVc2VyIHN0eWxlIGlzIGluaGVyZW50bHkgcGVyLWRvY3VtZW50IGFuZAorICAgICAgICB0aGUg
cmVzdWx0aW5nIHJ1bGVzZXRzIGNhbiBiZSBzaGFyZWQgYmV0d2VlbiB0aGUgZG9jdW1lbnQgYW5k
IHRoZSBzaGFkb3cgdHJlZXMuCisKKyAgICAgICAgKiBjc3MvRG9jdW1lbnRSdWxlU2V0cy5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudFJ1bGVTZXRzOjpEb2N1bWVudFJ1bGVTZXRzKToK
KyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50UnVsZVNldHM6OnVzZXJTdHlsZSk6CisKKyAgICAg
ICAgICAgIFJldHVybiBwZXItZG9jdW1lbnQgdXNlciBzdHlsZSBmb3Igc2hhZG93IHRyZWVzLgor
CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudFJ1bGVTZXRzOjpjb2xsZWN0RmVhdHVyZXMpOgor
ICAgICAgICAqIGNzcy9Eb2N1bWVudFJ1bGVTZXRzLmg6CisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudFJ1bGVTZXRzOjpzZXRVc2VzU2hhcmVkVXNlclN0eWxlKToKKyAgICAgICAgKFdlYkNvcmU6
OkRvY3VtZW50UnVsZVNldHM6OnVzZXJTdHlsZSk6IERlbGV0ZWQuCisgICAgICAgICogY3NzL1N0
eWxlUmVzb2x2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVSZXNvbHZlcjo6U3R5bGVS
ZXNvbHZlcik6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJlc29sdmVyOjppbml0aWFsaXplVXNl
clN0eWxlKToKKworICAgICAgICAgICAgU2VwYXJhdGUgdXNlciBzdHlsZSBpbml0aWFsaXphdGlv
biBmcm9tIGNvbnN0cnVjdGlvbi4KKworICAgICAgICAqIGNzcy9TdHlsZVJlc29sdmVyLmg6Cisg
ICAgICAgICogc3R5bGUvU3R5bGVTY29wZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6
U2NvcGU6OnJlc29sdmVyKToKKworICAgICAgICAgICAgRG9uJ3QnIGluaXRpYWxpemUgdXNlciBz
dHlsZSBmb3IgdXNlciBhZ2VudHMgc2hhZG93IHRyZWVzLgorCiAyMDE3LTA1LTAyICBHd2FuZyBZ
b29uIEh3YW5nICA8eW9vbkBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtdIFJlbW92ZSB1bmRl
ZmluZWQgbmF0aXZlSW1hZ2UgbWV0aG9kIGZyb20gdGhlIEltYWdlQnVmZmVyJ3MgaGVhZGVyCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvRG9jdW1lbnRSdWxlU2V0cy5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvY3NzL0RvY3VtZW50UnVsZVNldHMuY3BwCShyZXZpc2lvbiAyMTU1
MTEpCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvRG9jdW1lbnRSdWxlU2V0cy5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTM3LDcgKzM3LDggQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1Eb2N1bWVu
dFJ1bGVTZXRzOjpEb2N1bWVudFJ1bGVTZXRzKCkKK0RvY3VtZW50UnVsZVNldHM6OkRvY3VtZW50
UnVsZVNldHMoU3R5bGVSZXNvbHZlciYgc3R5bGVSZXNvbHZlcikKKyAgICA6IG1fc3R5bGVSZXNv
bHZlcihzdHlsZVJlc29sdmVyKQogewogICAgIG1fYXV0aG9yU3R5bGUgPSBzdGQ6Om1ha2VfdW5p
cXVlPFJ1bGVTZXQ+KCk7CiAgICAgbV9hdXRob3JTdHlsZS0+ZGlzYWJsZUF1dG9TaHJpbmtUb0Zp
dCgpOwpAQCAtNDcsNiArNDgsMTMgQEAgRG9jdW1lbnRSdWxlU2V0czo6fkRvY3VtZW50UnVsZVNl
dHMoKQogewogfQogCitSdWxlU2V0KiBEb2N1bWVudFJ1bGVTZXRzOjp1c2VyU3R5bGUoKSBjb25z
dAoreworICAgIGlmIChtX3VzZXNTaGFyZWRVc2VyU3R5bGUpCisgICAgICAgIHJldHVybiBtX3N0
eWxlUmVzb2x2ZXIuZG9jdW1lbnQoKS5zdHlsZVNjb3BlKCkucmVzb2x2ZXIoKS5ydWxlU2V0cygp
LnVzZXJTdHlsZSgpOworICAgIHJldHVybiBtX3VzZXJTdHlsZS5nZXQoKTsKK30KKwogdm9pZCBE
b2N1bWVudFJ1bGVTZXRzOjppbml0VXNlclN0eWxlKEV4dGVuc2lvblN0eWxlU2hlZXRzJiBleHRl
bnNpb25TdHlsZVNoZWV0cywgY29uc3QgTWVkaWFRdWVyeUV2YWx1YXRvciYgbWVkaXVtLCBTdHls
ZVJlc29sdmVyJiByZXNvbHZlcikKIHsKICAgICBhdXRvIHRlbXBVc2VyU3R5bGUgPSBzdGQ6Om1h
a2VfdW5pcXVlPFJ1bGVTZXQ+KCk7CkBAIC0xMTIsOCArMTIwLDggQEAgdm9pZCBEb2N1bWVudFJ1
bGVTZXRzOjpjb2xsZWN0RmVhdHVyZXMoKQogCiAgICAgaWYgKG1fYXV0aG9yU3R5bGUpCiAgICAg
ICAgIG1fZmVhdHVyZXMuYWRkKG1fYXV0aG9yU3R5bGUtPmZlYXR1cmVzKCkpOwotICAgIGlmICht
X3VzZXJTdHlsZSkKLSAgICAgICAgbV9mZWF0dXJlcy5hZGQobV91c2VyU3R5bGUtPmZlYXR1cmVz
KCkpOworICAgIGlmIChhdXRvKiB1c2VyU3R5bGUgPSB0aGlzLT51c2VyU3R5bGUoKSkKKyAgICAg
ICAgbV9mZWF0dXJlcy5hZGQodXNlclN0eWxlLT5mZWF0dXJlcygpKTsKIAogICAgIG1fc2libGlu
Z1J1bGVTZXQgPSBtYWtlUnVsZVNldChtX2ZlYXR1cmVzLnNpYmxpbmdSdWxlcyk7CiAgICAgbV91
bmNvbW1vbkF0dHJpYnV0ZVJ1bGVTZXQgPSBtYWtlUnVsZVNldChtX2ZlYXR1cmVzLnVuY29tbW9u
QXR0cmlidXRlUnVsZXMpOwpJbmRleDogU291cmNlL1dlYkNvcmUvY3NzL0RvY3VtZW50UnVsZVNl
dHMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvRG9jdW1lbnRSdWxlU2V0cy5o
CShyZXZpc2lvbiAyMTU1MTEpCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvRG9jdW1lbnRSdWxlU2V0
cy5oCSh3b3JraW5nIGNvcHkpCkBAIC00MCwxMiArNDAsMTIgQEAgY2xhc3MgTWVkaWFRdWVyeUV2
YWx1YXRvcjsKIAogY2xhc3MgRG9jdW1lbnRSdWxlU2V0cyB7CiBwdWJsaWM6Ci0gICAgRG9jdW1l
bnRSdWxlU2V0cygpOworICAgIERvY3VtZW50UnVsZVNldHMoU3R5bGVSZXNvbHZlciYpOwogICAg
IH5Eb2N1bWVudFJ1bGVTZXRzKCk7Ci0gICAgCisKICAgICBib29sIGlzQXV0aG9yU3R5bGVEZWZp
bmVkKCkgY29uc3QgeyByZXR1cm4gbV9pc0F1dGhvclN0eWxlRGVmaW5lZDsgfQogICAgIFJ1bGVT
ZXQmIGF1dGhvclN0eWxlKCkgY29uc3QgeyByZXR1cm4gKm1fYXV0aG9yU3R5bGUuZ2V0KCk7IH0K
LSAgICBSdWxlU2V0KiB1c2VyU3R5bGUoKSBjb25zdCB7IHJldHVybiBtX3VzZXJTdHlsZS5nZXQo
KTsgfQorICAgIFJ1bGVTZXQqIHVzZXJTdHlsZSgpIGNvbnN0OwogICAgIGNvbnN0IFJ1bGVGZWF0
dXJlU2V0JiBmZWF0dXJlcygpIGNvbnN0OwogICAgIFJ1bGVTZXQqIHNpYmxpbmcoKSBjb25zdCB7
IHJldHVybiBtX3NpYmxpbmdSdWxlU2V0LmdldCgpOyB9CiAgICAgUnVsZVNldCogdW5jb21tb25B
dHRyaWJ1dGUoKSBjb25zdCB7IHJldHVybiBtX3VuY29tbW9uQXR0cmlidXRlUnVsZVNldC5nZXQo
KTsgfQpAQCAtNTksNyArNTksOSBAQCBwdWJsaWM6CiAgICAgfTsKICAgICBjb25zdCBBdHRyaWJ1
dGVSdWxlcyogYW5jZXN0b3JBdHRyaWJ1dGVSdWxlc0ZvckhUTUwoY29uc3QgQXRvbWljU3RyaW5n
JikgY29uc3Q7CiAKKyAgICB2b2lkIHNldFVzZXNTaGFyZWRVc2VyU3R5bGUoKSB7IG1fdXNlc1No
YXJlZFVzZXJTdHlsZSA9IHRydWU7IH0KICAgICB2b2lkIGluaXRVc2VyU3R5bGUoRXh0ZW5zaW9u
U3R5bGVTaGVldHMmLCBjb25zdCBNZWRpYVF1ZXJ5RXZhbHVhdG9yJiwgU3R5bGVSZXNvbHZlciYp
OworCiAgICAgdm9pZCByZXNldEF1dGhvclN0eWxlKCk7CiAgICAgdm9pZCBhcHBlbmRBdXRob3JT
dHlsZVNoZWV0cyhjb25zdCBWZWN0b3I8UmVmUHRyPENTU1N0eWxlU2hlZXQ+PiYsIE1lZGlhUXVl
cnlFdmFsdWF0b3IqLCBJbnNwZWN0b3JDU1NPTVdyYXBwZXJzJiwgU3R5bGVSZXNvbHZlciopOwog
CkBAIC03Miw3ICs3NCw5IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX2lzQXV0aG9yU3R5bGVEZWZp
bmVkIHsgZmFsc2UgfTsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8UnVsZVNldD4gbV9hdXRob3JTdHls
ZTsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8UnVsZVNldD4gbV91c2VyU3R5bGU7CisgICAgYm9vbCBt
X3VzZXNTaGFyZWRVc2VyU3R5bGUgeyBmYWxzZSB9OwogCisgICAgU3R5bGVSZXNvbHZlciYgbV9z
dHlsZVJlc29sdmVyOwogICAgIG11dGFibGUgUnVsZUZlYXR1cmVTZXQgbV9mZWF0dXJlczsKICAg
ICBtdXRhYmxlIHVuc2lnbmVkIG1fZGVmYXVsdFN0eWxlVmVyc2lvbk9uRmVhdHVyZUNvbGxlY3Rp
b24geyAwIH07CiAgICAgbXV0YWJsZSBzdGQ6OnVuaXF1ZV9wdHI8UnVsZVNldD4gbV9zaWJsaW5n
UnVsZVNldDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAJKHJldmlzaW9u
IDIxNTUxMSkKKysrIFNvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjI4LDcgKzIyOCw4IEBAIHZvaWQgU3R5bGVSZXNvbHZlcjo6TWF0Y2hSZXN1
bHQ6OmFkZE1hdGMKIH0KIAogU3R5bGVSZXNvbHZlcjo6U3R5bGVSZXNvbHZlcihEb2N1bWVudCYg
ZG9jdW1lbnQpCi0gICAgOiBtX21hdGNoZWRQcm9wZXJ0aWVzQ2FjaGVBZGRpdGlvbnNTaW5jZUxh
c3RTd2VlcCgwKQorICAgIDogbV9ydWxlU2V0cygqdGhpcykKKyAgICAsIG1fbWF0Y2hlZFByb3Bl
cnRpZXNDYWNoZUFkZGl0aW9uc1NpbmNlTGFzdFN3ZWVwKDApCiAgICAgLCBtX21hdGNoZWRQcm9w
ZXJ0aWVzQ2FjaGVTd2VlcFRpbWVyKCp0aGlzLCAmU3R5bGVSZXNvbHZlcjo6c3dlZXBNYXRjaGVk
UHJvcGVydGllc0NhY2hlKQogICAgICwgbV9kb2N1bWVudChkb2N1bWVudCkKICAgICAsIG1fbWF0
Y2hBdXRob3JBbmRVc2VyU3R5bGVzKG1fZG9jdW1lbnQuc2V0dGluZ3MoKS5hdXRob3JBbmRVc2Vy
U3R5bGVzRW5hYmxlZCgpKQpAQCAtMjY3LDggKzI2OCw2IEBAIFN0eWxlUmVzb2x2ZXI6OlN0eWxl
UmVzb2x2ZXIoRG9jdW1lbnQmIGQKIAogICAgIG1fcnVsZVNldHMucmVzZXRBdXRob3JTdHlsZSgp
OwogCi0gICAgbV9ydWxlU2V0cy5pbml0VXNlclN0eWxlKG1fZG9jdW1lbnQuZXh0ZW5zaW9uU3R5
bGVTaGVldHMoKSwgbV9tZWRpYVF1ZXJ5RXZhbHVhdG9yLCAqdGhpcyk7Ci0KICNpZiBFTkFCTEUo
U1ZHX0ZPTlRTKQogICAgIGlmIChtX2RvY3VtZW50LnN2Z0V4dGVuc2lvbnMoKSkgewogICAgICAg
ICBjb25zdCBIYXNoU2V0PFNWR0ZvbnRGYWNlRWxlbWVudCo+JiBzdmdGb250RmFjZUVsZW1lbnRz
ID0gbV9kb2N1bWVudC5zdmdFeHRlbnNpb25zKCktPnN2Z0ZvbnRGYWNlRWxlbWVudHMoKTsKQEAg
LTI3OCw2ICsyNzcsMTEgQEAgU3R5bGVSZXNvbHZlcjo6U3R5bGVSZXNvbHZlcihEb2N1bWVudCYg
ZAogI2VuZGlmCiB9CiAKK3ZvaWQgU3R5bGVSZXNvbHZlcjo6aW5pdGlhbGl6ZVVzZXJTdHlsZSgp
Cit7CisgICAgbV9ydWxlU2V0cy5pbml0VXNlclN0eWxlKG1fZG9jdW1lbnQuZXh0ZW5zaW9uU3R5
bGVTaGVldHMoKSwgbV9tZWRpYVF1ZXJ5RXZhbHVhdG9yLCAqdGhpcyk7Cit9CisKIHZvaWQgU3R5
bGVSZXNvbHZlcjo6YXBwZW5kQXV0aG9yU3R5bGVTaGVldHMoY29uc3QgVmVjdG9yPFJlZlB0cjxD
U1NTdHlsZVNoZWV0Pj4mIHN0eWxlU2hlZXRzKQogewogICAgIG1fcnVsZVNldHMuYXBwZW5kQXV0
aG9yU3R5bGVTaGVldHMoc3R5bGVTaGVldHMsICZtX21lZGlhUXVlcnlFdmFsdWF0b3IsIG1faW5z
cGVjdG9yQ1NTT01XcmFwcGVycywgdGhpcyk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvU3R5
bGVSZXNvbHZlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29s
dmVyLmgJKHJldmlzaW9uIDIxNTUxMSkKKysrIFNvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29s
dmVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTE1Miw2ICsxNTIsNyBAQCBwdWJsaWM6CiAgICAgY29u
c3QgRG9jdW1lbnQmIGRvY3VtZW50KCkgY29uc3QgeyByZXR1cm4gbV9kb2N1bWVudDsgfQogICAg
IGNvbnN0IFNldHRpbmdzJiBzZXR0aW5ncygpIGNvbnN0IHsgcmV0dXJuIG1fZG9jdW1lbnQuc2V0
dGluZ3MoKTsgfQogCisgICAgdm9pZCBpbml0aWFsaXplVXNlclN0eWxlKCk7CiAgICAgdm9pZCBh
cHBlbmRBdXRob3JTdHlsZVNoZWV0cyhjb25zdCBWZWN0b3I8UmVmUHRyPENTU1N0eWxlU2hlZXQ+
PiYpOwogCiAgICAgRG9jdW1lbnRSdWxlU2V0cyYgcnVsZVNldHMoKSB7IHJldHVybiBtX3J1bGVT
ZXRzOyB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNjb3BlLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNjb3BlLmNwcAkocmV2aXNpb24gMjE1
NTExKQorKysgU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVTY29wZS5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTk2LDYgKzk2LDEyIEBAIFN0eWxlUmVzb2x2ZXImIFNjb3BlOjpyZXNvbHZlcigpCiAg
ICAgaWYgKCFtX3Jlc29sdmVyKSB7CiAgICAgICAgIFNldEZvclNjb3BlPGJvb2w+IGlzVXBkYXRp
bmdTdHlsZVJlc29sdmVyIHsgbV9pc1VwZGF0aW5nU3R5bGVSZXNvbHZlciwgdHJ1ZSB9OwogICAg
ICAgICBtX3Jlc29sdmVyID0gc3RkOjptYWtlX3VuaXF1ZTxTdHlsZVJlc29sdmVyPihtX2RvY3Vt
ZW50KTsKKworICAgICAgICBpZiAoIW1fc2hhZG93Um9vdCkKKyAgICAgICAgICAgIG1fcmVzb2x2
ZXItPmluaXRpYWxpemVVc2VyU3R5bGUoKTsKKyAgICAgICAgZWxzZSBpZiAobV9zaGFkb3dSb290
LT5tb2RlKCkgIT0gU2hhZG93Um9vdE1vZGU6OlVzZXJBZ2VudCkKKyAgICAgICAgICAgIG1fcmVz
b2x2ZXItPnJ1bGVTZXRzKCkuc2V0VXNlc1NoYXJlZFVzZXJTdHlsZSgpOworCiAgICAgICAgIG1f
cmVzb2x2ZXItPmFwcGVuZEF1dGhvclN0eWxlU2hlZXRzKG1fYWN0aXZlU3R5bGVTaGVldHMpOwog
ICAgIH0KICAgICBBU1NFUlQoIW1fc2hhZG93Um9vdCB8fCAmbV9kb2N1bWVudCA9PSAmbV9zaGFk
b3dSb290LT5kb2N1bWVudCgpKTsK
</data>
<flag name="review"
          id="329975"
          type_id="1"
          status="+"
          setter="kling"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>308834</attachid>
            <date>2017-05-02 10:42:22 -0700</date>
            <delta_ts>2017-05-02 12:02:47 -0700</delta_ts>
            <desc>patch</desc>
            <filename>user-style-shadow-share-5.patch</filename>
            <type>text/plain</type>
            <size>7838</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxNjA3MykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM2IEBACisyMDE3LTA1LTAyICBBbnR0aSBL
b2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBEb2N1bWVudCBzdHlsZSByZXNv
bHZlcnMgc2hvdWxkIHNoYXJlIHVzZXIgcnVsZXNldHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MTU0OQorCisgICAgICAgIFJldmlld2VkIGJ5IEFu
ZHJlYXMgS2xpbmcuCisKKyAgICAgICAgTGFyZ2UgdXNlciBzdHlsZXNoZWV0cyAobGlrZSB0aG9z
ZSB1c2VkIGJ5IGFkIGJsb2NrZXJzKSBjYW4gZW5kIHVwIHVzaW5nIGxvdHMgb2YgbWVtb3J5IGlm
CisgICAgICAgIGEgZG9jdW1lbnQgdXNlcyBsYXJnZSBudW1iZXIgb2Ygc2hhZG93IHRyZWVzLiBV
c2VyIHN0eWxlIGlzIGluaGVyZW50bHkgcGVyLWRvY3VtZW50IGFuZAorICAgICAgICB0aGUgcmVz
dWx0aW5nIHJ1bGVzZXRzIGNhbiBiZSBzaGFyZWQgYmV0d2VlbiB0aGUgZG9jdW1lbnQgYW5kIHRo
ZSBzaGFkb3cgdHJlZXMuCisKKyAgICAgICAgKiBjc3MvRG9jdW1lbnRSdWxlU2V0cy5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpEb2N1bWVudFJ1bGVTZXRzOjpEb2N1bWVudFJ1bGVTZXRzKToKKyAg
ICAgICAgKFdlYkNvcmU6OkRvY3VtZW50UnVsZVNldHM6OnVzZXJTdHlsZSk6CisKKyAgICAgICAg
ICAgIFJldHVybiBwZXItZG9jdW1lbnQgdXNlciBzdHlsZSBmb3Igc2hhZG93IHRyZWVzLgorCisg
ICAgICAgIChXZWJDb3JlOjpEb2N1bWVudFJ1bGVTZXRzOjpjb2xsZWN0RmVhdHVyZXMpOgorICAg
ICAgICAqIGNzcy9Eb2N1bWVudFJ1bGVTZXRzLmg6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVu
dFJ1bGVTZXRzOjpzZXRVc2VzU2hhcmVkVXNlclN0eWxlKToKKyAgICAgICAgKFdlYkNvcmU6OkRv
Y3VtZW50UnVsZVNldHM6OnVzZXJTdHlsZSk6IERlbGV0ZWQuCisgICAgICAgICogY3NzL1N0eWxl
UmVzb2x2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVSZXNvbHZlcjo6U3R5bGVSZXNv
bHZlcik6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJlc29sdmVyOjppbml0aWFsaXplVXNlclN0
eWxlKToKKworICAgICAgICAgICAgU2VwYXJhdGUgdXNlciBzdHlsZSBpbml0aWFsaXphdGlvbiBm
cm9tIGNvbnN0cnVjdGlvbi4KKworICAgICAgICAqIGNzcy9TdHlsZVJlc29sdmVyLmg6CisgICAg
ICAgICogc3R5bGUvU3R5bGVTY29wZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6U2Nv
cGU6OnJlc29sdmVyKToKKworICAgICAgICAgICAgRG9uJ3QgaW5pdGlhbGl6ZSB1c2VyIHN0eWxl
IGZvciB1c2VyIGFnZW50cyBzaGFkb3cgdHJlZXMuCisKIDIwMTctMDUtMDIgIEJlbiBLZWxseSA8
YmVuQHdhbmRlcnZpZXcuY29tPgogCiAgICAgICAgIFNldCBSZXNwb25zZS5ibG9iKCkgdHlwZSBj
b3JyZWN0bHkgd2hlbiBib2R5IGlzIGEgUmVhZGFibGVTdHJlYW0uCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9jc3MvRG9jdW1lbnRSdWxlU2V0cy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvY3NzL0RvY3VtZW50UnVsZVNldHMuY3BwCShyZXZpc2lvbiAyMTYwNzMpCisrKyBTb3VyY2Uv
V2ViQ29yZS9jc3MvRG9jdW1lbnRSdWxlU2V0cy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM3LDcg
KzM3LDggQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1Eb2N1bWVudFJ1bGVTZXRzOjpEb2N1
bWVudFJ1bGVTZXRzKCkKK0RvY3VtZW50UnVsZVNldHM6OkRvY3VtZW50UnVsZVNldHMoU3R5bGVS
ZXNvbHZlciYgc3R5bGVSZXNvbHZlcikKKyAgICA6IG1fc3R5bGVSZXNvbHZlcihzdHlsZVJlc29s
dmVyKQogewogICAgIG1fYXV0aG9yU3R5bGUgPSBzdGQ6Om1ha2VfdW5pcXVlPFJ1bGVTZXQ+KCk7
CiAgICAgbV9hdXRob3JTdHlsZS0+ZGlzYWJsZUF1dG9TaHJpbmtUb0ZpdCgpOwpAQCAtNDcsMTMg
KzQ4LDIyIEBAIERvY3VtZW50UnVsZVNldHM6On5Eb2N1bWVudFJ1bGVTZXRzKCkKIHsKIH0KIAot
dm9pZCBEb2N1bWVudFJ1bGVTZXRzOjppbml0VXNlclN0eWxlKEV4dGVuc2lvblN0eWxlU2hlZXRz
JiBleHRlbnNpb25TdHlsZVNoZWV0cywgY29uc3QgTWVkaWFRdWVyeUV2YWx1YXRvciYgbWVkaXVt
LCBTdHlsZVJlc29sdmVyJiByZXNvbHZlcikKK1J1bGVTZXQqIERvY3VtZW50UnVsZVNldHM6OnVz
ZXJTdHlsZSgpIGNvbnN0CiB7CisgICAgaWYgKG1fdXNlc1NoYXJlZFVzZXJTdHlsZSkKKyAgICAg
ICAgcmV0dXJuIG1fc3R5bGVSZXNvbHZlci5kb2N1bWVudCgpLnN0eWxlU2NvcGUoKS5yZXNvbHZl
cigpLnJ1bGVTZXRzKCkudXNlclN0eWxlKCk7CisgICAgcmV0dXJuIG1fdXNlclN0eWxlLmdldCgp
OworfQorCit2b2lkIERvY3VtZW50UnVsZVNldHM6OmluaXRpYWxpemVVc2VyU3R5bGUoKQorewor
ICAgIGF1dG8mIGV4dGVuc2lvblN0eWxlU2hlZXRzID0gbV9zdHlsZVJlc29sdmVyLmRvY3VtZW50
KCkuZXh0ZW5zaW9uU3R5bGVTaGVldHMoKTsKKyAgICBhdXRvJiBtZWRpYVF1ZXJ5RXZhbHVhdG9y
ID0gbV9zdHlsZVJlc29sdmVyLm1lZGlhUXVlcnlFdmFsdWF0b3IoKTsKICAgICBhdXRvIHRlbXBV
c2VyU3R5bGUgPSBzdGQ6Om1ha2VfdW5pcXVlPFJ1bGVTZXQ+KCk7CiAgICAgaWYgKENTU1N0eWxl
U2hlZXQqIHBhZ2VVc2VyU2hlZXQgPSBleHRlbnNpb25TdHlsZVNoZWV0cy5wYWdlVXNlclNoZWV0
KCkpCi0gICAgICAgIHRlbXBVc2VyU3R5bGUtPmFkZFJ1bGVzRnJvbVNoZWV0KHBhZ2VVc2VyU2hl
ZXQtPmNvbnRlbnRzKCksIG1lZGl1bSwgJnJlc29sdmVyKTsKLSAgICBjb2xsZWN0UnVsZXNGcm9t
VXNlclN0eWxlU2hlZXRzKGV4dGVuc2lvblN0eWxlU2hlZXRzLmluamVjdGVkVXNlclN0eWxlU2hl
ZXRzKCksICp0ZW1wVXNlclN0eWxlLCBtZWRpdW0sIHJlc29sdmVyKTsKLSAgICBjb2xsZWN0UnVs
ZXNGcm9tVXNlclN0eWxlU2hlZXRzKGV4dGVuc2lvblN0eWxlU2hlZXRzLmRvY3VtZW50VXNlclN0
eWxlU2hlZXRzKCksICp0ZW1wVXNlclN0eWxlLCBtZWRpdW0sIHJlc29sdmVyKTsKKyAgICAgICAg
dGVtcFVzZXJTdHlsZS0+YWRkUnVsZXNGcm9tU2hlZXQocGFnZVVzZXJTaGVldC0+Y29udGVudHMo
KSwgbWVkaWFRdWVyeUV2YWx1YXRvciwgJm1fc3R5bGVSZXNvbHZlcik7CisgICAgY29sbGVjdFJ1
bGVzRnJvbVVzZXJTdHlsZVNoZWV0cyhleHRlbnNpb25TdHlsZVNoZWV0cy5pbmplY3RlZFVzZXJT
dHlsZVNoZWV0cygpLCAqdGVtcFVzZXJTdHlsZSwgbWVkaWFRdWVyeUV2YWx1YXRvciwgbV9zdHls
ZVJlc29sdmVyKTsKKyAgICBjb2xsZWN0UnVsZXNGcm9tVXNlclN0eWxlU2hlZXRzKGV4dGVuc2lv
blN0eWxlU2hlZXRzLmRvY3VtZW50VXNlclN0eWxlU2hlZXRzKCksICp0ZW1wVXNlclN0eWxlLCBt
ZWRpYVF1ZXJ5RXZhbHVhdG9yLCBtX3N0eWxlUmVzb2x2ZXIpOwogICAgIGlmICh0ZW1wVXNlclN0
eWxlLT5ydWxlQ291bnQoKSA+IDAgfHwgdGVtcFVzZXJTdHlsZS0+cGFnZVJ1bGVzKCkuc2l6ZSgp
ID4gMCkKICAgICAgICAgbV91c2VyU3R5bGUgPSBXVEZNb3ZlKHRlbXBVc2VyU3R5bGUpOwogfQpA
QCAtMTEyLDggKzEyMiw4IEBAIHZvaWQgRG9jdW1lbnRSdWxlU2V0czo6Y29sbGVjdEZlYXR1cmVz
KCkKIAogICAgIGlmIChtX2F1dGhvclN0eWxlKQogICAgICAgICBtX2ZlYXR1cmVzLmFkZChtX2F1
dGhvclN0eWxlLT5mZWF0dXJlcygpKTsKLSAgICBpZiAobV91c2VyU3R5bGUpCi0gICAgICAgIG1f
ZmVhdHVyZXMuYWRkKG1fdXNlclN0eWxlLT5mZWF0dXJlcygpKTsKKyAgICBpZiAoYXV0byogdXNl
clN0eWxlID0gdGhpcy0+dXNlclN0eWxlKCkpCisgICAgICAgIG1fZmVhdHVyZXMuYWRkKHVzZXJT
dHlsZS0+ZmVhdHVyZXMoKSk7CiAKICAgICBtX3NpYmxpbmdSdWxlU2V0ID0gbWFrZVJ1bGVTZXQo
bV9mZWF0dXJlcy5zaWJsaW5nUnVsZXMpOwogICAgIG1fdW5jb21tb25BdHRyaWJ1dGVSdWxlU2V0
ID0gbWFrZVJ1bGVTZXQobV9mZWF0dXJlcy51bmNvbW1vbkF0dHJpYnV0ZVJ1bGVzKTsKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL2Nzcy9Eb2N1bWVudFJ1bGVTZXRzLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvY3NzL0RvY3VtZW50UnVsZVNldHMuaAkocmV2aXNpb24gMjE2MDczKQorKysg
U291cmNlL1dlYkNvcmUvY3NzL0RvY3VtZW50UnVsZVNldHMuaAkod29ya2luZyBjb3B5KQpAQCAt
NDAsMTIgKzQwLDEyIEBAIGNsYXNzIE1lZGlhUXVlcnlFdmFsdWF0b3I7CiAKIGNsYXNzIERvY3Vt
ZW50UnVsZVNldHMgewogcHVibGljOgotICAgIERvY3VtZW50UnVsZVNldHMoKTsKKyAgICBEb2N1
bWVudFJ1bGVTZXRzKFN0eWxlUmVzb2x2ZXImKTsKICAgICB+RG9jdW1lbnRSdWxlU2V0cygpOwot
ICAgIAorCiAgICAgYm9vbCBpc0F1dGhvclN0eWxlRGVmaW5lZCgpIGNvbnN0IHsgcmV0dXJuIG1f
aXNBdXRob3JTdHlsZURlZmluZWQ7IH0KICAgICBSdWxlU2V0JiBhdXRob3JTdHlsZSgpIGNvbnN0
IHsgcmV0dXJuICptX2F1dGhvclN0eWxlLmdldCgpOyB9Ci0gICAgUnVsZVNldCogdXNlclN0eWxl
KCkgY29uc3QgeyByZXR1cm4gbV91c2VyU3R5bGUuZ2V0KCk7IH0KKyAgICBSdWxlU2V0KiB1c2Vy
U3R5bGUoKSBjb25zdDsKICAgICBjb25zdCBSdWxlRmVhdHVyZVNldCYgZmVhdHVyZXMoKSBjb25z
dDsKICAgICBSdWxlU2V0KiBzaWJsaW5nKCkgY29uc3QgeyByZXR1cm4gbV9zaWJsaW5nUnVsZVNl
dC5nZXQoKTsgfQogICAgIFJ1bGVTZXQqIHVuY29tbW9uQXR0cmlidXRlKCkgY29uc3QgeyByZXR1
cm4gbV91bmNvbW1vbkF0dHJpYnV0ZVJ1bGVTZXQuZ2V0KCk7IH0KQEAgLTU5LDcgKzU5LDkgQEAg
cHVibGljOgogICAgIH07CiAgICAgY29uc3QgQXR0cmlidXRlUnVsZXMqIGFuY2VzdG9yQXR0cmli
dXRlUnVsZXNGb3JIVE1MKGNvbnN0IEF0b21pY1N0cmluZyYpIGNvbnN0OwogCi0gICAgdm9pZCBp
bml0VXNlclN0eWxlKEV4dGVuc2lvblN0eWxlU2hlZXRzJiwgY29uc3QgTWVkaWFRdWVyeUV2YWx1
YXRvciYsIFN0eWxlUmVzb2x2ZXImKTsKKyAgICB2b2lkIHNldFVzZXNTaGFyZWRVc2VyU3R5bGUo
Ym9vbCBiKSB7IG1fdXNlc1NoYXJlZFVzZXJTdHlsZSA9IGI7IH0KKyAgICB2b2lkIGluaXRpYWxp
emVVc2VyU3R5bGUoKTsKKwogICAgIHZvaWQgcmVzZXRBdXRob3JTdHlsZSgpOwogICAgIHZvaWQg
YXBwZW5kQXV0aG9yU3R5bGVTaGVldHMoY29uc3QgVmVjdG9yPFJlZlB0cjxDU1NTdHlsZVNoZWV0
Pj4mLCBNZWRpYVF1ZXJ5RXZhbHVhdG9yKiwgSW5zcGVjdG9yQ1NTT01XcmFwcGVycyYsIFN0eWxl
UmVzb2x2ZXIqKTsKIApAQCAtNzIsNyArNzQsOSBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9pc0F1
dGhvclN0eWxlRGVmaW5lZCB7IGZhbHNlIH07CiAgICAgc3RkOjp1bmlxdWVfcHRyPFJ1bGVTZXQ+
IG1fYXV0aG9yU3R5bGU7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFJ1bGVTZXQ+IG1fdXNlclN0eWxl
OworICAgIGJvb2wgbV91c2VzU2hhcmVkVXNlclN0eWxlIHsgZmFsc2UgfTsKIAorICAgIFN0eWxl
UmVzb2x2ZXImIG1fc3R5bGVSZXNvbHZlcjsKICAgICBtdXRhYmxlIFJ1bGVGZWF0dXJlU2V0IG1f
ZmVhdHVyZXM7CiAgICAgbXV0YWJsZSB1bnNpZ25lZCBtX2RlZmF1bHRTdHlsZVZlcnNpb25PbkZl
YXR1cmVDb2xsZWN0aW9uIHsgMCB9OwogICAgIG11dGFibGUgc3RkOjp1bmlxdWVfcHRyPFJ1bGVT
ZXQ+IG1fc2libGluZ1J1bGVTZXQ7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNv
bHZlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIu
Y3BwCShyZXZpc2lvbiAyMTYwNzMpCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZl
ci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIyOCw3ICsyMjgsOCBAQCB2b2lkIFN0eWxlUmVzb2x2
ZXI6Ok1hdGNoUmVzdWx0OjphZGRNYXRjCiB9CiAKIFN0eWxlUmVzb2x2ZXI6OlN0eWxlUmVzb2x2
ZXIoRG9jdW1lbnQmIGRvY3VtZW50KQotICAgIDogbV9tYXRjaGVkUHJvcGVydGllc0NhY2hlQWRk
aXRpb25zU2luY2VMYXN0U3dlZXAoMCkKKyAgICA6IG1fcnVsZVNldHMoKnRoaXMpCisgICAgLCBt
X21hdGNoZWRQcm9wZXJ0aWVzQ2FjaGVBZGRpdGlvbnNTaW5jZUxhc3RTd2VlcCgwKQogICAgICwg
bV9tYXRjaGVkUHJvcGVydGllc0NhY2hlU3dlZXBUaW1lcigqdGhpcywgJlN0eWxlUmVzb2x2ZXI6
OnN3ZWVwTWF0Y2hlZFByb3BlcnRpZXNDYWNoZSkKICAgICAsIG1fZG9jdW1lbnQoZG9jdW1lbnQp
CiAgICAgLCBtX21hdGNoQXV0aG9yQW5kVXNlclN0eWxlcyhtX2RvY3VtZW50LnNldHRpbmdzKCku
YXV0aG9yQW5kVXNlclN0eWxlc0VuYWJsZWQoKSkKQEAgLTI2Nyw4ICsyNjgsNiBAQCBTdHlsZVJl
c29sdmVyOjpTdHlsZVJlc29sdmVyKERvY3VtZW50JiBkCiAKICAgICBtX3J1bGVTZXRzLnJlc2V0
QXV0aG9yU3R5bGUoKTsKIAotICAgIG1fcnVsZVNldHMuaW5pdFVzZXJTdHlsZShtX2RvY3VtZW50
LmV4dGVuc2lvblN0eWxlU2hlZXRzKCksIG1fbWVkaWFRdWVyeUV2YWx1YXRvciwgKnRoaXMpOwot
CiAjaWYgRU5BQkxFKFNWR19GT05UUykKICAgICBpZiAobV9kb2N1bWVudC5zdmdFeHRlbnNpb25z
KCkpIHsKICAgICAgICAgY29uc3QgSGFzaFNldDxTVkdGb250RmFjZUVsZW1lbnQqPiYgc3ZnRm9u
dEZhY2VFbGVtZW50cyA9IG1fZG9jdW1lbnQuc3ZnRXh0ZW5zaW9ucygpLT5zdmdGb250RmFjZUVs
ZW1lbnRzKCk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNjb3BlLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNjb3BlLmNwcAkocmV2aXNpb24g
MjE2MDczKQorKysgU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVTY29wZS5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTk2LDYgKzk2LDEyIEBAIFN0eWxlUmVzb2x2ZXImIFNjb3BlOjpyZXNvbHZlcigp
CiAgICAgaWYgKCFtX3Jlc29sdmVyKSB7CiAgICAgICAgIFNldEZvclNjb3BlPGJvb2w+IGlzVXBk
YXRpbmdTdHlsZVJlc29sdmVyIHsgbV9pc1VwZGF0aW5nU3R5bGVSZXNvbHZlciwgdHJ1ZSB9Owog
ICAgICAgICBtX3Jlc29sdmVyID0gc3RkOjptYWtlX3VuaXF1ZTxTdHlsZVJlc29sdmVyPihtX2Rv
Y3VtZW50KTsKKworICAgICAgICBpZiAoIW1fc2hhZG93Um9vdCkKKyAgICAgICAgICAgIG1fcmVz
b2x2ZXItPnJ1bGVTZXRzKCkuaW5pdGlhbGl6ZVVzZXJTdHlsZSgpOworICAgICAgICBlbHNlCisg
ICAgICAgICAgICBtX3Jlc29sdmVyLT5ydWxlU2V0cygpLnNldFVzZXNTaGFyZWRVc2VyU3R5bGUo
bV9zaGFkb3dSb290LT5tb2RlKCkgIT0gU2hhZG93Um9vdE1vZGU6OlVzZXJBZ2VudCk7CisKICAg
ICAgICAgbV9yZXNvbHZlci0+YXBwZW5kQXV0aG9yU3R5bGVTaGVldHMobV9hY3RpdmVTdHlsZVNo
ZWV0cyk7CiAgICAgfQogICAgIEFTU0VSVCghbV9zaGFkb3dSb290IHx8ICZtX2RvY3VtZW50ID09
ICZtX3NoYWRvd1Jvb3QtPmRvY3VtZW50KCkpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>