<?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>80051</bug_id>
          
          <creation_ts>2012-03-01 14:33:00 -0800</creation_ts>
          <short_desc>Update usage of LayoutUnits in InlineBox and InlineFlowBox</short_desc>
          <delta_ts>2012-03-07 11:00:55 -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>Layout and Rendering</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>
          
          <blocked>60318</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Levi Weintraub">leviw</reporter>
          <assigned_to name="Levi Weintraub">leviw</assigned_to>
          <cc>darin</cc>
    
    <cc>eae</cc>
    
    <cc>eric</cc>
    
    <cc>jchaffraix</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>568931</commentid>
    <comment_count>0</comment_count>
    <who name="Levi Weintraub">leviw</who>
    <bug_when>2012-03-01 14:33:00 -0800</bug_when>
    <thetext>Updating InlineFlowBox to match LayoutUnit usage in the subpixellayout branch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570887</commentid>
    <comment_count>1</comment_count>
      <attachid>130168</attachid>
    <who name="Levi Weintraub">leviw</who>
    <bug_when>2012-03-05 11:43:05 -0800</bug_when>
    <thetext>Created attachment 130168
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>572297</commentid>
    <comment_count>2</comment_count>
      <attachid>130168</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-03-06 17:08:11 -0800</bug_when>
    <thetext>Comment on attachment 130168
Patch

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

Looks OK.

&gt; Source/WebCore/ChangeLog:8
&gt; +        Updating LayoutUnit vs Integer usage in InlineBox and InlineFlowBox.

Please explain why.   I guess you did some in the individual changes below...  You could even link to your fancy wiki. :)  &quot;Although the LineBox tree uses floats internally, borders/padding are caulated with LayoutUnits, like the rest of block layout in the rendering tree.  See the wiki *URL* for more details.&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>573015</commentid>
    <comment_count>3</comment_count>
    <who name="Levi Weintraub">leviw</who>
    <bug_when>2012-03-07 10:59:52 -0800</bug_when>
    <thetext>Committed r110070: &lt;http://trac.webkit.org/changeset/110070&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130168</attachid>
            <date>2012-03-05 11:43:05 -0800</date>
            <delta_ts>2012-03-07 11:00:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-80051-20120305114304.patch</filename>
            <type>text/plain</type>
            <size>10690</size>
            <attacher name="Levi Weintraub">leviw</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwOTc3MykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM3IEBACisyMDEyLTAzLTAxICBMZXZpIFdl
aW50cmF1YiAgPGxldml3QGNocm9taXVtLm9yZz4KKworICAgICAgICBVcGRhdGUgdXNhZ2Ugb2Yg
TGF5b3V0VW5pdHMgaW4gSW5saW5lQm94IGFuZCBJbmxpbmVGbG93Qm94CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MDA1MQorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0aW5nIExheW91dFVuaXQgdnMg
SW50ZWdlciB1c2FnZSBpbiBJbmxpbmVCb3ggYW5kIElubGluZUZsb3dCb3guCisKKyAgICAgICAg
Tm8gbmV3IHRlc3RzLiBObyBjaGFuZ2UgaW4gYmVoYXZpb3IuCisKKyAgICAgICAgKiByZW5kZXJp
bmcvSW5saW5lQm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklubGluZUJveDo6ZmxpcEZvcldy
aXRpbmdNb2RlKTogQ2hhbmdpbmcgb3ZlciB0byBMYXlvdXRVbml0cy4KKyAgICAgICAgKiByZW5k
ZXJpbmcvSW5saW5lQm94Lmg6CisgICAgICAgIChJbmxpbmVCb3gpOgorICAgICAgICAqIHJlbmRl
cmluZy9JbmxpbmVGbG93Qm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklubGluZUZsb3dCb3g6
OmdldEZsb3dTcGFjaW5nTG9naWNhbFdpZHRoKTogUmV0dXJuaW5nIGEgTGF5b3V0VW5pdAorICAg
ICAgICBpbnN0ZWFkIG9mIGFuIGludGVnZXIsIGFzIGl0IHVzZXMgbWFyZ2luIHdoaWNoIGlzIGEg
TGF5b3V0VW5pdC4KKyAgICAgICAgKFdlYkNvcmU6OklubGluZUZsb3dCb3g6OnBsYWNlQm94ZXNJ
bklubGluZURpcmVjdGlvbik6IFVzaW5nIGEgTGF5b3V0VW5pdCBmb3IKKyAgICAgICAgbWFyZ2lu
LgorICAgICAgICAoV2ViQ29yZTo6SW5saW5lRmxvd0JveDo6cGxhY2VCb3hlc0luQmxvY2tEaXJl
Y3Rpb24pOiBCdWlsZCBmaXhlcyBmb3Igd2hlbgorICAgICAgICBMYXlvdXRVbml0cyBhcmUgc3Vi
cGl4ZWwuCisgICAgICAgIChXZWJDb3JlOjpJbmxpbmVGbG93Qm94OjpwYWludEZpbGxMYXllcik6
IERpdHRvLgorICAgICAgICAqIHJlbmRlcmluZy9JbmxpbmVGbG93Qm94Lmg6CisgICAgICAgIChX
ZWJDb3JlOjpJbmxpbmVGbG93Qm94OjptYXJnaW5Cb3JkZXJQYWRkaW5nTG9naWNhbExlZnQpOiBS
ZXR1cm5pbmcgYSBMYXlvdXRVbml0CisgICAgICAgIGluc3RlYWQgb2YgYW4gaW50ZWdlciBzaW5j
ZSBtYXJnaW4gaXMgYSBMYXlvdXRVbml0LgorICAgICAgICAoV2ViQ29yZTo6SW5saW5lRmxvd0Jv
eDo6bWFyZ2luQm9yZGVyUGFkZGluZ0xvZ2ljYWxSaWdodCk6IERpdHRvLgorICAgICAgICAoSW5s
aW5lRmxvd0JveCk6CisgICAgICAgIChXZWJDb3JlOjpJbmxpbmVGbG93Qm94Ojpsb2dpY2FsTGVm
dExheW91dE92ZXJmbG93KTogQWRkaW5nIGEgc3RhdGljX2Nhc3QgdGhhdCdzCisgICAgICAgIHJl
ZHVuZGFudCBub3csIGJ1dCByZXF1aXJlZCB3aGVuIHdlIHN3aXRjaCB0byBzdWJwaXhlbCBMYXlv
dXRVbml0cy4KKyAgICAgICAgKFdlYkNvcmU6OklubGluZUZsb3dCb3g6OmxvZ2ljYWxSaWdodExh
eW91dE92ZXJmbG93KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbmxpbmVGbG93Qm94Ojps
b2dpY2FsTGVmdFZpc3VhbE92ZXJmbG93KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbmxp
bmVGbG93Qm94Ojpsb2dpY2FsUmlnaHRWaXN1YWxPdmVyZmxvdyk6IERpdHRvLgorCiAyMDEyLTAz
LTA1ICBBbGV4YW5kZXIgUGF2bG92ICA8YXBhdmxvdkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAg
V2ViIEluc3BlY3RvcjogQ1NTIGluYWN0aXZlIHByb3BlcnR5IGNoZWNrIHNob3VsZCBhY2NvdW50
IGZvciB2ZW5kb3IgcHJlZml4ZXMKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9Jbmxp
bmVCb3guY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVC
b3guY3BwCShyZXZpc2lvbiAxMDk3NzMpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSW5s
aW5lQm94LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzY1LDE0ICszNjUsMTQgQEAgRmxvYXRQb2lu
dCBJbmxpbmVCb3g6OmZsaXBGb3JXcml0aW5nTW9kZQogICAgIHJldHVybiByb290KCktPmJsb2Nr
KCktPmZsaXBGb3JXcml0aW5nTW9kZShwb2ludCk7CiB9CiAKLXZvaWQgSW5saW5lQm94OjpmbGlw
Rm9yV3JpdGluZ01vZGUoSW50UmVjdCYgcmVjdCkKK3ZvaWQgSW5saW5lQm94OjpmbGlwRm9yV3Jp
dGluZ01vZGUoTGF5b3V0UmVjdCYgcmVjdCkKIHsKICAgICBpZiAoIXJlbmRlcmVyKCktPnN0eWxl
KCktPmlzRmxpcHBlZEJsb2Nrc1dyaXRpbmdNb2RlKCkpCiAgICAgICAgIHJldHVybjsKICAgICBy
b290KCktPmJsb2NrKCktPmZsaXBGb3JXcml0aW5nTW9kZShyZWN0KTsKIH0KIAotSW50UG9pbnQg
SW5saW5lQm94OjpmbGlwRm9yV3JpdGluZ01vZGUoY29uc3QgSW50UG9pbnQmIHBvaW50KQorTGF5
b3V0UG9pbnQgSW5saW5lQm94OjpmbGlwRm9yV3JpdGluZ01vZGUoY29uc3QgTGF5b3V0UG9pbnQm
IHBvaW50KQogewogICAgIGlmICghcmVuZGVyZXIoKS0+c3R5bGUoKS0+aXNGbGlwcGVkQmxvY2tz
V3JpdGluZ01vZGUoKSkKICAgICAgICAgcmV0dXJuIHBvaW50OwpJbmRleDogU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL0lubGluZUJveC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9JbmxpbmVCb3guaAkocmV2aXNpb24gMTA5NzczKQorKysgU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL0lubGluZUJveC5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMTcsOCArMzE3LDggQEAg
cHVibGljOgogICAgIEZsb2F0UG9pbnQgbG9jYXRpb25JbmNsdWRpbmdGbGlwcGluZygpOwogICAg
IHZvaWQgZmxpcEZvcldyaXRpbmdNb2RlKEZsb2F0UmVjdCYpOwogICAgIEZsb2F0UG9pbnQgZmxp
cEZvcldyaXRpbmdNb2RlKGNvbnN0IEZsb2F0UG9pbnQmKTsKLSAgICB2b2lkIGZsaXBGb3JXcml0
aW5nTW9kZShJbnRSZWN0Jik7Ci0gICAgSW50UG9pbnQgZmxpcEZvcldyaXRpbmdNb2RlKGNvbnN0
IEludFBvaW50Jik7CisgICAgdm9pZCBmbGlwRm9yV3JpdGluZ01vZGUoTGF5b3V0UmVjdCYpOwor
ICAgIExheW91dFBvaW50IGZsaXBGb3JXcml0aW5nTW9kZShjb25zdCBMYXlvdXRQb2ludCYpOwog
CiAgICAgYm9vbCBrbm93blRvSGF2ZU5vT3ZlcmZsb3coKSBjb25zdCB7IHJldHVybiBtX2tub3du
VG9IYXZlTm9PdmVyZmxvdzsgfQogICAgIHZvaWQgY2xlYXJLbm93blRvSGF2ZU5vT3ZlcmZsb3co
KTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVGbG93Qm94LmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lRmxvd0JveC5jcHAJKHJl
dmlzaW9uIDEwOTc3MykKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVGbG93Qm94
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTYsOSArNTYsOSBAQCBJbmxpbmVGbG93Qm94Ojp+SW5s
aW5lRmxvd0JveCgpCiAKICNlbmRpZgogCi1pbnQgSW5saW5lRmxvd0JveDo6Z2V0Rmxvd1NwYWNp
bmdMb2dpY2FsV2lkdGgoKQorTGF5b3V0VW5pdCBJbmxpbmVGbG93Qm94OjpnZXRGbG93U3BhY2lu
Z0xvZ2ljYWxXaWR0aCgpCiB7Ci0gICAgaW50IHRvdFdpZHRoID0gbWFyZ2luQm9yZGVyUGFkZGlu
Z0xvZ2ljYWxMZWZ0KCkgKyBtYXJnaW5Cb3JkZXJQYWRkaW5nTG9naWNhbFJpZ2h0KCk7CisgICAg
TGF5b3V0VW5pdCB0b3RXaWR0aCA9IG1hcmdpbkJvcmRlclBhZGRpbmdMb2dpY2FsTGVmdCgpICsg
bWFyZ2luQm9yZGVyUGFkZGluZ0xvZ2ljYWxSaWdodCgpOwogICAgIGZvciAoSW5saW5lQm94KiBj
dXJyID0gZmlyc3RDaGlsZCgpOyBjdXJyOyBjdXJyID0gY3Vyci0+bmV4dE9uTGluZSgpKSB7CiAg
ICAgICAgIGlmIChjdXJyLT5pc0lubGluZUZsb3dCb3goKSkKICAgICAgICAgICAgIHRvdFdpZHRo
ICs9IHRvSW5saW5lRmxvd0JveChjdXJyKS0+Z2V0Rmxvd1NwYWNpbmdMb2dpY2FsV2lkdGgoKTsK
QEAgLTM5Nyw4ICszOTcsOCBAQCBmbG9hdCBJbmxpbmVGbG93Qm94OjpwbGFjZUJveGVzSW5Jbmxp
bmVECiAgICAgICAgICAgICB9IGVsc2UgaWYgKCFjdXJyLT5yZW5kZXJlcigpLT5pc0xpc3RNYXJr
ZXIoKSB8fCB0b1JlbmRlckxpc3RNYXJrZXIoY3Vyci0+cmVuZGVyZXIoKSktPmlzSW5zaWRlKCkp
IHsKICAgICAgICAgICAgICAgICAvLyBUaGUgYm94IGNhbiBoYXZlIGEgZGlmZmVyZW50IHdyaXRp
bmctbW9kZSB0aGFuIHRoZSBvdmVyYWxsIGxpbmUsIHNvIHRoaXMgaXMgYSBiaXQgY29tcGxpY2F0
ZWQuCiAgICAgICAgICAgICAgICAgLy8gSnVzdCBnZXQgYWxsIHRoZSBwaHlzaWNhbCBtYXJnaW4g
YW5kIG92ZXJmbG93IHZhbHVlcyBieSBoYW5kIGJhc2VkIG9mZiB8aXNWZXJ0aWNhbHwuCi0gICAg
ICAgICAgICAgICAgaW50IGxvZ2ljYWxMZWZ0TWFyZ2luID0gaXNIb3Jpem9udGFsKCkgPyBjdXJy
LT5ib3hNb2RlbE9iamVjdCgpLT5tYXJnaW5MZWZ0KCkgOiBjdXJyLT5ib3hNb2RlbE9iamVjdCgp
LT5tYXJnaW5Ub3AoKTsKLSAgICAgICAgICAgICAgICBpbnQgbG9naWNhbFJpZ2h0TWFyZ2luID0g
aXNIb3Jpem9udGFsKCkgPyBjdXJyLT5ib3hNb2RlbE9iamVjdCgpLT5tYXJnaW5SaWdodCgpIDog
Y3Vyci0+Ym94TW9kZWxPYmplY3QoKS0+bWFyZ2luQm90dG9tKCk7CisgICAgICAgICAgICAgICAg
TGF5b3V0VW5pdCBsb2dpY2FsTGVmdE1hcmdpbiA9IGlzSG9yaXpvbnRhbCgpID8gY3Vyci0+Ym94
TW9kZWxPYmplY3QoKS0+bWFyZ2luTGVmdCgpIDogY3Vyci0+Ym94TW9kZWxPYmplY3QoKS0+bWFy
Z2luVG9wKCk7CisgICAgICAgICAgICAgICAgTGF5b3V0VW5pdCBsb2dpY2FsUmlnaHRNYXJnaW4g
PSBpc0hvcml6b250YWwoKSA/IGN1cnItPmJveE1vZGVsT2JqZWN0KCktPm1hcmdpblJpZ2h0KCkg
OiBjdXJyLT5ib3hNb2RlbE9iamVjdCgpLT5tYXJnaW5Cb3R0b20oKTsKICAgICAgICAgICAgICAg
ICAKICAgICAgICAgICAgICAgICBsb2dpY2FsTGVmdCArPSBsb2dpY2FsTGVmdE1hcmdpbjsKICAg
ICAgICAgICAgICAgICBjdXJyLT5zZXRMb2dpY2FsTGVmdChsb2dpY2FsTGVmdCk7CkBAIC03MDAs
MTAgKzcwMCwxMCBAQCB2b2lkIElubGluZUZsb3dCb3g6OnBsYWNlQm94ZXNJbkJsb2NrRGlyCiAg
ICAgICAgICAgICAgICAgbGluZVRvcCA9IHBpeGVsU25hcHBlZExvZ2ljYWxUb3AoKTsKICAgICAg
ICAgICAgICAgICBsaW5lVG9wSW5jbHVkaW5nTWFyZ2lucyA9IGxpbmVUb3A7CiAgICAgICAgICAg
ICB9IGVsc2UgewotICAgICAgICAgICAgICAgIGxpbmVUb3AgPSBtaW4obGluZVRvcCwgcGl4ZWxT
bmFwcGVkTG9naWNhbFRvcCgpKTsKKyAgICAgICAgICAgICAgICBsaW5lVG9wID0gbWluPExheW91
dFVuaXQ+KGxpbmVUb3AsIHBpeGVsU25hcHBlZExvZ2ljYWxUb3AoKSk7CiAgICAgICAgICAgICAg
ICAgbGluZVRvcEluY2x1ZGluZ01hcmdpbnMgPSBtaW4obGluZVRvcCwgbGluZVRvcEluY2x1ZGlu
Z01hcmdpbnMpOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgbGluZUJvdHRvbSA9IG1heChs
aW5lQm90dG9tLCBwaXhlbFNuYXBwZWRMb2dpY2FsQm90dG9tKCkpOworICAgICAgICAgICAgbGlu
ZUJvdHRvbSA9IG1heDxMYXlvdXRVbml0PihsaW5lQm90dG9tLCBwaXhlbFNuYXBwZWRMb2dpY2Fs
Qm90dG9tKCkpOwogICAgICAgICAgICAgbGluZUJvdHRvbUluY2x1ZGluZ01hcmdpbnMgPSBtYXgo
bGluZUJvdHRvbSwgbGluZUJvdHRvbUluY2x1ZGluZ01hcmdpbnMpOwogICAgICAgICB9CiAgICAg
ICAgIApAQCAtMTExOCw4ICsxMTE4LDggQEAgdm9pZCBJbmxpbmVGbG93Qm94OjpwYWludEZpbGxM
YXllcihjb25zdAogICAgICAgICB9CiAgICAgICAgIExheW91dFVuaXQgc3RyaXBYID0gcmVjdC54
KCkgLSAoaXNIb3Jpem9udGFsKCkgPyBsb2dpY2FsT2Zmc2V0T25MaW5lIDogemVyb0xheW91dFVu
aXQpOwogICAgICAgICBMYXlvdXRVbml0IHN0cmlwWSA9IHJlY3QueSgpIC0gKGlzSG9yaXpvbnRh
bCgpID8gemVyb0xheW91dFVuaXQgOiBsb2dpY2FsT2Zmc2V0T25MaW5lKTsKLSAgICAgICAgTGF5
b3V0VW5pdCBzdHJpcFdpZHRoID0gaXNIb3Jpem9udGFsKCkgPyB0b3RhbExvZ2ljYWxXaWR0aCA6
IHdpZHRoKCk7Ci0gICAgICAgIExheW91dFVuaXQgc3RyaXBIZWlnaHQgPSBpc0hvcml6b250YWwo
KSA/IGhlaWdodCgpIDogdG90YWxMb2dpY2FsV2lkdGg7CisgICAgICAgIExheW91dFVuaXQgc3Ry
aXBXaWR0aCA9IGlzSG9yaXpvbnRhbCgpID8gdG90YWxMb2dpY2FsV2lkdGggOiBzdGF0aWNfY2Fz
dDxMYXlvdXRVbml0Pih3aWR0aCgpKTsKKyAgICAgICAgTGF5b3V0VW5pdCBzdHJpcEhlaWdodCA9
IGlzSG9yaXpvbnRhbCgpID8gc3RhdGljX2Nhc3Q8TGF5b3V0VW5pdD4oaGVpZ2h0KCkpIDogdG90
YWxMb2dpY2FsV2lkdGg7CiAKICAgICAgICAgR3JhcGhpY3NDb250ZXh0U3RhdGVTYXZlciBzdGF0
ZVNhdmVyKCpwYWludEluZm8uY29udGV4dCk7CiAgICAgICAgIHBhaW50SW5mby5jb250ZXh0LT5j
bGlwKExheW91dFJlY3QocmVjdC54KCksIHJlY3QueSgpLCB3aWR0aCgpLCBoZWlnaHQoKSkpOwpJ
bmRleDogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZUZsb3dCb3guaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lRmxvd0JveC5oCShyZXZpc2lvbiAx
MDk3NzMpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lRmxvd0JveC5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMTksOCArMTE5LDggQEAgcHVibGljOgogICAgIHZpcnR1YWwgUmVuZGVy
TGluZUJveExpc3QqIHJlbmRlcmVyTGluZUJveGVzKCkgY29uc3Q7CiAKICAgICAvLyBsb2dpY2Fs
TGVmdCA9IGxlZnQgaW4gYSBob3Jpem9udGFsIGxpbmUgYW5kIHRvcCBpbiBhIHZlcnRpY2FsIGxp
bmUuCi0gICAgaW50IG1hcmdpbkJvcmRlclBhZGRpbmdMb2dpY2FsTGVmdCgpIGNvbnN0IHsgcmV0
dXJuIG1hcmdpbkxvZ2ljYWxMZWZ0KCkgKyBib3JkZXJMb2dpY2FsTGVmdCgpICsgcGFkZGluZ0xv
Z2ljYWxMZWZ0KCk7IH0KLSAgICBpbnQgbWFyZ2luQm9yZGVyUGFkZGluZ0xvZ2ljYWxSaWdodCgp
IGNvbnN0IHsgcmV0dXJuIG1hcmdpbkxvZ2ljYWxSaWdodCgpICsgYm9yZGVyTG9naWNhbFJpZ2h0
KCkgKyBwYWRkaW5nTG9naWNhbFJpZ2h0KCk7IH0KKyAgICBMYXlvdXRVbml0IG1hcmdpbkJvcmRl
clBhZGRpbmdMb2dpY2FsTGVmdCgpIGNvbnN0IHsgcmV0dXJuIG1hcmdpbkxvZ2ljYWxMZWZ0KCkg
KyBib3JkZXJMb2dpY2FsTGVmdCgpICsgcGFkZGluZ0xvZ2ljYWxMZWZ0KCk7IH0KKyAgICBMYXlv
dXRVbml0IG1hcmdpbkJvcmRlclBhZGRpbmdMb2dpY2FsUmlnaHQoKSBjb25zdCB7IHJldHVybiBt
YXJnaW5Mb2dpY2FsUmlnaHQoKSArIGJvcmRlckxvZ2ljYWxSaWdodCgpICsgcGFkZGluZ0xvZ2lj
YWxSaWdodCgpOyB9CiAgICAgTGF5b3V0VW5pdCBtYXJnaW5Mb2dpY2FsTGVmdCgpIGNvbnN0CiAg
ICAgewogICAgICAgICBpZiAoIWluY2x1ZGVMb2dpY2FsTGVmdEVkZ2UoKSkKQEAgLTE2OCw3ICsx
NjgsNyBAQCBwdWJsaWM6CiAKICAgICAvLyBIZWxwZXIgZnVuY3Rpb25zIHVzZWQgZHVyaW5nIGxp
bmUgY29uc3RydWN0aW9uIGFuZCBwbGFjZW1lbnQuCiAgICAgdm9pZCBkZXRlcm1pbmVTcGFjaW5n
Rm9yRmxvd0JveGVzKGJvb2wgbGFzdExpbmUsIGJvb2wgaXNMb2dpY2FsbHlMYXN0UnVuV3JhcHBl
ZCwgUmVuZGVyT2JqZWN0KiBsb2dpY2FsbHlMYXN0UnVuUmVuZGVyZXIpOwotICAgIGludCBnZXRG
bG93U3BhY2luZ0xvZ2ljYWxXaWR0aCgpOworICAgIExheW91dFVuaXQgZ2V0Rmxvd1NwYWNpbmdM
b2dpY2FsV2lkdGgoKTsKICAgICBmbG9hdCBwbGFjZUJveGVzSW5JbmxpbmVEaXJlY3Rpb24oZmxv
YXQgbG9naWNhbExlZnQsIGJvb2wmIG5lZWRzV29yZFNwYWNpbmcsIEdseXBoT3ZlcmZsb3dBbmRG
YWxsYmFja0ZvbnRzTWFwJik7CiAgICAgdm9pZCBjb21wdXRlTG9naWNhbEJveEhlaWdodHMoUm9v
dElubGluZUJveCosIExheW91dFVuaXQmIG1heFBvc2l0aW9uVG9wLCBMYXlvdXRVbml0JiBtYXhQ
b3NpdGlvbkJvdHRvbSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMYXlvdXRV
bml0JiBtYXhBc2NlbnQsIExheW91dFVuaXQmIG1heERlc2NlbnQsIGJvb2wmIHNldE1heEFzY2Vu
dCwgYm9vbCYgc2V0TWF4RGVzY2VudCwKQEAgLTIwNyw4ICsyMDcsOCBAQCBwdWJsaWM6CiAgICAg
eyAKICAgICAgICAgcmV0dXJuIG1fb3ZlcmZsb3cgPyBtX292ZXJmbG93LT5sYXlvdXRPdmVyZmxv
d1JlY3QoKSA6IGVuY2xvc2luZ0xheW91dFJlY3QoZnJhbWVSZWN0SW5jbHVkaW5nTGluZUhlaWdo
dChsaW5lVG9wLCBsaW5lQm90dG9tKSk7CiAgICAgfQotICAgIExheW91dFVuaXQgbG9naWNhbExl
ZnRMYXlvdXRPdmVyZmxvdygpIGNvbnN0IHsgcmV0dXJuIG1fb3ZlcmZsb3cgPyAoaXNIb3Jpem9u
dGFsKCkgPyBtX292ZXJmbG93LT5taW5YTGF5b3V0T3ZlcmZsb3coKSA6IG1fb3ZlcmZsb3ctPm1p
bllMYXlvdXRPdmVyZmxvdygpKSA6IGxvZ2ljYWxMZWZ0KCk7IH0KLSAgICBMYXlvdXRVbml0IGxv
Z2ljYWxSaWdodExheW91dE92ZXJmbG93KCkgY29uc3QgeyByZXR1cm4gbV9vdmVyZmxvdyA/IChp
c0hvcml6b250YWwoKSA/IG1fb3ZlcmZsb3ctPm1heFhMYXlvdXRPdmVyZmxvdygpIDogbV9vdmVy
Zmxvdy0+bWF4WUxheW91dE92ZXJmbG93KCkpIDogY2VpbGYobG9naWNhbFJpZ2h0KCkpOyB9Cisg
ICAgTGF5b3V0VW5pdCBsb2dpY2FsTGVmdExheW91dE92ZXJmbG93KCkgY29uc3QgeyByZXR1cm4g
bV9vdmVyZmxvdyA/IChpc0hvcml6b250YWwoKSA/IG1fb3ZlcmZsb3ctPm1pblhMYXlvdXRPdmVy
ZmxvdygpIDogbV9vdmVyZmxvdy0+bWluWUxheW91dE92ZXJmbG93KCkpIDogc3RhdGljX2Nhc3Q8
TGF5b3V0VW5pdD4obG9naWNhbExlZnQoKSk7IH0KKyAgICBMYXlvdXRVbml0IGxvZ2ljYWxSaWdo
dExheW91dE92ZXJmbG93KCkgY29uc3QgeyByZXR1cm4gbV9vdmVyZmxvdyA/IChpc0hvcml6b250
YWwoKSA/IG1fb3ZlcmZsb3ctPm1heFhMYXlvdXRPdmVyZmxvdygpIDogbV9vdmVyZmxvdy0+bWF4
WUxheW91dE92ZXJmbG93KCkpIDogc3RhdGljX2Nhc3Q8TGF5b3V0VW5pdD4oY2VpbGYobG9naWNh
bFJpZ2h0KCkpKTsgfQogICAgIExheW91dFVuaXQgbG9naWNhbFRvcExheW91dE92ZXJmbG93KExh
eW91dFVuaXQgbGluZVRvcCkgY29uc3QKICAgICB7CiAgICAgICAgIGlmIChtX292ZXJmbG93KQpA
QCAtMjMzLDggKzIzMyw4IEBAIHB1YmxpYzoKICAgICB7IAogICAgICAgICByZXR1cm4gbV9vdmVy
ZmxvdyA/IG1fb3ZlcmZsb3ctPnZpc3VhbE92ZXJmbG93UmVjdCgpIDogZW5jbG9zaW5nTGF5b3V0
UmVjdChmcmFtZVJlY3RJbmNsdWRpbmdMaW5lSGVpZ2h0KGxpbmVUb3AsIGxpbmVCb3R0b20pKTsK
ICAgICB9Ci0gICAgTGF5b3V0VW5pdCBsb2dpY2FsTGVmdFZpc3VhbE92ZXJmbG93KCkgY29uc3Qg
eyByZXR1cm4gbV9vdmVyZmxvdyA/IChpc0hvcml6b250YWwoKSA/IG1fb3ZlcmZsb3ctPm1pblhW
aXN1YWxPdmVyZmxvdygpIDogbV9vdmVyZmxvdy0+bWluWVZpc3VhbE92ZXJmbG93KCkpIDogbG9n
aWNhbExlZnQoKTsgfQotICAgIExheW91dFVuaXQgbG9naWNhbFJpZ2h0VmlzdWFsT3ZlcmZsb3co
KSBjb25zdCB7IHJldHVybiBtX292ZXJmbG93ID8gKGlzSG9yaXpvbnRhbCgpID8gbV9vdmVyZmxv
dy0+bWF4WFZpc3VhbE92ZXJmbG93KCkgOiBtX292ZXJmbG93LT5tYXhZVmlzdWFsT3ZlcmZsb3co
KSkgOiBjZWlsZihsb2dpY2FsUmlnaHQoKSk7IH0KKyAgICBMYXlvdXRVbml0IGxvZ2ljYWxMZWZ0
VmlzdWFsT3ZlcmZsb3coKSBjb25zdCB7IHJldHVybiBtX292ZXJmbG93ID8gKGlzSG9yaXpvbnRh
bCgpID8gbV9vdmVyZmxvdy0+bWluWFZpc3VhbE92ZXJmbG93KCkgOiBtX292ZXJmbG93LT5taW5Z
VmlzdWFsT3ZlcmZsb3coKSkgOiBzdGF0aWNfY2FzdDxMYXlvdXRVbml0Pihsb2dpY2FsTGVmdCgp
KTsgfQorICAgIExheW91dFVuaXQgbG9naWNhbFJpZ2h0VmlzdWFsT3ZlcmZsb3coKSBjb25zdCB7
IHJldHVybiBtX292ZXJmbG93ID8gKGlzSG9yaXpvbnRhbCgpID8gbV9vdmVyZmxvdy0+bWF4WFZp
c3VhbE92ZXJmbG93KCkgOiBtX292ZXJmbG93LT5tYXhZVmlzdWFsT3ZlcmZsb3coKSkgOiBzdGF0
aWNfY2FzdDxMYXlvdXRVbml0PihjZWlsZihsb2dpY2FsUmlnaHQoKSkpOyB9CiAgICAgTGF5b3V0
VW5pdCBsb2dpY2FsVG9wVmlzdWFsT3ZlcmZsb3coTGF5b3V0VW5pdCBsaW5lVG9wKSBjb25zdAog
ICAgIHsKICAgICAgICAgaWYgKG1fb3ZlcmZsb3cpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>