<?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>140247</bug_id>
          
          <creation_ts>2015-01-08 08:13:34 -0800</creation_ts>
          <short_desc>Unfriend StyleResolver and StyleBuilderCustom</short_desc>
          <delta_ts>2015-01-08 12:05: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>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="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1059811</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-01-08 08:13:34 -0800</bug_when>
    <thetext>Stop marking StyleBuilderCustom as a friend of StyleResolver by refactoring the code a bit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1059855</commentid>
    <comment_count>1</comment_count>
      <attachid>244268</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-01-08 09:58:16 -0800</bug_when>
    <thetext>Created attachment 244268
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1059871</commentid>
    <comment_count>2</comment_count>
      <attachid>244268</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-01-08 10:27:31 -0800</bug_when>
    <thetext>Comment on attachment 244268
Patch

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

That turned out really nice.

&gt; Source/WebCore/css/StyleResolver.h:165
&gt; +    Settings* documentSettings() { return m_document.settings(); }

Really annoying that settings can be null. We need to get Kling on the case to help us figure out how to do this. Maybe we can move Settings from Page to MainFrame?

&gt; Source/WebCore/css/StyleResolver.h:-322
&gt; -    Settings* documentSettings() { return m_document.settings(); }

Might need to remove a blank line here to avoid a double black line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1059888</commentid>
    <comment_count>3</comment_count>
      <attachid>244268</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-01-08 11:23:29 -0800</bug_when>
    <thetext>Comment on attachment 244268
Patch

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

&gt;&gt; Source/WebCore/css/StyleResolver.h:-322
&gt;&gt; -    Settings* documentSettings() { return m_document.settings(); }
&gt; 
&gt; Might need to remove a blank line here to avoid a double black line.

I only see 1 blank line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1059904</commentid>
    <comment_count>4</comment_count>
      <attachid>244268</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-01-08 12:05:21 -0800</bug_when>
    <thetext>Comment on attachment 244268
Patch

Clearing flags on attachment: 244268

Committed r178123: &lt;http://trac.webkit.org/changeset/178123&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1059905</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-01-08 12:05:26 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>244268</attachid>
            <date>2015-01-08 09:58:16 -0800</date>
            <delta_ts>2015-01-08 12:05:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-140247-20150108095821.patch</filename>
            <type>text/plain</type>
            <size>6021</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc4MTEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWFlMGMxM2VjNTIzZjUw
NmEwNzk3MTg3NDFkZGUzMWYwNTAzNzM3Yy4uNjUxMTI4YjNhZTAwNGYzNDM3ZTlhNTBiMTVhMGYx
NmMxZThjZmIyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE1LTAxLTA4ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgVW5mcmllbmQgU3R5bGVSZXNv
bHZlciBhbmQgU3R5bGVCdWlsZGVyQ3VzdG9tCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNDAyNDcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBTdG9wIG1hcmtpbmcgU3R5bGVCdWlsZGVyQ3VzdG9tIGFzIGEg
ZnJpZW5kIG9mIFN0eWxlUmVzb2x2ZXIgYnkKKyAgICAgICAgcmVmYWN0b3JpbmcgdGhlIGNvZGUg
YSBiaXQuCisKKyAgICAgICAgKiBjc3MvU3R5bGVCdWlsZGVyQ3VzdG9tLmg6CisgICAgICAgIChX
ZWJDb3JlOjpTdHlsZUJ1aWxkZXJDdXN0b206OmFwcGx5VmFsdWVGb250KToKKyAgICAgICAgKiBj
c3MvU3R5bGVSZXNvbHZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJlc29sdmVyOjph
cHBseUZvbnQpOgorICAgICAgICAqIGNzcy9TdHlsZVJlc29sdmVyLmg6CisgICAgICAgIChXZWJD
b3JlOjpTdHlsZVJlc29sdmVyOjpkb2N1bWVudFNldHRpbmdzKToKKwogMjAxNS0wMS0wOCAgR3dh
bmcgWW9vbiBId2FuZyAgPHlvb25AaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXSBTZXBlcmF0
ZSB1cGRhdGVCYWNraW5nU3RvcmUgZnJvbSBmbHVzaENvbXBvc2l0aW5nU3RhdGUuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVCdWlsZGVyQ3VzdG9tLmggYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvU3R5bGVCdWlsZGVyQ3VzdG9tLmgKaW5kZXggYTU3YzBjODJiZTQzMzVjMjQyNDk2
N2Q4OTdiZTJhMTA4YThjNTAzNy4uYmUxMjk4MjAzYWM3YzY3NGRhYTNlYTVmYmEzZGQ5YjA5Yzhk
M2U4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlQnVpbGRlckN1c3RvbS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZUJ1aWxkZXJDdXN0b20uaApAQCAtMTI2MCwy
NCArMTI2MCw4IEBAIGlubGluZSB2b2lkIFN0eWxlQnVpbGRlckN1c3RvbTo6YXBwbHlWYWx1ZUZv
bnQoU3R5bGVSZXNvbHZlciYgc3R5bGVSZXNvbHZlciwgQ1NTCiAgICAgICAgIH0KICAgICAgICAg
cmV0dXJuOwogICAgIH0KLSAgICBpZiAoaXM8Q1NTRm9udFZhbHVlPih2YWx1ZSkpIHsKLSAgICAg
ICAgYXV0byYgZm9udCA9IGRvd25jYXN0PENTU0ZvbnRWYWx1ZT4odmFsdWUpOwotICAgICAgICBp
ZiAoIWZvbnQuc3R5bGUgfHwgIWZvbnQudmFyaWFudCB8fCAhZm9udC53ZWlnaHQgfHwgIWZvbnQu
c2l6ZSB8fCAhZm9udC5saW5lSGVpZ2h0IHx8ICFmb250LmZhbWlseSkKLSAgICAgICAgICAgIHJl
dHVybjsKLSAgICAgICAgc3R5bGVSZXNvbHZlci5hcHBseVByb3BlcnR5KENTU1Byb3BlcnR5Rm9u
dFN0eWxlLCBmb250LnN0eWxlLmdldCgpKTsKLSAgICAgICAgc3R5bGVSZXNvbHZlci5hcHBseVBy
b3BlcnR5KENTU1Byb3BlcnR5Rm9udFZhcmlhbnQsIGZvbnQudmFyaWFudC5nZXQoKSk7Ci0gICAg
ICAgIHN0eWxlUmVzb2x2ZXIuYXBwbHlQcm9wZXJ0eShDU1NQcm9wZXJ0eUZvbnRXZWlnaHQsIGZv
bnQud2VpZ2h0LmdldCgpKTsKLSAgICAgICAgLy8gVGhlIHByZXZpb3VzIHByb3BlcnRpZXMgY2Fu
IGRpcnR5IG91ciBmb250IGJ1dCB0aGV5IGRvbid0IHRyeSB0byByZWFkIHRoZSBmb250J3MKLSAg
ICAgICAgLy8gcHJvcGVydGllcyBiYWNrLCB3aGljaCBpcyBzYWZlLiBIb3dldmVyIGlmIGZvbnQt
c2l6ZSBpcyB1c2luZyB0aGUgJ2V4JyB1bml0LCBpdCB3aWxsCi0gICAgICAgIC8vIG5lZWQgcXVl
cnkgdGhlIGRpcnRpZWQgZm9udCdzIHgtaGVpZ2h0IHRvIGdldCB0aGUgY29tcHV0ZWQgc2l6ZS4g
VG8gYmUgc2FmZSBpbiB0aGlzCi0gICAgICAgIC8vIGNhc2UsIGxldCdzIGp1c3QgdXBkYXRlIHRo
ZSBmb250IG5vdy4KLSAgICAgICAgc3R5bGVSZXNvbHZlci51cGRhdGVGb250KCk7Ci0gICAgICAg
IHN0eWxlUmVzb2x2ZXIuYXBwbHlQcm9wZXJ0eShDU1NQcm9wZXJ0eUZvbnRTaXplLCBmb250LnNp
emUuZ2V0KCkpOwotCi0gICAgICAgIHN0eWxlUmVzb2x2ZXIuc3RhdGUoKS5zZXRMaW5lSGVpZ2h0
VmFsdWUoZm9udC5saW5lSGVpZ2h0LmdldCgpKTsKLQotICAgICAgICBzdHlsZVJlc29sdmVyLmFw
cGx5UHJvcGVydHkoQ1NTUHJvcGVydHlGb250RmFtaWx5LCBmb250LmZhbWlseS5nZXQoKSk7Ci0g
ICAgfQorICAgIGlmIChpczxDU1NGb250VmFsdWU+KHZhbHVlKSkKKyAgICAgICAgc3R5bGVSZXNv
bHZlci5hcHBseUZvbnQoZG93bmNhc3Q8Q1NTRm9udFZhbHVlPih2YWx1ZSkpOwogfQogCiBpbmxp
bmUgdm9pZCBTdHlsZUJ1aWxkZXJDdXN0b206OmFwcGx5SW5pdGlhbENvbnRlbnQoU3R5bGVSZXNv
bHZlciYgc3R5bGVSZXNvbHZlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHls
ZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcAppbmRl
eCA0Y2YzMDc3MTNmMGMxMTY0Y2U3OGMxODU5NDIzMzIxNjY5MDVjMGM1Li45NzlhNGRkODhmMjFl
NmJiNzJhMmI4MDdiMzYwNTEzNjdkYmFmYTU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvU3R5bGVSZXNvbHZlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2
ZXIuY3BwCkBAIC0xODM4LDYgKzE4MzgsMjUgQEAgdm9pZCBTdHlsZVJlc29sdmVyOjphcHBseVBy
b3BlcnR5VG9DdXJyZW50U3R5bGUoQ1NTUHJvcGVydHlJRCBpZCwgQ1NTVmFsdWUqIHZhbHUKICAg
ICAgICAgYXBwbHlQcm9wZXJ0eShpZCwgdmFsdWUpOwogfQogCit2b2lkIFN0eWxlUmVzb2x2ZXI6
OmFwcGx5Rm9udChDU1NGb250VmFsdWUmIGZvbnQpCit7CisgICAgaWYgKCFmb250LnN0eWxlIHx8
ICFmb250LnZhcmlhbnQgfHwgIWZvbnQud2VpZ2h0IHx8ICFmb250LnNpemUgfHwgIWZvbnQubGlu
ZUhlaWdodCB8fCAhZm9udC5mYW1pbHkpCisgICAgICAgIHJldHVybjsKKyAgICBhcHBseVByb3Bl
cnR5KENTU1Byb3BlcnR5Rm9udFN0eWxlLCBmb250LnN0eWxlLmdldCgpKTsKKyAgICBhcHBseVBy
b3BlcnR5KENTU1Byb3BlcnR5Rm9udFZhcmlhbnQsIGZvbnQudmFyaWFudC5nZXQoKSk7CisgICAg
YXBwbHlQcm9wZXJ0eShDU1NQcm9wZXJ0eUZvbnRXZWlnaHQsIGZvbnQud2VpZ2h0LmdldCgpKTsK
KyAgICAvLyBUaGUgcHJldmlvdXMgcHJvcGVydGllcyBjYW4gZGlydHkgb3VyIGZvbnQgYnV0IHRo
ZXkgZG9uJ3QgdHJ5IHRvIHJlYWQgdGhlIGZvbnQncworICAgIC8vIHByb3BlcnRpZXMgYmFjaywg
d2hpY2ggaXMgc2FmZS4gSG93ZXZlciBpZiBmb250LXNpemUgaXMgdXNpbmcgdGhlICdleCcgdW5p
dCwgaXQgd2lsbAorICAgIC8vIG5lZWQgcXVlcnkgdGhlIGRpcnRpZWQgZm9udCdzIHgtaGVpZ2h0
IHRvIGdldCB0aGUgY29tcHV0ZWQgc2l6ZS4gVG8gYmUgc2FmZSBpbiB0aGlzCisgICAgLy8gY2Fz
ZSwgbGV0J3MganVzdCB1cGRhdGUgdGhlIGZvbnQgbm93LgorICAgIHVwZGF0ZUZvbnQoKTsKKyAg
ICBhcHBseVByb3BlcnR5KENTU1Byb3BlcnR5Rm9udFNpemUsIGZvbnQuc2l6ZS5nZXQoKSk7CisK
KyAgICBtX3N0YXRlLnNldExpbmVIZWlnaHRWYWx1ZShmb250LmxpbmVIZWlnaHQuZ2V0KCkpOwor
CisgICAgYXBwbHlQcm9wZXJ0eShDU1NQcm9wZXJ0eUZvbnRGYW1pbHksIGZvbnQuZmFtaWx5Lmdl
dCgpKTsKK30KKwogaW5saW5lIGJvb2wgaXNWYWxpZFZpc2l0ZWRMaW5rUHJvcGVydHkoQ1NTUHJv
cGVydHlJRCBpZCkKIHsKICAgICBzd2l0Y2ggKGlkKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvU3R5bGVSZXNvbHZlci5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2
ZXIuaAppbmRleCA1MWM5ZDllZDg4ZDcxYmE5ODA5NzNlYmNkZTkwMDRlZDdlMGZjYmJlLi45YWYx
NjVhODQ1ZTViZDJiMThhMjhhMGZlNTNkMDJlNzE0N2Q3ZTg1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHls
ZVJlc29sdmVyLmgKQEAgLTUzLDYgKzUzLDcgQEAgY2xhc3MgQ1NTQ3Vyc29ySW1hZ2VWYWx1ZTsK
IGNsYXNzIENTU0ZvbnRTZWxlY3RvcjsKIGNsYXNzIENTU0ZvbnRGYWNlOwogY2xhc3MgQ1NTRm9u
dEZhY2VSdWxlOworY2xhc3MgQ1NTRm9udFZhbHVlOwogY2xhc3MgQ1NTSW1hZ2VHZW5lcmF0b3JW
YWx1ZTsKIGNsYXNzIENTU0ltYWdlU2V0VmFsdWU7CiBjbGFzcyBDU1NJbWFnZVZhbHVlOwpAQCAt
MTYxLDYgKzE2Miw3IEBAIHB1YmxpYzoKICAgICBSZW5kZXJTdHlsZSogcm9vdEVsZW1lbnRTdHls
ZSgpIGNvbnN0IHsgcmV0dXJuIG1fc3RhdGUucm9vdEVsZW1lbnRTdHlsZSgpOyB9CiAgICAgRWxl
bWVudCogZWxlbWVudCgpIHsgcmV0dXJuIG1fc3RhdGUuZWxlbWVudCgpOyB9CiAgICAgRG9jdW1l
bnQmIGRvY3VtZW50KCkgeyByZXR1cm4gbV9kb2N1bWVudDsgfQorICAgIFNldHRpbmdzKiBkb2N1
bWVudFNldHRpbmdzKCkgeyByZXR1cm4gbV9kb2N1bWVudC5zZXR0aW5ncygpOyB9CiAKICAgICAv
LyBGSVhNRTogSXQgY291bGQgYmUgYmV0dGVyIHRvIGNhbGwgbV9ydWxlU2V0cy5hcHBlbmRBdXRo
b3JTdHlsZVNoZWV0cygpIGRpcmVjdGx5IGFmdGVyIHdlIGZhY3RvciBTdHlsZVJzb2x2ZXIgZnVy
dGhlci4KICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA4
ODkwCkBAIC0yMDAsNiArMjAyLDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBhcHBseVByb3BlcnR5
VG9DdXJyZW50U3R5bGUoQ1NTUHJvcGVydHlJRCwgQ1NTVmFsdWUqKTsKIAorICAgIHZvaWQgYXBw
bHlGb250KENTU0ZvbnRWYWx1ZSYpOwogICAgIHZvaWQgdXBkYXRlRm9udCgpOwogICAgIHZvaWQg
aW5pdGlhbGl6ZUZvbnRTdHlsZShTZXR0aW5ncyopOwogCkBAIC0yODYsOCArMjg5LDYgQEAgcHVi
bGljOgogICAgIH07CiAKIHByaXZhdGU6Ci0gICAgZnJpZW5kIGNsYXNzIFN0eWxlQnVpbGRlckN1
c3RvbTsKLQogICAgIC8vIFRoaXMgZnVuY3Rpb24gZml4ZXMgdXAgdGhlIGRlZmF1bHQgZm9udCBz
aXplIGlmIGl0IGRldGVjdHMgdGhhdCB0aGUgY3VycmVudCBnZW5lcmljIGZvbnQgZmFtaWx5IGhh
cyBjaGFuZ2VkLiAtZHdoCiAgICAgdm9pZCBjaGVja0ZvckdlbmVyaWNGYW1pbHlDaGFuZ2UoUmVu
ZGVyU3R5bGUqLCBSZW5kZXJTdHlsZSogcGFyZW50U3R5bGUpOwogICAgIHZvaWQgY2hlY2tGb3Ja
b29tQ2hhbmdlKFJlbmRlclN0eWxlKiwgUmVuZGVyU3R5bGUqIHBhcmVudFN0eWxlKTsKQEAgLTMx
OSw3ICszMjAsNiBAQCBwcml2YXRlOgogI2VuZGlmCiAgICAgdm9pZCBtYXRjaFBhZ2VSdWxlcyhN
YXRjaFJlc3VsdCYsIFJ1bGVTZXQqLCBib29sIGlzTGVmdFBhZ2UsIGJvb2wgaXNGaXJzdFBhZ2Us
IGNvbnN0IFN0cmluZyYgcGFnZU5hbWUpOwogICAgIHZvaWQgbWF0Y2hQYWdlUnVsZXNGb3JMaXN0
KFZlY3RvcjxTdHlsZVJ1bGVQYWdlKj4mIG1hdGNoZWRSdWxlcywgY29uc3QgVmVjdG9yPFN0eWxl
UnVsZVBhZ2UqPiYsIGJvb2wgaXNMZWZ0UGFnZSwgYm9vbCBpc0ZpcnN0UGFnZSwgY29uc3QgU3Ry
aW5nJiBwYWdlTmFtZSk7Ci0gICAgU2V0dGluZ3MqIGRvY3VtZW50U2V0dGluZ3MoKSB7IHJldHVy
biBtX2RvY3VtZW50LnNldHRpbmdzKCk7IH0KIAogICAgIGJvb2wgaXNMZWZ0UGFnZShpbnQgcGFn
ZUluZGV4KSBjb25zdDsKICAgICBib29sIGlzUmlnaHRQYWdlKGludCBwYWdlSW5kZXgpIGNvbnN0
IHsgcmV0dXJuICFpc0xlZnRQYWdlKHBhZ2VJbmRleCk7IH0K
</data>

          </attachment>
      

    </bug>

</bugzilla>