<?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>198491</bug_id>
          
          <creation_ts>2019-06-03 12:37:13 -0700</creation_ts>
          <short_desc>[LFC][IFC] Move run width measuring out of LineBreaker</short_desc>
          <delta_ts>2019-06-04 08:26:11 -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>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="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>koivisto</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>1541289</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2019-06-03 12:37:13 -0700</bug_when>
    <thetext>This is in preparation for getting rid of InlineItem::width()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1541290</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-06-03 12:37:32 -0700</bug_when>
    <thetext>&lt;rdar://problem/51363554&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1541292</commentid>
    <comment_count>2</comment_count>
      <attachid>371204</attachid>
    <who name="alan">zalan</who>
    <bug_when>2019-06-03 12:39:54 -0700</bug_when>
    <thetext>Created attachment 371204
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1541570</commentid>
    <comment_count>3</comment_count>
      <attachid>371204</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-06-04 08:26:10 -0700</bug_when>
    <thetext>Comment on attachment 371204
Patch

Clearing flags on attachment: 371204

Committed r246063: &lt;https://trac.webkit.org/changeset/246063&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1541571</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-06-04 08:26:11 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>371204</attachid>
            <date>2019-06-03 12:39:54 -0700</date>
            <delta_ts>2019-06-04 08:26:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-198491-20190603123953.patch</filename>
            <type>text/plain</type>
            <size>11159</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ2MDI3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjBjOWE3M2RjNDMzYzhk
YTU1NGI3ZDNkZDMyNjg0OWI3OTY1NzJmOC4uOGQxY2JkZDNiOTczZTc3YmJmNzNhNjZiNGRiNTU5
ZGFlMTFiMzdjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDE5LTA2LTAzICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0xGQ11bSUZDXSBNb3ZlIHJ1
biB3aWR0aCBtZWFzdXJpbmcgb3V0IG9mIExpbmVCcmVha2VyCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTg0OTEKKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzUxMzYzNTU0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIExpbmVCcmVha2VyIHNob3VsZCBub3QgbmVlZCB0byBkZWFsIHdpdGggbWVhc3VyaW5n
IHJ1bnMuCisgICAgICAgIFRoaXMgaXMgYWxzbyBpbiBwcmVwYXJhdGlvbiBmb3IgcmVtb3Zpbmcg
SW5saW5lSXRlbTo6d2lkdGgoKS4KKworICAgICAgICAqIGxheW91dC9pbmxpbmVmb3JtYXR0aW5n
L0lubGluZUZvcm1hdHRpbmdDb250ZXh0TGluZUxheW91dC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpMYXlvdXQ6OmlubGluZUl0ZW1XaWR0aCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6Oklu
bGluZUZvcm1hdHRpbmdDb250ZXh0OjpMaW5lTGF5b3V0OjpwbGFjZUlubGluZUl0ZW1zIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6SW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6Okxp
bmVMYXlvdXQ6OmNvbXB1dGVkSW50cmluc2ljV2lkdGggY29uc3QpOgorICAgICAgICAqIGxheW91
dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUxpbmVCcmVha2VyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkxheW91dDo6TGluZUJyZWFrZXI6OmJyZWFraW5nQ29udGV4dCk6CisgICAgICAgIChXZWJD
b3JlOjpMYXlvdXQ6OkxpbmVCcmVha2VyOjpMaW5lQnJlYWtlcik6IERlbGV0ZWQuCisgICAgICAg
IChXZWJDb3JlOjpMYXlvdXQ6OkxpbmVCcmVha2VyOjpydW5XaWR0aCBjb25zdCk6IERlbGV0ZWQu
CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkxpbmVCcmVha2VyOjp0ZXh0V2lkdGggY29uc3Qp
OiBEZWxldGVkLgorICAgICAgICAqIGxheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUxpbmVC
cmVha2VyLmg6CisKIDIwMTktMDYtMDMgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4K
IAogICAgICAgICBbTEZDXVtJRkNdIFJlbW92ZSByZWR1bmRhbnQgSW5saW5lSXRlbTo6d2lkdGgo
KSBjYWxscy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0
aW5nL0lubGluZUZvcm1hdHRpbmdDb250ZXh0TGluZUxheW91dC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dExpbmVMYXlv
dXQuY3BwCmluZGV4IDhmNzhjYWZlZWRkMzc1ZmMyZGIzMTBlMzk5ZTljYzc3YzlmMjc1ZWMuLjc3
ZDJhNDQ3NjNiMGI4MWYxYzU4ZjQyN2NiYjFlYzQyMTlhM2IyMWMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUZvcm1hdHRpbmdDb250ZXh0
TGluZUxheW91dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRp
bmcvSW5saW5lRm9ybWF0dGluZ0NvbnRleHRMaW5lTGF5b3V0LmNwcApAQCAtODMsNiArODMsMzQg
QEAgSW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6OkxpbmVMYXlvdXQ6OkxpbmVMYXlvdXQoY29uc3Qg
SW5saW5lRm9ybWF0dGluZ0NvbnRleHQmIGkKIHsKIH0KIAorc3RhdGljIExheW91dFVuaXQgaW5s
aW5lSXRlbVdpZHRoKGNvbnN0IExheW91dFN0YXRlJiBsYXlvdXRTdGF0ZSwgY29uc3QgSW5saW5l
SXRlbSYgaW5saW5lSXRlbSwgTGF5b3V0VW5pdCBjb250ZW50TG9naWNhbExlZnQpCit7CisgICAg
aWYgKGlubGluZUl0ZW0uaXNMaW5lQnJlYWsoKSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBp
ZiAoaXM8SW5saW5lVGV4dEl0ZW0+KGlubGluZUl0ZW0pKSB7CisgICAgICAgIGF1dG8mIGlubGlu
ZVRleHRJdGVtID0gZG93bmNhc3Q8SW5saW5lVGV4dEl0ZW0+KGlubGluZUl0ZW0pOworICAgICAg
ICBhdXRvIGVuZCA9IGlubGluZVRleHRJdGVtLmlzQ29sbGFwc2VkKCkgPyBpbmxpbmVUZXh0SXRl
bS5zdGFydCgpICsgMSA6IGlubGluZVRleHRJdGVtLmVuZCgpOworICAgICAgICByZXR1cm4gVGV4
dFV0aWw6OndpZHRoKGRvd25jYXN0PElubGluZUJveD4oaW5saW5lVGV4dEl0ZW0ubGF5b3V0Qm94
KCkpLCBpbmxpbmVUZXh0SXRlbS5zdGFydCgpLCBlbmQsIGNvbnRlbnRMb2dpY2FsTGVmdCk7Cisg
ICAgfQorCisgICAgYXV0byYgbGF5b3V0Qm94ID0gaW5saW5lSXRlbS5sYXlvdXRCb3goKTsKKyAg
ICBBU1NFUlQobGF5b3V0U3RhdGUuaGFzRGlzcGxheUJveChsYXlvdXRCb3gpKTsKKyAgICBhdXRv
JiBkaXNwbGF5Qm94ID0gbGF5b3V0U3RhdGUuZGlzcGxheUJveEZvckxheW91dEJveChsYXlvdXRC
b3gpOworCisgICAgaWYgKGlubGluZUl0ZW0uaXNDb250YWluZXJTdGFydCgpKQorICAgICAgICBy
ZXR1cm4gZGlzcGxheUJveC5tYXJnaW5TdGFydCgpICsgZGlzcGxheUJveC5ib3JkZXJMZWZ0KCkg
KyBkaXNwbGF5Qm94LnBhZGRpbmdMZWZ0KCkudmFsdWVPcigwKTsKKworICAgIGlmIChpbmxpbmVJ
dGVtLmlzQ29udGFpbmVyRW5kKCkpCisgICAgICAgIHJldHVybiBkaXNwbGF5Qm94Lm1hcmdpbkVu
ZCgpICsgZGlzcGxheUJveC5ib3JkZXJSaWdodCgpICsgZGlzcGxheUJveC5wYWRkaW5nUmlnaHQo
KS52YWx1ZU9yKDApOworCisgICAgaWYgKGlubGluZUl0ZW0uaXNGbG9hdCgpKQorICAgICAgICBy
ZXR1cm4gZGlzcGxheUJveC5tYXJnaW5Cb3hXaWR0aCgpOworCisgICAgcmV0dXJuIGRpc3BsYXlC
b3gud2lkdGgoKTsKK30KKworCiBzdGF0aWMgc3RkOjp1bmlxdWVfcHRyPExpbmU+IGNvbnN0cnVj
dExpbmUoY29uc3QgTGF5b3V0U3RhdGUmIGxheW91dFN0YXRlLCBjb25zdCBGbG9hdGluZ1N0YXRl
JiBmbG9hdGluZ1N0YXRlLCBjb25zdCBCb3gmIGZvcm1hdHRpbmdSb290LAogICAgIExheW91dFVu
aXQgbGluZUxvZ2ljYWxUb3AsIExheW91dFVuaXQgYXZhaWxhYmxlV2lkdGgpCiB7CkBAIC0xNDAs
NyArMTY4LDcgQEAgSW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6OkxpbmVMYXlvdXQ6OkxpbmVDb250
ZW50IElubGluZUZvcm1hdHRpbmdDb250ZXh0OjpMaW5lTGEKICAgICAgICAgQVNTRVJUKGNvbW1p
dHRlZElubGluZUl0ZW1Db3VudCk7CiAgICAgICAgIHJldHVybiBMaW5lQ29udGVudCB7IGxpbmVJ
bnB1dC5maXJzdElubGluZUl0ZW1JbmRleCArIChjb21taXR0ZWRJbmxpbmVJdGVtQ291bnQgLSAx
KSwgbGluZS0+Y2xvc2UoKSB9OwogICAgIH07Ci0gICAgTGluZUJyZWFrZXIgbGluZUJyZWFrZXIo
bGF5b3V0U3RhdGUoKSk7CisgICAgTGluZUJyZWFrZXIgbGluZUJyZWFrZXI7CiAgICAgLy8gSXRl
cmF0ZSB0aHJvdWdoIHRoZSBpbmxpbmUgY29udGVudCBhbmQgcGxhY2UgdGhlIGlubGluZSBib3hl
cyBvbiB0aGUgY3VycmVudCBsaW5lLgogICAgIGZvciAoYXV0byBpbmxpbmVJdGVtSW5kZXggPSBs
aW5lSW5wdXQuZmlyc3RJbmxpbmVJdGVtSW5kZXg7IGlubGluZUl0ZW1JbmRleCA8IGxpbmVJbnB1
dC5pbmxpbmVJdGVtcy5zaXplKCk7ICsraW5saW5lSXRlbUluZGV4KSB7CiAgICAgICAgIGF1dG8m
IGlubGluZUl0ZW0gPSBsaW5lSW5wdXQuaW5saW5lSXRlbXNbaW5saW5lSXRlbUluZGV4XTsKQEAg
LTE1MSw4ICsxNzksOSBAQCBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6TGluZUxheW91dDo6TGlu
ZUNvbnRlbnQgSW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6OkxpbmVMYQogICAgICAgICB9CiAgICAg
ICAgIGF1dG8gYXZhaWxhYmxlV2lkdGggPSBsaW5lLT5hdmFpbGFibGVXaWR0aCgpIC0gdW5jb21t
aXR0ZWRDb250ZW50LndpZHRoKCk7CiAgICAgICAgIGF1dG8gY3VycmVudExvZ2ljYWxSaWdodCA9
IGxpbmUtPmNvbnRlbnRMb2dpY2FsUmlnaHQoKSArIHVuY29tbWl0dGVkQ29udGVudC53aWR0aCgp
OworICAgICAgICBpbmxpbmVJdGVtLT5zZXRXaWR0aChpbmxpbmVJdGVtV2lkdGgobGF5b3V0U3Rh
dGUoKSwgKmlubGluZUl0ZW0sIGN1cnJlbnRMb2dpY2FsUmlnaHQpKTsKICAgICAgICAgLy8gRklY
TUU6IEVuc3VyZSBMaW5lQ29udGV4dDo6dHJpbW1hYmxlV2lkdGggaW5jbHVkZXMgdW5jb21taXR0
ZWQgY29udGVudCBpZiBuZWVkZWQuCi0gICAgICAgIGF1dG8gYnJlYWtpbmdDb250ZXh0ID0gbGlu
ZUJyZWFrZXIuYnJlYWtpbmdDb250ZXh0KCppbmxpbmVJdGVtLCB7IGF2YWlsYWJsZVdpZHRoLCBj
dXJyZW50TG9naWNhbFJpZ2h0LCBsaW5lLT50cmFpbGluZ1RyaW1tYWJsZVdpZHRoKCksICFsaW5l
LT5oYXNDb250ZW50KCkgfSk7CisgICAgICAgIGF1dG8gYnJlYWtpbmdDb250ZXh0ID0gbGluZUJy
ZWFrZXIuYnJlYWtpbmdDb250ZXh0KCppbmxpbmVJdGVtLCBpbmxpbmVJdGVtLT53aWR0aCgpLCB7
IGF2YWlsYWJsZVdpZHRoLCBjdXJyZW50TG9naWNhbFJpZ2h0LCBsaW5lLT50cmFpbGluZ1RyaW1t
YWJsZVdpZHRoKCksICFsaW5lLT5oYXNDb250ZW50KCkgfSk7CiAgICAgICAgIGlmIChicmVha2lu
Z0NvbnRleHQuaXNBdEJyZWFraW5nT3Bwb3J0dW5pdHkpCiAgICAgICAgICAgICBjb21taXRQZW5k
aW5nQ29udGVudCgpOwogCkBAIC0yMDYsMTAgKzIzNSwxMiBAQCBMYXlvdXRVbml0IElubGluZUZv
cm1hdHRpbmdDb250ZXh0OjpMaW5lTGF5b3V0Ojpjb21wdXRlZEludHJpbnNpY1dpZHRoKExheW91
dFVuaQogICAgIExheW91dFVuaXQgbGluZUxvZ2ljYWxSaWdodDsKICAgICBMYXlvdXRVbml0IHRy
aW1tYWJsZVRyYWlsaW5nV2lkdGg7CiAKLSAgICBMaW5lQnJlYWtlciBsaW5lQnJlYWtlcihsYXlv
dXRTdGF0ZSgpKTsKKyAgICBMaW5lQnJlYWtlciBsaW5lQnJlYWtlcjsKICAgICBhdXRvJiBpbmxp
bmVDb250ZW50ID0gbV9mb3JtYXR0aW5nU3RhdGUuaW5saW5lSXRlbXMoKTsKICAgICBmb3IgKGF1
dG8mIGlubGluZUl0ZW0gOiBpbmxpbmVDb250ZW50KSB7Ci0gICAgICAgIGF1dG8gYnJlYWtpbmdD
b250ZXh0ID0gbGluZUJyZWFrZXIuYnJlYWtpbmdDb250ZXh0KCppbmxpbmVJdGVtLCB7IHdpZHRo
Q29uc3RyYWludCwgbGluZUxvZ2ljYWxSaWdodCwgIWxpbmVMb2dpY2FsUmlnaHQgfSk7CisgICAg
ICAgIGF1dG8gbG9naWNhbFdpZHRoID0gaW5saW5lSXRlbVdpZHRoKGxheW91dFN0YXRlKCksICpp
bmxpbmVJdGVtLCBsaW5lTG9naWNhbFJpZ2h0KTsKKyAgICAgICAgaW5saW5lSXRlbS0+c2V0V2lk
dGgobG9naWNhbFdpZHRoKTsKKyAgICAgICAgYXV0byBicmVha2luZ0NvbnRleHQgPSBsaW5lQnJl
YWtlci5icmVha2luZ0NvbnRleHQoKmlubGluZUl0ZW0sIGxvZ2ljYWxXaWR0aCwgeyB3aWR0aENv
bnN0cmFpbnQsIGxpbmVMb2dpY2FsUmlnaHQsICFsaW5lTG9naWNhbFJpZ2h0IH0pOwogICAgICAg
ICBpZiAoYnJlYWtpbmdDb250ZXh0LmJyZWFraW5nQmVoYXZpb3IgPT0gTGluZUJyZWFrZXI6OkJy
ZWFraW5nQmVoYXZpb3I6OldyYXApIHsKICAgICAgICAgICAgIG1heGltdW1MaW5lV2lkdGggPSBz
dGQ6Om1heChtYXhpbXVtTGluZVdpZHRoLCBsaW5lTG9naWNhbFJpZ2h0IC0gdHJpbW1hYmxlVHJh
aWxpbmdXaWR0aCk7CiAgICAgICAgICAgICB0cmltbWFibGVUcmFpbGluZ1dpZHRoID0geyB9OwpA
QCAtMjE5LDEwICsyNTAsMTAgQEAgTGF5b3V0VW5pdCBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6
TGluZUxheW91dDo6Y29tcHV0ZWRJbnRyaW5zaWNXaWR0aChMYXlvdXRVbmkKICAgICAgICAgICAg
IC8vIFNraXAgbGVhZGluZyB3aGl0ZXNwYWNlLgogICAgICAgICAgICAgaWYgKCFsaW5lTG9naWNh
bFJpZ2h0KQogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgdHJpbW1hYmxl
VHJhaWxpbmdXaWR0aCArPSBpbmxpbmVJdGVtLT53aWR0aCgpOworICAgICAgICAgICAgdHJpbW1h
YmxlVHJhaWxpbmdXaWR0aCArPSBsb2dpY2FsV2lkdGg7CiAgICAgICAgIH0gZWxzZQogICAgICAg
ICAgICAgdHJpbW1hYmxlVHJhaWxpbmdXaWR0aCA9IHsgfTsKLSAgICAgICAgbGluZUxvZ2ljYWxS
aWdodCArPSBpbmxpbmVJdGVtLT53aWR0aCgpOworICAgICAgICBsaW5lTG9naWNhbFJpZ2h0ICs9
IGxvZ2ljYWxXaWR0aDsKICAgICB9CiAgICAgcmV0dXJuIHN0ZDo6bWF4KG1heGltdW1MaW5lV2lk
dGgsIGxpbmVMb2dpY2FsUmlnaHQgLSB0cmltbWFibGVUcmFpbGluZ1dpZHRoKTsKIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUxpbmVC
cmVha2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGlu
ZUxpbmVCcmVha2VyLmNwcAppbmRleCA2MTY0NmI4YTE1NGJhZTk2OWQ4OTVmMDc2OGE4YjY3MTk3
YTQ1OGQwLi4yMzY0ZjZiNzNhMGY0MjljNDBmYjg5YzBkZDg3Nzc0OGIwYjVhMzQzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVMaW5lQnJl
YWtlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5s
aW5lTGluZUJyZWFrZXIuY3BwCkBAIC0zNCwxNiArMzQsMTAgQEAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIG5hbWVzcGFjZSBMYXlvdXQgewogCi1MaW5lQnJlYWtlcjo6TGluZUJyZWFrZXIoY29uc3Qg
TGF5b3V0U3RhdGUmIGxheW91dFN0YXRlKQotICAgIDogbV9sYXlvdXRTdGF0ZShsYXlvdXRTdGF0
ZSkKK0xpbmVCcmVha2VyOjpCcmVha2luZ0NvbnRleHQgTGluZUJyZWFrZXI6OmJyZWFraW5nQ29u
dGV4dChjb25zdCBJbmxpbmVJdGVtJiBpbmxpbmVJdGVtLCBMYXlvdXRVbml0IGxvZ2ljYWxXaWR0
aCwgY29uc3QgTGluZUNvbnRleHQmIGxpbmVDb250ZXh0KQogewotfQotCi1MaW5lQnJlYWtlcjo6
QnJlYWtpbmdDb250ZXh0IExpbmVCcmVha2VyOjpicmVha2luZ0NvbnRleHQoSW5saW5lSXRlbSYg
aW5saW5lSXRlbSwgTGluZUNvbnRleHQgbGluZUNvbnRleHQpCi17Ci0gICAgaW5saW5lSXRlbS5z
ZXRXaWR0aChydW5XaWR0aChpbmxpbmVJdGVtLCBsaW5lQ29udGV4dC5sb2dpY2FsTGVmdCkpOwog
ICAgIC8vIEZpcnN0IGNvbnRlbnQgYWx3YXlzIHN0YXlzIG9uIGxpbmUuCi0gICAgaWYgKGxpbmVD
b250ZXh0LmlzRW1wdHkgfHwgaW5saW5lSXRlbS53aWR0aCgpIDw9IGxpbmVDb250ZXh0LmF2YWls
YWJsZVdpZHRoKQorICAgIGlmIChsaW5lQ29udGV4dC5pc0VtcHR5IHx8IGxvZ2ljYWxXaWR0aCA8
PSBsaW5lQ29udGV4dC5hdmFpbGFibGVXaWR0aCkKICAgICAgICAgcmV0dXJuIHsgQnJlYWtpbmdC
ZWhhdmlvcjo6S2VlcCwgaXNBdEJyZWFraW5nT3Bwb3J0dW5pdHkoaW5saW5lSXRlbSkgfTsKIAog
ICAgIGlmIChpczxJbmxpbmVUZXh0SXRlbT4oaW5saW5lSXRlbSkpCkBAIC01MSw3ICs0NSw3IEBA
IExpbmVCcmVha2VyOjpCcmVha2luZ0NvbnRleHQgTGluZUJyZWFrZXI6OmJyZWFraW5nQ29udGV4
dChJbmxpbmVJdGVtJiBpbmxpbmVJdGVtCiAKICAgICAvLyBXcmFwIG5vbi10ZXh0IGJveGVzIHRv
IHRoZSBuZXh0IGxpbmUgdW5sZXNzIHdlIGNhbiB0cmltIHRyYWlsaW5nIHdoaXRlc3BhY2UuCiAg
ICAgYXV0byBhdmFpbGFibGVXaWR0aCA9IGxpbmVDb250ZXh0LmF2YWlsYWJsZVdpZHRoICsgbGlu
ZUNvbnRleHQudHJpbW1hYmxlV2lkdGg7Ci0gICAgaWYgKGlubGluZUl0ZW0ud2lkdGgoKSA8PSBh
dmFpbGFibGVXaWR0aCkKKyAgICBpZiAobG9naWNhbFdpZHRoIDw9IGF2YWlsYWJsZVdpZHRoKQog
ICAgICAgICByZXR1cm4geyBCcmVha2luZ0JlaGF2aW9yOjpLZWVwLCBpc0F0QnJlYWtpbmdPcHBv
cnR1bml0eShpbmxpbmVJdGVtKSB9OwogICAgIHJldHVybiB7IEJyZWFraW5nQmVoYXZpb3I6Oldy
YXAsIGlzQXRCcmVha2luZ09wcG9ydHVuaXR5KGlubGluZUl0ZW0pIH07CiB9CkBAIC04OCwzMCAr
ODIsNiBAQCBMaW5lQnJlYWtlcjo6QnJlYWtpbmdCZWhhdmlvciBMaW5lQnJlYWtlcjo6d29yZEJy
ZWFraW5nQmVoYXZpb3IoY29uc3QgSW5saW5lVGV4dAogICAgIHJldHVybiBsaW5lSXNFbXB0eSA/
IEJyZWFraW5nQmVoYXZpb3I6OktlZXAgOiBCcmVha2luZ0JlaGF2aW9yOjpXcmFwOwogfQogCi1M
YXlvdXRVbml0IExpbmVCcmVha2VyOjpydW5XaWR0aChjb25zdCBJbmxpbmVJdGVtJiBpbmxpbmVJ
dGVtLCBMYXlvdXRVbml0IGNvbnRlbnRMb2dpY2FsTGVmdCkgY29uc3QKLXsKLSAgICBpZiAoaW5s
aW5lSXRlbS5pc0xpbmVCcmVhaygpKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIGlmIChpczxJ
bmxpbmVUZXh0SXRlbT4oaW5saW5lSXRlbSkpCi0gICAgICAgIHJldHVybiB0ZXh0V2lkdGgoZG93
bmNhc3Q8SW5saW5lVGV4dEl0ZW0+KGlubGluZUl0ZW0pLCBjb250ZW50TG9naWNhbExlZnQpOwot
Ci0gICAgYXV0byYgbGF5b3V0Qm94ID0gaW5saW5lSXRlbS5sYXlvdXRCb3goKTsKLSAgICBBU1NF
UlQobV9sYXlvdXRTdGF0ZS5oYXNEaXNwbGF5Qm94KGxheW91dEJveCkpOwotICAgIGF1dG8mIGRp
c3BsYXlCb3ggPSBtX2xheW91dFN0YXRlLmRpc3BsYXlCb3hGb3JMYXlvdXRCb3gobGF5b3V0Qm94
KTsKLQotICAgIGlmIChpbmxpbmVJdGVtLmlzQ29udGFpbmVyU3RhcnQoKSkKLSAgICAgICAgcmV0
dXJuIGRpc3BsYXlCb3gubWFyZ2luU3RhcnQoKSArIGRpc3BsYXlCb3guYm9yZGVyTGVmdCgpICsg
ZGlzcGxheUJveC5wYWRkaW5nTGVmdCgpLnZhbHVlT3IoMCk7Ci0KLSAgICBpZiAoaW5saW5lSXRl
bS5pc0NvbnRhaW5lckVuZCgpKQotICAgICAgICByZXR1cm4gZGlzcGxheUJveC5tYXJnaW5FbmQo
KSArIGRpc3BsYXlCb3guYm9yZGVyUmlnaHQoKSArIGRpc3BsYXlCb3gucGFkZGluZ1JpZ2h0KCku
dmFsdWVPcigwKTsKLQotICAgIGlmIChpbmxpbmVJdGVtLmlzRmxvYXQoKSkKLSAgICAgICAgcmV0
dXJuIGRpc3BsYXlCb3gubWFyZ2luQm94V2lkdGgoKTsKLQotICAgIHJldHVybiBkaXNwbGF5Qm94
LndpZHRoKCk7Ci19Ci0KIGJvb2wgTGluZUJyZWFrZXI6OmlzQXRCcmVha2luZ09wcG9ydHVuaXR5
KGNvbnN0IElubGluZUl0ZW0mIGlubGluZUl0ZW0pCiB7CiAgICAgaWYgKGlzPElubGluZVRleHRJ
dGVtPihpbmxpbmVJdGVtKSkKQEAgLTExOSwxMSArODksNiBAQCBib29sIExpbmVCcmVha2VyOjpp
c0F0QnJlYWtpbmdPcHBvcnR1bml0eShjb25zdCBJbmxpbmVJdGVtJiBpbmxpbmVJdGVtKQogICAg
IHJldHVybiAhaW5saW5lSXRlbS5pc0Zsb2F0KCkgJiYgIWlubGluZUl0ZW0uaXNDb250YWluZXJT
dGFydCgpICYmICFpbmxpbmVJdGVtLmlzQ29udGFpbmVyRW5kKCk7CiB9CiAKLUxheW91dFVuaXQg
TGluZUJyZWFrZXI6OnRleHRXaWR0aChjb25zdCBJbmxpbmVUZXh0SXRlbSYgaW5saW5lVGV4dEl0
ZW0sIExheW91dFVuaXQgY29udGVudExvZ2ljYWxMZWZ0KSBjb25zdAotewotICAgIGF1dG8gZW5k
ID0gaW5saW5lVGV4dEl0ZW0uaXNDb2xsYXBzZWQoKSA/IGlubGluZVRleHRJdGVtLnN0YXJ0KCkg
KyAxIDogaW5saW5lVGV4dEl0ZW0uZW5kKCk7Ci0gICAgcmV0dXJuIFRleHRVdGlsOjp3aWR0aChk
b3duY2FzdDxJbmxpbmVCb3g+KGlubGluZVRleHRJdGVtLmxheW91dEJveCgpKSwgaW5saW5lVGV4
dEl0ZW0uc3RhcnQoKSwgZW5kLCBjb250ZW50TG9naWNhbExlZnQpOwotfQogfQogfQogI2VuZGlm
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9Jbmxp
bmVMaW5lQnJlYWtlci5oIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcv
SW5saW5lTGluZUJyZWFrZXIuaAppbmRleCAwNjUzMzAyNjNkZDdhNGM5NmIyZDk0M2Y3OGM0MTMy
YmM4NGM2NDM5Li4yN2VjMmI4ZjkzODk1OTAwOGNkYTViYjEzYTZlNGFmMWJiOTY5MjdiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVMaW5l
QnJlYWtlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lu
bGluZUxpbmVCcmVha2VyLmgKQEAgLTM0LDggKzM0LDYgQEAgY2xhc3MgSW5saW5lVGV4dEl0ZW07
CiAKIGNsYXNzIExpbmVCcmVha2VyIHsKIHB1YmxpYzoKLSAgICBMaW5lQnJlYWtlcihjb25zdCBM
YXlvdXRTdGF0ZSYpOwotCiAgICAgZW51bSBjbGFzcyBCcmVha2luZ0JlaGF2aW9yIHsgS2VlcCwg
QnJlYWssIFdyYXAgfTsKICAgICBzdHJ1Y3QgQnJlYWtpbmdDb250ZXh0IHsKICAgICAgICAgQnJl
YWtpbmdCZWhhdmlvciBicmVha2luZ0JlaGF2aW9yOwpAQCAtNDcsMTYgKzQ1LDEzIEBAIHB1Ymxp
YzoKICAgICAgICAgTGF5b3V0VW5pdCB0cmltbWFibGVXaWR0aDsKICAgICAgICAgYm9vbCBpc0Vt
cHR5IHsgZmFsc2UgfTsKICAgICB9OwotICAgIEJyZWFraW5nQ29udGV4dCBicmVha2luZ0NvbnRl
eHQoSW5saW5lSXRlbSYsIGNvbnN0IExpbmVDb250ZXh0KTsKKyAgICBCcmVha2luZ0NvbnRleHQg
YnJlYWtpbmdDb250ZXh0KGNvbnN0IElubGluZUl0ZW0mLCBMYXlvdXRVbml0IGxvZ2ljYWxXaWR0
aCwgY29uc3QgTGluZUNvbnRleHQmKTsKIAogcHJpdmF0ZToKIAogICAgIEJyZWFraW5nQmVoYXZp
b3Igd29yZEJyZWFraW5nQmVoYXZpb3IoY29uc3QgSW5saW5lVGV4dEl0ZW0mLCBib29sIGxpbmVJ
c0VtcHR5KSBjb25zdDsKICAgICBib29sIGlzQXRCcmVha2luZ09wcG9ydHVuaXR5KGNvbnN0IElu
bGluZUl0ZW0mKTsKLSAgICBMYXlvdXRVbml0IHJ1bldpZHRoKGNvbnN0IElubGluZUl0ZW0mLCBM
YXlvdXRVbml0IGNvbnRlbnRMb2dpY2FsTGVmdCkgY29uc3Q7Ci0gICAgTGF5b3V0VW5pdCB0ZXh0
V2lkdGgoY29uc3QgSW5saW5lVGV4dEl0ZW0mLCBMYXlvdXRVbml0IGNvbnRlbnRMb2dpY2FsTGVm
dCkgY29uc3Q7CiAKLSAgICBjb25zdCBMYXlvdXRTdGF0ZSYgbV9sYXlvdXRTdGF0ZTsKICAgICBi
b29sIG1faHlwaGVuYXRpb25Jc0Rpc2FibGVkIHsgdHJ1ZSB9OwogfTsKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>