<?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>158670</bug_id>
          
          <creation_ts>2016-06-11 21:36:19 -0700</creation_ts>
          <short_desc>Cleanup RenderBlock::removePositionedObjects</short_desc>
          <delta_ts>2016-06-12 13:55:41 -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></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>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1201679</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2016-06-11 21:36:19 -0700</bug_when>
    <thetext>Modernize it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201680</commentid>
    <comment_count>1</comment_count>
      <attachid>281118</attachid>
    <who name="alan">zalan</who>
    <bug_when>2016-06-11 21:39:13 -0700</bug_when>
    <thetext>Created attachment 281118
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201702</commentid>
    <comment_count>2</comment_count>
      <attachid>281118</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2016-06-12 06:36:05 -0700</bug_when>
    <thetext>Comment on attachment 281118
Patch

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

&gt; Source/WebCore/rendering/RenderBlock.cpp:2208
&gt; +        // It is parent blocks job to add positioned child to positioned objects list of its containing block

&quot;It is the parent block&apos;s job to add the positioned child lot the positioned objects list of its&quot;

&gt; Source/WebCore/rendering/RenderBlock.cpp:2209
&gt; +        // Parent layout needs to be invalidated to ensure this happens.

&quot;The parent&apos;s layout needs&quot;

&gt; Source/WebCore/rendering/RenderBlock.cpp:2211
&gt; +        for (;parent &amp;&amp; !parent-&gt;isRenderBlock(); parent = parent-&gt;parent()) { }

I don&apos;t find this more readable than the while ().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201715</commentid>
    <comment_count>3</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2016-06-12 13:31:59 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; Comment on attachment 281118 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=281118&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/rendering/RenderBlock.cpp:2208
&gt; &gt; +        // It is parent blocks job to add positioned child to positioned objects list of its containing block
&gt; 
&gt; &quot;It is the parent block&apos;s job to add the positioned child lot the positioned
&gt; objects list of its&quot;
&gt; 
&gt; &gt; Source/WebCore/rendering/RenderBlock.cpp:2209
&gt; &gt; +        // Parent layout needs to be invalidated to ensure this happens.
&gt; 
&gt; &quot;The parent&apos;s layout needs&quot;
Happens when you just copy&amp;paste the rest of the code.

&gt; 
&gt; &gt; Source/WebCore/rendering/RenderBlock.cpp:2211
&gt; &gt; +        for (;parent &amp;&amp; !parent-&gt;isRenderBlock(); parent = parent-&gt;parent()) { }
&gt; 
&gt; I don&apos;t find this more readable than the while ().
I started using it after someone pointed it out in one of code reviews. I don&apos;t have a strong preference on this though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201716</commentid>
    <comment_count>4</comment_count>
      <attachid>281128</attachid>
    <who name="alan">zalan</who>
    <bug_when>2016-06-12 13:43:20 -0700</bug_when>
    <thetext>Created attachment 281128
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201719</commentid>
    <comment_count>5</comment_count>
      <attachid>281128</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-12 13:55:37 -0700</bug_when>
    <thetext>Comment on attachment 281128
Patch

Clearing flags on attachment: 281128

Committed r201985: &lt;http://trac.webkit.org/changeset/201985&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201720</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-12 13:55:41 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>281118</attachid>
            <date>2016-06-11 21:39:13 -0700</date>
            <delta_ts>2016-06-12 13:43:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-158670-20160611214045.patch</filename>
            <type>text/plain</type>
            <size>5045</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAxOTI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzI2ODFiYTlmNGRhNzk4
OTUzNzhiYTI3OTZiYmFlZjc0YTlmMjJkYy4uMTBkYTM5OWI0ZjNmOWU3NzI3ZjU3NWZkMzdkOTU3
YzZkYmMwYWE1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE2LTA2LTExICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgQ2xlYW51cCBSZW5kZXJCbG9j
azo6cmVtb3ZlUG9zaXRpb25lZE9iamVjdHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE1ODY3MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIE5vIGNoYW5nZSBpbiBmdW5jdGlvbmFsaXR5LgorCisgICAgICAg
ICogcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJs
b2NrOjppbnNlcnRQb3NpdGlvbmVkT2JqZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJs
b2NrOjpyZW1vdmVQb3NpdGlvbmVkT2JqZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJs
b2NrOjpyZW1vdmVQb3NpdGlvbmVkT2JqZWN0cyk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRl
ckJsb2NrLmg6CisKIDIwMTYtMDYtMTAgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4K
IAogICAgICAgICBNZXNzYWdlUG9ydCBzaG91bGQgYmUgZXhwb3NlZCB0byB3b3JrZXJzCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcAppbmRleCA0ZDhlMWMzMGY0YjU1ZTg4
NmJmYTExZjVmYTIyMjQ5YjlkZjRlYjZmLi4xZGE3MDY2MDhhZmE0M2YwOWUzYTQ2NWZiMGZhZGU4
MDEzNTU1NWE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxv
Y2suY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAKQEAg
LTIxNzcsNDkgKzIxNzcsNDMgQEAgVHJhY2tlZFJlbmRlcmVyTGlzdEhhc2hTZXQqIFJlbmRlckJs
b2NrOjpwb3NpdGlvbmVkT2JqZWN0cygpIGNvbnN0CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAK
LXZvaWQgUmVuZGVyQmxvY2s6Omluc2VydFBvc2l0aW9uZWRPYmplY3QoUmVuZGVyQm94JiBvKQor
dm9pZCBSZW5kZXJCbG9jazo6aW5zZXJ0UG9zaXRpb25lZE9iamVjdChSZW5kZXJCb3gmIHBvc2l0
aW9uZWQpCiB7CiAgICAgQVNTRVJUKCFpc0Fub255bW91c0Jsb2NrKCkpOwogCi0gICAgaWYgKG8u
aXNSZW5kZXJGbG93VGhyZWFkKCkpCisgICAgaWYgKHBvc2l0aW9uZWQuaXNSZW5kZXJGbG93VGhy
ZWFkKCkpCiAgICAgICAgIHJldHVybjsKICAgICAKLSAgICBpbnNlcnRJbnRvVHJhY2tlZFJlbmRl
cmVyTWFwcyhvLCBnUG9zaXRpb25lZERlc2NlbmRhbnRzTWFwLCBnUG9zaXRpb25lZENvbnRhaW5l
ck1hcCwgaXNSZW5kZXJWaWV3KCkpOworICAgIGluc2VydEludG9UcmFja2VkUmVuZGVyZXJNYXBz
KHBvc2l0aW9uZWQsIGdQb3NpdGlvbmVkRGVzY2VuZGFudHNNYXAsIGdQb3NpdGlvbmVkQ29udGFp
bmVyTWFwLCBpc1JlbmRlclZpZXcoKSk7CiB9CiAKLXZvaWQgUmVuZGVyQmxvY2s6OnJlbW92ZVBv
c2l0aW9uZWRPYmplY3QoUmVuZGVyQm94JiBvKQordm9pZCBSZW5kZXJCbG9jazo6cmVtb3ZlUG9z
aXRpb25lZE9iamVjdChSZW5kZXJCb3gmIHJlbmRlcmVyVG9SZW1vdmUpCiB7Ci0gICAgcmVtb3Zl
RnJvbVRyYWNrZWRSZW5kZXJlck1hcHMobywgZ1Bvc2l0aW9uZWREZXNjZW5kYW50c01hcCwgZ1Bv
c2l0aW9uZWRDb250YWluZXJNYXApOworICAgIHJlbW92ZUZyb21UcmFja2VkUmVuZGVyZXJNYXBz
KHJlbmRlcmVyVG9SZW1vdmUsIGdQb3NpdGlvbmVkRGVzY2VuZGFudHNNYXAsIGdQb3NpdGlvbmVk
Q29udGFpbmVyTWFwKTsKIH0KIAotdm9pZCBSZW5kZXJCbG9jazo6cmVtb3ZlUG9zaXRpb25lZE9i
amVjdHMoUmVuZGVyQmxvY2sqIG8sIENvbnRhaW5pbmdCbG9ja1N0YXRlIGNvbnRhaW5pbmdCbG9j
a1N0YXRlKQordm9pZCBSZW5kZXJCbG9jazo6cmVtb3ZlUG9zaXRpb25lZE9iamVjdHMoY29uc3Qg
UmVuZGVyQmxvY2sqIG5ld0NvbnRhaW5pbmdCbG9ja0NhbmRpZGF0ZSwgQ29udGFpbmluZ0Jsb2Nr
U3RhdGUgY29udGFpbmluZ0Jsb2NrU3RhdGUpCiB7Ci0gICAgVHJhY2tlZFJlbmRlcmVyTGlzdEhh
c2hTZXQqIHBvc2l0aW9uZWREZXNjZW5kYW50cyA9IHBvc2l0aW9uZWRPYmplY3RzKCk7CisgICAg
YXV0byogcG9zaXRpb25lZERlc2NlbmRhbnRzID0gcG9zaXRpb25lZE9iamVjdHMoKTsKICAgICBp
ZiAoIXBvc2l0aW9uZWREZXNjZW5kYW50cykKICAgICAgICAgcmV0dXJuOwogICAgIAotICAgIFZl
Y3RvcjxSZW5kZXJCb3gqLCAxNj4gZGVhZE9iamVjdHM7Ci0KLSAgICBmb3IgKGF1dG8gaXQgPSBw
b3NpdGlvbmVkRGVzY2VuZGFudHMtPmJlZ2luKCksIGVuZCA9IHBvc2l0aW9uZWREZXNjZW5kYW50
cy0+ZW5kKCk7IGl0ICE9IGVuZDsgKytpdCkgewotICAgICAgICBSZW5kZXJCb3gqIHIgPSAqaXQ7
Ci0gICAgICAgIGlmICghbyB8fCByLT5pc0Rlc2NlbmRhbnRPZihvKSkgewotICAgICAgICAgICAg
aWYgKGNvbnRhaW5pbmdCbG9ja1N0YXRlID09IE5ld0NvbnRhaW5pbmdCbG9jaykKLSAgICAgICAg
ICAgICAgICByLT5zZXRDaGlsZE5lZWRzTGF5b3V0KE1hcmtPbmx5VGhpcyk7Ci0gICAgICAgICAg
ICAKLSAgICAgICAgICAgIC8vIEl0IGlzIHBhcmVudCBibG9ja3Mgam9iIHRvIGFkZCBwb3NpdGlv
bmVkIGNoaWxkIHRvIHBvc2l0aW9uZWQgb2JqZWN0cyBsaXN0IG9mIGl0cyBjb250YWluaW5nIGJs
b2NrCi0gICAgICAgICAgICAvLyBQYXJlbnQgbGF5b3V0IG5lZWRzIHRvIGJlIGludmFsaWRhdGVk
IHRvIGVuc3VyZSB0aGlzIGhhcHBlbnMuCi0gICAgICAgICAgICBSZW5kZXJFbGVtZW50KiBwID0g
ci0+cGFyZW50KCk7Ci0gICAgICAgICAgICB3aGlsZSAocCAmJiAhcC0+aXNSZW5kZXJCbG9jaygp
KQotICAgICAgICAgICAgICAgIHAgPSBwLT5wYXJlbnQoKTsKLSAgICAgICAgICAgIGlmIChwKQot
ICAgICAgICAgICAgICAgIHAtPnNldENoaWxkTmVlZHNMYXlvdXQoKTsKLSAgICAgICAgICAgIAot
ICAgICAgICAgICAgZGVhZE9iamVjdHMuYXBwZW5kKHIpOwotICAgICAgICB9Ci0gICAgfQotICAg
IAotICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBkZWFkT2JqZWN0cy5zaXplKCk7IGkrKykK
LSAgICAgICAgcmVtb3ZlUG9zaXRpb25lZE9iamVjdCgqZGVhZE9iamVjdHMuYXQoaSkpOworICAg
IFZlY3RvcjxSZW5kZXJCb3gqLCAxNj4gcmVuZGVyZXJzVG9SZW1vdmU7CisgICAgZm9yIChhdXRv
KiByZW5kZXJlciA6ICpwb3NpdGlvbmVkRGVzY2VuZGFudHMpIHsKKyAgICAgICAgaWYgKG5ld0Nv
bnRhaW5pbmdCbG9ja0NhbmRpZGF0ZSAmJiAhcmVuZGVyZXItPmlzRGVzY2VuZGFudE9mKG5ld0Nv
bnRhaW5pbmdCbG9ja0NhbmRpZGF0ZSkpCisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAg
cmVuZGVyZXJzVG9SZW1vdmUuYXBwZW5kKHJlbmRlcmVyKTsKKyAgICAgICAgaWYgKGNvbnRhaW5p
bmdCbG9ja1N0YXRlID09IE5ld0NvbnRhaW5pbmdCbG9jaykKKyAgICAgICAgICAgIHJlbmRlcmVy
LT5zZXRDaGlsZE5lZWRzTGF5b3V0KE1hcmtPbmx5VGhpcyk7CisgICAgICAgIC8vIEl0IGlzIHBh
cmVudCBibG9ja3Mgam9iIHRvIGFkZCBwb3NpdGlvbmVkIGNoaWxkIHRvIHBvc2l0aW9uZWQgb2Jq
ZWN0cyBsaXN0IG9mIGl0cyBjb250YWluaW5nIGJsb2NrCisgICAgICAgIC8vIFBhcmVudCBsYXlv
dXQgbmVlZHMgdG8gYmUgaW52YWxpZGF0ZWQgdG8gZW5zdXJlIHRoaXMgaGFwcGVucy4KKyAgICAg
ICAgYXV0byogcGFyZW50ID0gcmVuZGVyZXItPnBhcmVudCgpOworICAgICAgICBmb3IgKDtwYXJl
bnQgJiYgIXBhcmVudC0+aXNSZW5kZXJCbG9jaygpOyBwYXJlbnQgPSBwYXJlbnQtPnBhcmVudCgp
KSB7IH0KKyAgICAgICAgaWYgKHBhcmVudCkKKyAgICAgICAgICAgIHBhcmVudC0+c2V0Q2hpbGRO
ZWVkc0xheW91dCgpOworICAgIH0KKyAgICBmb3IgKGF1dG8qIHJlbmRlcmVyIDogcmVuZGVyZXJz
VG9SZW1vdmUpCisgICAgICAgIHJlbW92ZVBvc2l0aW9uZWRPYmplY3QoKnJlbmRlcmVyKTsKIH0K
IAogdm9pZCBSZW5kZXJCbG9jazo6YWRkUGVyY2VudEhlaWdodERlc2NlbmRhbnQoUmVuZGVyQm94
JiBkZXNjZW5kYW50KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckJsb2NrLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suaAppbmRleCBk
OGFhMjlhOGEwNWIzMjJhZGM3MmRmMzYwZjlkYjE3ZWE0MjI5NzA2Li45YjkwMDgwZWJhYjk0ZmU1
NDU2ZGZjZjM4MzJlZjY5NzhhY2QwMDM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyQmxvY2suaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
QmxvY2suaApAQCAtODQsNyArODQsNyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIGluc2VydFBvc2l0
aW9uZWRPYmplY3QoUmVuZGVyQm94Jik7CiAgICAgc3RhdGljIHZvaWQgcmVtb3ZlUG9zaXRpb25l
ZE9iamVjdChSZW5kZXJCb3gmKTsKLSAgICB2b2lkIHJlbW92ZVBvc2l0aW9uZWRPYmplY3RzKFJl
bmRlckJsb2NrKiwgQ29udGFpbmluZ0Jsb2NrU3RhdGUgPSBTYW1lQ29udGFpbmluZ0Jsb2NrKTsK
KyAgICB2b2lkIHJlbW92ZVBvc2l0aW9uZWRPYmplY3RzKGNvbnN0IFJlbmRlckJsb2NrKiwgQ29u
dGFpbmluZ0Jsb2NrU3RhdGUgPSBTYW1lQ29udGFpbmluZ0Jsb2NrKTsKIAogICAgIFRyYWNrZWRS
ZW5kZXJlckxpc3RIYXNoU2V0KiBwb3NpdGlvbmVkT2JqZWN0cygpIGNvbnN0OwogICAgIGJvb2wg
aGFzUG9zaXRpb25lZE9iamVjdHMoKSBjb25zdAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>281128</attachid>
            <date>2016-06-12 13:43:20 -0700</date>
            <delta_ts>2016-06-12 13:55:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-158670-20160612134453.patch</filename>
            <type>text/plain</type>
            <size>5056</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAxOTgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2MyZmMwYTMzN2NjMDcy
MDhjYzZiNjBhNWY5ODNiZGRmYzU0MWNlNS4uM2U3ODI0NmJlYzM0MjU1YjRjNDNmYzk5MmM4MTc3
NDE1MmY4NWVmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE2LTA2LTEyICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgQ2xlYW51cCBSZW5kZXJCbG9j
azo6cmVtb3ZlUG9zaXRpb25lZE9iamVjdHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE1ODY3MAorCisgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZy
YXNlci4KKworICAgICAgICBObyBjaGFuZ2UgaW4gZnVuY3Rpb25hbGl0eS4KKworICAgICAgICAq
IHJlbmRlcmluZy9SZW5kZXJCbG9jay5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9j
azo6aW5zZXJ0UG9zaXRpb25lZE9iamVjdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9j
azo6cmVtb3ZlUG9zaXRpb25lZE9iamVjdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9j
azo6cmVtb3ZlUG9zaXRpb25lZE9iamVjdHMpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJC
bG9jay5oOgorCiAyMDE2LTA2LTExICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBs
ZS5jb20+CiAKICAgICAgICAgQWRkcmVzc2luZyBwb3N0LXJldmlldyBjb21tZW50cyBhZnRlciBy
MjAxOTc4LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2Nr
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAKaW5kZXggNGQ4
ZTFjMzBmNGI1NWU4ODZiZmExMWY1ZmEyMjI0OWI5ZGY0ZWI2Zi4uNWQ1MjgxYTBlYzAyYzUxNGE4
NTg5MDYwOTY0NzI5NmE0MTc0MTVlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckJsb2NrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
QmxvY2suY3BwCkBAIC0yMTc3LDQ5ICsyMTc3LDQ0IEBAIFRyYWNrZWRSZW5kZXJlckxpc3RIYXNo
U2V0KiBSZW5kZXJCbG9jazo6cG9zaXRpb25lZE9iamVjdHMoKSBjb25zdAogICAgIHJldHVybiBu
dWxscHRyOwogfQogCi12b2lkIFJlbmRlckJsb2NrOjppbnNlcnRQb3NpdGlvbmVkT2JqZWN0KFJl
bmRlckJveCYgbykKK3ZvaWQgUmVuZGVyQmxvY2s6Omluc2VydFBvc2l0aW9uZWRPYmplY3QoUmVu
ZGVyQm94JiBwb3NpdGlvbmVkKQogewogICAgIEFTU0VSVCghaXNBbm9ueW1vdXNCbG9jaygpKTsK
IAotICAgIGlmIChvLmlzUmVuZGVyRmxvd1RocmVhZCgpKQorICAgIGlmIChwb3NpdGlvbmVkLmlz
UmVuZGVyRmxvd1RocmVhZCgpKQogICAgICAgICByZXR1cm47CiAgICAgCi0gICAgaW5zZXJ0SW50
b1RyYWNrZWRSZW5kZXJlck1hcHMobywgZ1Bvc2l0aW9uZWREZXNjZW5kYW50c01hcCwgZ1Bvc2l0
aW9uZWRDb250YWluZXJNYXAsIGlzUmVuZGVyVmlldygpKTsKKyAgICBpbnNlcnRJbnRvVHJhY2tl
ZFJlbmRlcmVyTWFwcyhwb3NpdGlvbmVkLCBnUG9zaXRpb25lZERlc2NlbmRhbnRzTWFwLCBnUG9z
aXRpb25lZENvbnRhaW5lck1hcCwgaXNSZW5kZXJWaWV3KCkpOwogfQogCi12b2lkIFJlbmRlckJs
b2NrOjpyZW1vdmVQb3NpdGlvbmVkT2JqZWN0KFJlbmRlckJveCYgbykKK3ZvaWQgUmVuZGVyQmxv
Y2s6OnJlbW92ZVBvc2l0aW9uZWRPYmplY3QoUmVuZGVyQm94JiByZW5kZXJlclRvUmVtb3ZlKQog
ewotICAgIHJlbW92ZUZyb21UcmFja2VkUmVuZGVyZXJNYXBzKG8sIGdQb3NpdGlvbmVkRGVzY2Vu
ZGFudHNNYXAsIGdQb3NpdGlvbmVkQ29udGFpbmVyTWFwKTsKKyAgICByZW1vdmVGcm9tVHJhY2tl
ZFJlbmRlcmVyTWFwcyhyZW5kZXJlclRvUmVtb3ZlLCBnUG9zaXRpb25lZERlc2NlbmRhbnRzTWFw
LCBnUG9zaXRpb25lZENvbnRhaW5lck1hcCk7CiB9CiAKLXZvaWQgUmVuZGVyQmxvY2s6OnJlbW92
ZVBvc2l0aW9uZWRPYmplY3RzKFJlbmRlckJsb2NrKiBvLCBDb250YWluaW5nQmxvY2tTdGF0ZSBj
b250YWluaW5nQmxvY2tTdGF0ZSkKK3ZvaWQgUmVuZGVyQmxvY2s6OnJlbW92ZVBvc2l0aW9uZWRP
YmplY3RzKGNvbnN0IFJlbmRlckJsb2NrKiBuZXdDb250YWluaW5nQmxvY2tDYW5kaWRhdGUsIENv
bnRhaW5pbmdCbG9ja1N0YXRlIGNvbnRhaW5pbmdCbG9ja1N0YXRlKQogewotICAgIFRyYWNrZWRS
ZW5kZXJlckxpc3RIYXNoU2V0KiBwb3NpdGlvbmVkRGVzY2VuZGFudHMgPSBwb3NpdGlvbmVkT2Jq
ZWN0cygpOworICAgIGF1dG8qIHBvc2l0aW9uZWREZXNjZW5kYW50cyA9IHBvc2l0aW9uZWRPYmpl
Y3RzKCk7CiAgICAgaWYgKCFwb3NpdGlvbmVkRGVzY2VuZGFudHMpCiAgICAgICAgIHJldHVybjsK
ICAgICAKLSAgICBWZWN0b3I8UmVuZGVyQm94KiwgMTY+IGRlYWRPYmplY3RzOwotCi0gICAgZm9y
IChhdXRvIGl0ID0gcG9zaXRpb25lZERlc2NlbmRhbnRzLT5iZWdpbigpLCBlbmQgPSBwb3NpdGlv
bmVkRGVzY2VuZGFudHMtPmVuZCgpOyBpdCAhPSBlbmQ7ICsraXQpIHsKLSAgICAgICAgUmVuZGVy
Qm94KiByID0gKml0OwotICAgICAgICBpZiAoIW8gfHwgci0+aXNEZXNjZW5kYW50T2YobykpIHsK
LSAgICAgICAgICAgIGlmIChjb250YWluaW5nQmxvY2tTdGF0ZSA9PSBOZXdDb250YWluaW5nQmxv
Y2spCi0gICAgICAgICAgICAgICAgci0+c2V0Q2hpbGROZWVkc0xheW91dChNYXJrT25seVRoaXMp
OwotICAgICAgICAgICAgCi0gICAgICAgICAgICAvLyBJdCBpcyBwYXJlbnQgYmxvY2tzIGpvYiB0
byBhZGQgcG9zaXRpb25lZCBjaGlsZCB0byBwb3NpdGlvbmVkIG9iamVjdHMgbGlzdCBvZiBpdHMg
Y29udGFpbmluZyBibG9jawotICAgICAgICAgICAgLy8gUGFyZW50IGxheW91dCBuZWVkcyB0byBi
ZSBpbnZhbGlkYXRlZCB0byBlbnN1cmUgdGhpcyBoYXBwZW5zLgotICAgICAgICAgICAgUmVuZGVy
RWxlbWVudCogcCA9IHItPnBhcmVudCgpOwotICAgICAgICAgICAgd2hpbGUgKHAgJiYgIXAtPmlz
UmVuZGVyQmxvY2soKSkKLSAgICAgICAgICAgICAgICBwID0gcC0+cGFyZW50KCk7Ci0gICAgICAg
ICAgICBpZiAocCkKLSAgICAgICAgICAgICAgICBwLT5zZXRDaGlsZE5lZWRzTGF5b3V0KCk7Ci0g
ICAgICAgICAgICAKLSAgICAgICAgICAgIGRlYWRPYmplY3RzLmFwcGVuZChyKTsKLSAgICAgICAg
fQotICAgIH0KLSAgICAKLSAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgZGVhZE9iamVjdHMu
c2l6ZSgpOyBpKyspCi0gICAgICAgIHJlbW92ZVBvc2l0aW9uZWRPYmplY3QoKmRlYWRPYmplY3Rz
LmF0KGkpKTsKKyAgICBWZWN0b3I8UmVuZGVyQm94KiwgMTY+IHJlbmRlcmVyc1RvUmVtb3ZlOwor
ICAgIGZvciAoYXV0byogcmVuZGVyZXIgOiAqcG9zaXRpb25lZERlc2NlbmRhbnRzKSB7CisgICAg
ICAgIGlmIChuZXdDb250YWluaW5nQmxvY2tDYW5kaWRhdGUgJiYgIXJlbmRlcmVyLT5pc0Rlc2Nl
bmRhbnRPZihuZXdDb250YWluaW5nQmxvY2tDYW5kaWRhdGUpKQorICAgICAgICAgICAgY29udGlu
dWU7CisgICAgICAgIHJlbmRlcmVyc1RvUmVtb3ZlLmFwcGVuZChyZW5kZXJlcik7CisgICAgICAg
IGlmIChjb250YWluaW5nQmxvY2tTdGF0ZSA9PSBOZXdDb250YWluaW5nQmxvY2spCisgICAgICAg
ICAgICByZW5kZXJlci0+c2V0Q2hpbGROZWVkc0xheW91dChNYXJrT25seVRoaXMpOworICAgICAg
ICAvLyBJdCBpcyB0aGUgcGFyZW50IGJsb2NrJ3Mgam9iIHRvIGFkZCBwb3NpdGlvbmVkIGNoaWxk
cmVuIHRvIHBvc2l0aW9uZWQgb2JqZWN0cyBsaXN0IG9mIGl0cyBjb250YWluaW5nIGJsb2NrLgor
ICAgICAgICAvLyBEaXJ0eSB0aGUgcGFyZW50IHRvIGVuc3VyZSB0aGlzIGhhcHBlbnMuCisgICAg
ICAgIGF1dG8qIHBhcmVudCA9IHJlbmRlcmVyLT5wYXJlbnQoKTsKKyAgICAgICAgd2hpbGUgKHBh
cmVudCAmJiAhcGFyZW50LT5pc1JlbmRlckJsb2NrKCkpCisgICAgICAgICAgICBwYXJlbnQgPSBw
YXJlbnQtPnBhcmVudCgpOworICAgICAgICBpZiAocGFyZW50KQorICAgICAgICAgICAgcGFyZW50
LT5zZXRDaGlsZE5lZWRzTGF5b3V0KCk7CisgICAgfQorICAgIGZvciAoYXV0byogcmVuZGVyZXIg
OiByZW5kZXJlcnNUb1JlbW92ZSkKKyAgICAgICAgcmVtb3ZlUG9zaXRpb25lZE9iamVjdCgqcmVu
ZGVyZXIpOwogfQogCiB2b2lkIFJlbmRlckJsb2NrOjphZGRQZXJjZW50SGVpZ2h0RGVzY2VuZGFu
dChSZW5kZXJCb3gmIGRlc2NlbmRhbnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyQmxvY2suaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9j
ay5oCmluZGV4IGQ4YWEyOWE4YTA1YjMyMmFkYzcyZGYzNjBmOWRiMTdlYTQyMjk3MDYuLjliOTAw
ODBlYmFiOTRmZTU0NTZkZmNmMzgzMmVmNjk3OGFjZDAwMzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCbG9jay5oCkBAIC04NCw3ICs4NCw3IEBAIHB1YmxpYzoKIAogICAgIHZvaWQg
aW5zZXJ0UG9zaXRpb25lZE9iamVjdChSZW5kZXJCb3gmKTsKICAgICBzdGF0aWMgdm9pZCByZW1v
dmVQb3NpdGlvbmVkT2JqZWN0KFJlbmRlckJveCYpOwotICAgIHZvaWQgcmVtb3ZlUG9zaXRpb25l
ZE9iamVjdHMoUmVuZGVyQmxvY2sqLCBDb250YWluaW5nQmxvY2tTdGF0ZSA9IFNhbWVDb250YWlu
aW5nQmxvY2spOworICAgIHZvaWQgcmVtb3ZlUG9zaXRpb25lZE9iamVjdHMoY29uc3QgUmVuZGVy
QmxvY2sqLCBDb250YWluaW5nQmxvY2tTdGF0ZSA9IFNhbWVDb250YWluaW5nQmxvY2spOwogCiAg
ICAgVHJhY2tlZFJlbmRlcmVyTGlzdEhhc2hTZXQqIHBvc2l0aW9uZWRPYmplY3RzKCkgY29uc3Q7
CiAgICAgYm9vbCBoYXNQb3NpdGlvbmVkT2JqZWN0cygpIGNvbnN0Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>