<?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>178038</bug_id>
          
          <creation_ts>2017-10-06 17:01:56 -0700</creation_ts>
          <short_desc>Extract logic to paint composition underlines to its own function</short_desc>
          <delta_ts>2017-10-11 12:20:40 -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>Layout and Rendering</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Daniel Bates">dbates</reporter>
          <assigned_to name="Daniel Bates">dbates</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1357831</commentid>
    <comment_count>0</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-10-06 17:01:56 -0700</bug_when>
    <thetext>Extract logic to paint composition underlines to its own function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1357833</commentid>
    <comment_count>1</comment_count>
      <attachid>323070</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-10-06 17:07:31 -0700</bug_when>
    <thetext>Created attachment 323070
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1359320</commentid>
    <comment_count>2</comment_count>
      <attachid>323070</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-10-11 12:18:13 -0700</bug_when>
    <thetext>Comment on attachment 323070
Patch

Clearing flags on attachment: 323070

Committed r223198: &lt;https://trac.webkit.org/changeset/223198&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1359321</commentid>
    <comment_count>3</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-10-11 12:18:15 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1359323</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-10-11 12:20:40 -0700</bug_when>
    <thetext>&lt;rdar://problem/34938839&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>323070</attachid>
            <date>2017-10-06 17:07:31 -0700</date>
            <delta_ts>2017-10-11 12:18:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178038-20171006170730.patch</filename>
            <type>text/plain</type>
            <size>5279</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIyMzAxMSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIwIEBACisyMDE3LTEwLTA2ICBEYW5pZWwg
QmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBFeHRyYWN0IGxvZ2ljIHRvIHBh
aW50IGNvbXBvc2l0aW9uIHVuZGVybGluZXMgdG8gaXRzIG93biBmdW5jdGlvbgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MDM4CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gZnVuY3Rpb25hbGl0eSBj
aGFuZ2VkLiBTbywgbm8gbmV3IHRlc3RzLgorCisgICAgICAgICogcmVuZGVyaW5nL0lubGluZVRl
eHRCb3guY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5saW5lVGV4dEJveDo6cGFpbnQpOiBNb2Rp
ZmllZCB0byBjYWxsIHBhaW50Q29tcG9zaXRpb25VbmRlcmxpbmVzKCkuCisgICAgICAgIChXZWJD
b3JlOjpJbmxpbmVUZXh0Qm94OjpwYWludENvbXBvc2l0aW9uVW5kZXJsaW5lcyBjb25zdCk6IEFk
ZGVkOyBleHRyYWN0IGNvZGUKKyAgICAgICAgZnJvbSBJbmxpbmVUZXh0Qm94OjpwYWludCgpIGFu
ZCBtb2Rlcm5pemVkIGl0LgorICAgICAgICAoV2ViQ29yZTo6SW5saW5lVGV4dEJveDo6cGFpbnRD
b21wb3NpdGlvblVuZGVybGluZSBjb25zdCk6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6SW5s
aW5lVGV4dEJveDo6cGFpbnRDb21wb3NpdGlvblVuZGVybGluZSk6IERlbGV0ZWQ7IG1hZGUgY29u
c3QuCisgICAgICAgICogcmVuZGVyaW5nL0lubGluZVRleHRCb3guaDoKKwogMjAxNy0xMC0wNiAg
WmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbmRlclRhYmxlIHNo
b3VsZCBub3QgaG9sZCBhIGNvbGxlY3Rpb24gb2YgcmF3IHBvaW50ZXJzIHRvIFJlbmRlclRhYmxl
Q29sCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lVGV4dEJveC5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZVRleHRCb3guY3BwCShy
ZXZpc2lvbiAyMjI5NTUpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lVGV4dEJv
eC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU5OCwzMCArNTk4LDggQEAgdm9pZCBJbmxpbmVUZXh0
Qm94OjpwYWludChQYWludEluZm8mIHBhaQogICAgIGlmIChwYWludEluZm8ucGhhc2UgPT0gUGFp
bnRQaGFzZUZvcmVncm91bmQpIHsKICAgICAgICAgcGFpbnREb2N1bWVudE1hcmtlcnMoY29udGV4
dCwgYm94T3JpZ2luLCBmYWxzZSk7CiAKLSAgICAgICAgaWYgKHVzZUN1c3RvbVVuZGVybGluZXMp
IHsKLSAgICAgICAgICAgIGNvbnN0IFZlY3RvcjxDb21wb3NpdGlvblVuZGVybGluZT4mIHVuZGVy
bGluZXMgPSByZW5kZXJlcigpLmZyYW1lKCkuZWRpdG9yKCkuY3VzdG9tQ29tcG9zaXRpb25VbmRl
cmxpbmVzKCk7Ci0gICAgICAgICAgICBzaXplX3QgbnVtVW5kZXJsaW5lcyA9IHVuZGVybGluZXMu
c2l6ZSgpOwotCi0gICAgICAgICAgICBmb3IgKHNpemVfdCBpbmRleCA9IDA7IGluZGV4IDwgbnVt
VW5kZXJsaW5lczsgKytpbmRleCkgewotICAgICAgICAgICAgICAgIGNvbnN0IENvbXBvc2l0aW9u
VW5kZXJsaW5lJiB1bmRlcmxpbmUgPSB1bmRlcmxpbmVzW2luZGV4XTsKLQotICAgICAgICAgICAg
ICAgIGlmICh1bmRlcmxpbmUuZW5kT2Zmc2V0IDw9IHN0YXJ0KCkpCi0gICAgICAgICAgICAgICAg
ICAgIC8vIHVuZGVybGluZSBpcyBjb21wbGV0ZWx5IGJlZm9yZSB0aGlzIHJ1bi4gIFRoaXMgbWln
aHQgYmUgYW4gdW5kZXJsaW5lIHRoYXQgc2l0cwotICAgICAgICAgICAgICAgICAgICAvLyBiZWZv
cmUgdGhlIGZpcnN0IHJ1biB3ZSBkcmF3LCBvciB1bmRlcmxpbmVzIHRoYXQgd2VyZSB3aXRoaW4g
cnVucyB3ZSBza2lwcGVkIAotICAgICAgICAgICAgICAgICAgICAvLyBkdWUgdG8gdHJ1bmNhdGlv
bi4KLSAgICAgICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICAgICAgICAgCi0gICAg
ICAgICAgICAgICAgaWYgKHVuZGVybGluZS5zdGFydE9mZnNldCA8PSBlbmQoKSkgewotICAgICAg
ICAgICAgICAgICAgICAvLyB1bmRlcmxpbmUgaW50ZXJzZWN0cyB0aGlzIHJ1bi4gIFBhaW50IGl0
LgotICAgICAgICAgICAgICAgICAgICBwYWludENvbXBvc2l0aW9uVW5kZXJsaW5lKGNvbnRleHQs
IGJveE9yaWdpbiwgdW5kZXJsaW5lKTsKLSAgICAgICAgICAgICAgICAgICAgaWYgKHVuZGVybGlu
ZS5lbmRPZmZzZXQgPiBlbmQoKSArIDEpCi0gICAgICAgICAgICAgICAgICAgICAgICAvLyB1bmRl
cmxpbmUgYWxzbyBydW5zIGludG8gdGhlIG5leHQgcnVuLiBCYWlsIG5vdywgbm8gbW9yZSBtYXJr
ZXIgYWR2YW5jZW1lbnQuCi0gICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAg
ICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgICAgICAgICAgLy8gdW5kZXJsaW5lIGlzIGNvbXBs
ZXRlbHkgYWZ0ZXIgdGhpcyBydW4sIGJhaWwuICBBIGxhdGVyIHJ1biB3aWxsIHBhaW50IGl0Lgot
ICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQorICAg
ICAgICBpZiAodXNlQ3VzdG9tVW5kZXJsaW5lcykKKyAgICAgICAgICAgIHBhaW50Q29tcG9zaXRp
b25VbmRlcmxpbmVzKGNvbnRleHQsIGJveE9yaWdpbik7CiAgICAgfQogICAgIAogICAgIGlmIChz
aG91bGRSb3RhdGUpCkBAIC05NzQsNyArOTUyLDMxIEBAIHZvaWQgSW5saW5lVGV4dEJveDo6cGFp
bnREb2N1bWVudE1hcmtlcnMKICAgICB9CiB9CiAKLXZvaWQgSW5saW5lVGV4dEJveDo6cGFpbnRD
b21wb3NpdGlvblVuZGVybGluZShHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEZsb2F0
UG9pbnQmIGJveE9yaWdpbiwgY29uc3QgQ29tcG9zaXRpb25VbmRlcmxpbmUmIHVuZGVybGluZSkK
K3ZvaWQgSW5saW5lVGV4dEJveDo6cGFpbnRDb21wb3NpdGlvblVuZGVybGluZXMoR3JhcGhpY3ND
b250ZXh0JiBjb250ZXh0LCBjb25zdCBGbG9hdFBvaW50JiBib3hPcmlnaW4pIGNvbnN0Cit7Cisg
ICAgaWYgKG1fdHJ1bmNhdGlvbiA9PSBjRnVsbFRydW5jYXRpb24pCisgICAgICAgIHJldHVybjsK
KworICAgIGZvciAoYXV0byYgdW5kZXJsaW5lIDogcmVuZGVyZXIoKS5mcmFtZSgpLmVkaXRvcigp
LmN1c3RvbUNvbXBvc2l0aW9uVW5kZXJsaW5lcygpKSB7CisgICAgICAgIGlmICh1bmRlcmxpbmUu
ZW5kT2Zmc2V0IDw9IG1fc3RhcnQpIHsKKyAgICAgICAgICAgIC8vIFVuZGVybGluZSBpcyBjb21w
bGV0ZWx5IGJlZm9yZSB0aGlzIHJ1bi4gVGhpcyBtaWdodCBiZSBhbiB1bmRlcmxpbmUgdGhhdCBz
aXRzCisgICAgICAgICAgICAvLyBiZWZvcmUgdGhlIGZpcnN0IHJ1biB3ZSBkcmF3LCBvciB1bmRl
cmxpbmVzIHRoYXQgd2VyZSB3aXRoaW4gcnVucyB3ZSBza2lwcGVkCisgICAgICAgICAgICAvLyBk
dWUgdG8gdHJ1bmNhdGlvbi4KKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICB9CisKKyAg
ICAgICAgaWYgKHVuZGVybGluZS5zdGFydE9mZnNldCA+IGVuZCgpKQorICAgICAgICAgICAgYnJl
YWs7IC8vIFVuZGVybGluZSBpcyBjb21wbGV0ZWx5IGFmdGVyIHRoaXMgcnVuLCBiYWlsLiBBIGxh
dGVyIHJ1biB3aWxsIHBhaW50IGl0LgorCisgICAgICAgIC8vIFVuZGVybGluZSBpbnRlcnNlY3Rz
IHRoaXMgcnVuLiBQYWludCBpdC4KKyAgICAgICAgcGFpbnRDb21wb3NpdGlvblVuZGVybGluZShj
b250ZXh0LCBib3hPcmlnaW4sIHVuZGVybGluZSk7CisKKyAgICAgICAgaWYgKHVuZGVybGluZS5l
bmRPZmZzZXQgPiBlbmQoKSArIDEpCisgICAgICAgICAgICBicmVhazsgLy8gVW5kZXJsaW5lIGFs
c28gcnVucyBpbnRvIHRoZSBuZXh0IHJ1bi4gQmFpbCBub3csIG5vIG1vcmUgbWFya2VyIGFkdmFu
Y2VtZW50LgorICAgIH0KK30KKwordm9pZCBJbmxpbmVUZXh0Qm94OjpwYWludENvbXBvc2l0aW9u
VW5kZXJsaW5lKEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgRmxvYXRQb2ludCYgYm94
T3JpZ2luLCBjb25zdCBDb21wb3NpdGlvblVuZGVybGluZSYgdW5kZXJsaW5lKSBjb25zdAogewog
ICAgIGlmIChtX3RydW5jYXRpb24gPT0gY0Z1bGxUcnVuY2F0aW9uKQogICAgICAgICByZXR1cm47
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lVGV4dEJveC5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVUZXh0Qm94LmgJKHJldmlzaW9u
IDIyMjk1NSkKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVUZXh0Qm94LmgJKHdv
cmtpbmcgY29weSkKQEAgLTE1OSw3ICsxNTksOCBAQCBwcml2YXRlOgogICAgIHZvaWQgcGFpbnRU
ZXh0TWF0Y2hNYXJrZXIoR3JhcGhpY3NDb250ZXh0JiwgY29uc3QgRmxvYXRQb2ludCYgYm94T3Jp
Z2luLCBjb25zdCBNYXJrZXJTdWJyYW5nZSYsIGJvb2wgaXNBY3RpdmVNYXRjaCk7CiAKICAgICB2
b2lkIHBhaW50Q29tcG9zaXRpb25CYWNrZ3JvdW5kKEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IEZs
b2F0UG9pbnQmIGJveE9yaWdpbik7Ci0gICAgdm9pZCBwYWludENvbXBvc2l0aW9uVW5kZXJsaW5l
KEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IEZsb2F0UG9pbnQmIGJveE9yaWdpbiwgY29uc3QgQ29t
cG9zaXRpb25VbmRlcmxpbmUmKTsKKyAgICB2b2lkIHBhaW50Q29tcG9zaXRpb25VbmRlcmxpbmVz
KEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IEZsb2F0UG9pbnQmIGJveE9yaWdpbikgY29uc3Q7Cisg
ICAgdm9pZCBwYWludENvbXBvc2l0aW9uVW5kZXJsaW5lKEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0
IEZsb2F0UG9pbnQmIGJveE9yaWdpbiwgY29uc3QgQ29tcG9zaXRpb25VbmRlcmxpbmUmKSBjb25z
dDsKIAogICAgIHZvaWQgcGFpbnRUZXh0U3VicmFuZ2VCYWNrZ3JvdW5kKEdyYXBoaWNzQ29udGV4
dCYsIGNvbnN0IEZsb2F0UG9pbnQmIGJveE9yaWdpbiwgY29uc3QgQ29sb3ImLCB1bnNpZ25lZCBz
dGFydE9mZnNldCwgdW5zaWduZWQgZW5kT2Zmc2V0KTsKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>