<?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>130028</bug_id>
          
          <creation_ts>2014-03-10 10:35:08 -0700</creation_ts>
          <short_desc>The scrolledContentOffset method should handle the hasOverflowClip check</short_desc>
          <delta_ts>2014-03-13 09:33:33 -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>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>AdobeTracked</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Radu Stavila">stavila</reporter>
          <assigned_to name="Radu Stavila">stavila</assigned_to>
          <cc>darin</cc>
    
    <cc>ossy</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>988941</commentid>
    <comment_count>0</comment_count>
    <who name="Radu Stavila">stavila</who>
    <bug_when>2014-03-10 10:35:08 -0700</bug_when>
    <thetext>Currently, all call sites of scrolledContentOffset are performing the hasOverflowClip check. This check should be moved into the scrolledContentOffset itself.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>989404</commentid>
    <comment_count>1</comment_count>
      <attachid>226429</attachid>
    <who name="Radu Stavila">stavila</who>
    <bug_when>2014-03-11 08:58:27 -0700</bug_when>
    <thetext>Created attachment 226429
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>989409</commentid>
    <comment_count>2</comment_count>
      <attachid>226429</attachid>
    <who name="alan">zalan</who>
    <bug_when>2014-03-11 09:15:03 -0700</bug_when>
    <thetext>Comment on attachment 226429
Patch

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

&gt; Source/WebCore/rendering/RenderBlock.cpp:2512
&gt; +    LayoutPoint offsetFromRepaintContainer = roundedLayoutPoint(transformState.mappedPoint()) - scrolledContentOffset();

Is there an intention of actual rounding here? If not I&apos;d rather use the explicit LayoutPoint(const FloatPoint&amp;) c&apos;tor instead. (roundedLayoutPoint() sadly doesnt do any rounding -I&apos;ll be cleaning that up at some point)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>989419</commentid>
    <comment_count>3</comment_count>
      <attachid>226429</attachid>
    <who name="Radu Stavila">stavila</who>
    <bug_when>2014-03-11 09:44:27 -0700</bug_when>
    <thetext>Comment on attachment 226429
Patch

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

&gt;&gt; Source/WebCore/rendering/RenderBlock.cpp:2512
&gt;&gt; +    LayoutPoint offsetFromRepaintContainer = roundedLayoutPoint(transformState.mappedPoint()) - scrolledContentOffset();
&gt; 
&gt; Is there an intention of actual rounding here? If not I&apos;d rather use the explicit LayoutPoint(const FloatPoint&amp;) c&apos;tor instead. (roundedLayoutPoint() sadly doesnt do any rounding -I&apos;ll be cleaning that up at some point)

That is part of the existing code, the change here is removing the hasOverflowClip call, which was moved to scrolledContentOffset.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>989522</commentid>
    <comment_count>4</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2014-03-11 20:40:13 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 226429 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=226429&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebCore/rendering/RenderBlock.cpp:2512
&gt; &gt;&gt; +    LayoutPoint offsetFromRepaintContainer = roundedLayoutPoint(transformState.mappedPoint()) - scrolledContentOffset();
&gt; &gt; 
&gt; &gt; Is there an intention of actual rounding here? If not I&apos;d rather use the explicit LayoutPoint(const FloatPoint&amp;) c&apos;tor instead. (roundedLayoutPoint() sadly doesnt do any rounding -I&apos;ll be cleaning that up at some point)
&gt; 
&gt; That is part of the existing code, the change here is removing the hasOverflowClip call, which was moved to scrolledContentOffset.
Are you planning to fix it at some point?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>989612</commentid>
    <comment_count>5</comment_count>
      <attachid>226429</attachid>
    <who name="Radu Stavila">stavila</who>
    <bug_when>2014-03-12 07:18:30 -0700</bug_when>
    <thetext>Comment on attachment 226429
Patch

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

&gt;&gt;&gt;&gt; Source/WebCore/rendering/RenderBlock.cpp:2512
&gt;&gt;&gt;&gt; +    LayoutPoint offsetFromRepaintContainer = roundedLayoutPoint(transformState.mappedPoint()) - scrolledContentOffset();
&gt;&gt;&gt; 
&gt;&gt;&gt; Is there an intention of actual rounding here? If not I&apos;d rather use the explicit LayoutPoint(const FloatPoint&amp;) c&apos;tor instead. (roundedLayoutPoint() sadly doesnt do any rounding -I&apos;ll be cleaning that up at some point)
&gt;&gt; 
&gt;&gt; That is part of the existing code, the change here is removing the hasOverflowClip call, which was moved to scrolledContentOffset.
&gt; 
&gt; Are you planning to fix it at some point?

Yes - https://bugs.webkit.org/show_bug.cgi?id=130128</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>990027</commentid>
    <comment_count>6</comment_count>
      <attachid>226429</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2014-03-13 09:33:26 -0700</bug_when>
    <thetext>Comment on attachment 226429
Patch

Clearing flags on attachment: 226429

Committed r165537: &lt;http://trac.webkit.org/changeset/165537&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>990028</commentid>
    <comment_count>7</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2014-03-13 09:33:33 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>226429</attachid>
            <date>2014-03-11 08:58:27 -0700</date>
            <delta_ts>2014-03-13 09:33:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>130028.patch</filename>
            <type>text/plain</type>
            <size>14352</size>
            <attacher name="Radu Stavila">stavila</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBhOGMyZmVmLi40NDIxYzYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDMg
QEAKKzIwMTQtMDMtMTEgIFJhZHUgU3RhdmlsYSAgPHN0YXZpbGFAYWRvYmUuY29tPgorCisgICAg
ICAgIFRoZSBzY3JvbGxlZENvbnRlbnRPZmZzZXQgbWV0aG9kIHNob3VsZCBoYW5kbGUgdGhlIGhh
c092ZXJmbG93Q2xpcCBjaGVjaworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTMwMDI4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQmVmb3JlIHRoaXMgcGF0Y2gsIGV2ZXJ5IGNhbGwgdG8gUmVuZGVyQm94Ojpz
Y3JvbGxlZENvbnRlbnRPZmZzZXQgd2FzIGd1YXJkZWQgYnkgdGhlCisgICAgICAgIGhhc092ZXJm
bG93Q2xpcCBjaGVjaywgYmVjYXVzZSB0aGUgc2Nyb2xsZWRDb250ZW50T2Zmc2V0IG1ldGhvZCB3
b3VsZCBBU1NFUlQoaGFzT3ZlcmZsb3dDbGlwKCkpLgorICAgICAgICBUaGlzIHdhcyBzaW1wbGlm
aWVkIGJ5IG1vdmluZyB0aGUgaGFzT3ZlcmZsb3dDbGlwIGNoZWNrIGluc2lkZSB0aGUgc2Nyb2xs
ZWRDb250ZW50T2Zmc2V0IG1ldGhvZAorICAgICAgICBhbmQgcmV0dXJuaW5nICgwLCAwKSBmb3Ig
ZWxlbWVudHMgdGhhdCBkbyBub3QgY2xpcCB0aGUgb3ZlcmZsb3cuCisKKyAgICAgICAgTm8gbmV3
IHRlc3RzIG5lZWRlZCwganVzdCBhIHJlZmFjdG9yLgorCisgICAgICAgICogZWRpdGluZy9WaXNp
YmxlVW5pdHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6YWJzb2x1dGVMaW5lRGlyZWN0aW9uUG9p
bnRUb0xvY2FsUG9pbnRJbkJsb2NrKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQmxvY2su
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6OnBhaW50T2JqZWN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjpzZWxlY3Rpb25HYXBSZWN0c0ZvclJlcGFpbnQpOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6OnBhaW50U2VsZWN0aW9uKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlckJsb2NrOjpub2RlQXRQb2ludCk6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJCbG9jazo6b2Zmc2V0Rm9yQ29udGVudHMpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5k
ZXJCb3guY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94OjpzY3JvbGxlZENvbnRlbnRP
ZmZzZXQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94OjpvZmZzZXRGcm9tQ29udGFpbmVy
KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVySW5saW5lLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlcklubGluZTo6b2Zmc2V0RnJvbUNvbnRhaW5lcik6CisgICAgICAgICogcmVuZGVy
aW5nL1JlbmRlckxheWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyOjptYXBM
YXllckNsaXBSZWN0c1RvRnJhZ21lbnRhdGlvbkxheWVyKToKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlckxheWVyOjpjYWxjdWxhdGVDbGlwUmVjdHMpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5k
ZXJOYW1lZEZsb3dUaHJlYWQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTmFtZWRGbG93
VGhyZWFkOjpkZWNvcmF0aW9uc0NsaXBSZWN0Rm9yQm94SW5OYW1lZEZsb3dGcmFnbWVudCk6Cisg
ICAgICAgICogcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJPYmplY3Q6Om1hcExvY2FsVG9Db250YWluZXIpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyT2JqZWN0OjpwdXNoTWFwcGluZ1RvQ29udGFpbmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlck9iamVjdDo6bWFwQWJzb2x1dGVUb0xvY2FsUG9pbnQpOgorICAgICAgICAoV2ViQ29yZTo6
UmVuZGVyT2JqZWN0OjpvZmZzZXRGcm9tQ29udGFpbmVyKToKKyAgICAgICAgKiByZW5kZXJpbmcv
UmVuZGVyVGV4dENvbnRyb2wuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGV4dENvbnRy
b2w6OmhpdElubmVyVGV4dEVsZW1lbnQpOgorCiAyMDE0LTAzLTExICBSeXVhbiBDaG9pICA8cnl1
YW4uY2hvaUBzYW1zdW5nLmNvbT4KIAogICAgICAgICBSZW1vdmUgdW51c2VkIG1ldGhvZCBmcm9t
IEJhdHRlcnlDb250cm9sbGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1Zp
c2libGVVbml0cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1Zpc2libGVVbml0cy5jcHAK
aW5kZXggODJmZWMxZS4uODE0YjFiZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9WaXNpYmxlVW5pdHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVmlzaWJsZVVu
aXRzLmNwcApAQCAtOTM2LDkgKzkzNiw3IEBAIGJvb2wgaXNFbmRPZkxpbmUoY29uc3QgVmlzaWJs
ZVBvc2l0aW9uJiBwKQogc3RhdGljIGlubGluZSBJbnRQb2ludCBhYnNvbHV0ZUxpbmVEaXJlY3Rp
b25Qb2ludFRvTG9jYWxQb2ludEluQmxvY2soUm9vdElubGluZUJveCYgcm9vdCwgaW50IGxpbmVE
aXJlY3Rpb25Qb2ludCkKIHsKICAgICBSZW5kZXJCbG9ja0Zsb3cmIGNvbnRhaW5pbmdCbG9jayA9
IHJvb3QuYmxvY2tGbG93KCk7Ci0gICAgRmxvYXRQb2ludCBhYnNvbHV0ZUJsb2NrUG9pbnQgPSBj
b250YWluaW5nQmxvY2subG9jYWxUb0Fic29sdXRlKEZsb2F0UG9pbnQoKSk7Ci0gICAgaWYgKGNv
bnRhaW5pbmdCbG9jay5oYXNPdmVyZmxvd0NsaXAoKSkKLSAgICAgICAgYWJzb2x1dGVCbG9ja1Bv
aW50IC09IGNvbnRhaW5pbmdCbG9jay5zY3JvbGxlZENvbnRlbnRPZmZzZXQoKTsKKyAgICBGbG9h
dFBvaW50IGFic29sdXRlQmxvY2tQb2ludCA9IGNvbnRhaW5pbmdCbG9jay5sb2NhbFRvQWJzb2x1
dGUoRmxvYXRQb2ludCgpKSAtIGNvbnRhaW5pbmdCbG9jay5zY3JvbGxlZENvbnRlbnRPZmZzZXQo
KTsKIAogICAgIGlmIChjb250YWluaW5nQmxvY2suaXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKSkK
ICAgICAgICAgcmV0dXJuIEludFBvaW50KGxpbmVEaXJlY3Rpb25Qb2ludCAtIGFic29sdXRlQmxv
Y2tQb2ludC54KCksIHJvb3QuYmxvY2tEaXJlY3Rpb25Qb2ludEluTGluZSgpKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCmluZGV4IDdhYmM2MjYuLjIwYjU2NWYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcApAQCAtMjMzMCw4ICsyMzMw
LDcgQEAgdm9pZCBSZW5kZXJCbG9jazo6cGFpbnRPYmplY3QoUGFpbnRJbmZvJiBwYWludEluZm8s
IGNvbnN0IExheW91dFBvaW50JiBwYWludE9mZnMKIAogICAgIC8vIEFkanVzdCBvdXIgcGFpbnRp
bmcgcG9zaXRpb24gaWYgd2UncmUgaW5zaWRlIGEgc2Nyb2xsZWQgbGF5ZXIgKGUuZy4sIGFuIG92
ZXJmbG93OmF1dG8gZGl2KS4KICAgICBMYXlvdXRQb2ludCBzY3JvbGxlZE9mZnNldCA9IHBhaW50
T2Zmc2V0OwotICAgIGlmIChoYXNPdmVyZmxvd0NsaXAoKSkKLSAgICAgICAgc2Nyb2xsZWRPZmZz
ZXQubW92ZSgtc2Nyb2xsZWRDb250ZW50T2Zmc2V0KCkpOworICAgIHNjcm9sbGVkT2Zmc2V0Lm1v
dmUoLXNjcm9sbGVkQ29udGVudE9mZnNldCgpKTsKIAogICAgIC8vIDIuIHBhaW50IGNvbnRlbnRz
CiAgICAgaWYgKHBhaW50UGhhc2UgIT0gUGFpbnRQaGFzZVNlbGZPdXRsaW5lKSB7CkBAIC0yNTEw
LDEwICsyNTA5LDcgQEAgR2FwUmVjdHMgUmVuZGVyQmxvY2s6OnNlbGVjdGlvbkdhcFJlY3RzRm9y
UmVwYWludChjb25zdCBSZW5kZXJMYXllck1vZGVsT2JqZWN0KgogCiAgICAgVHJhbnNmb3JtU3Rh
dGUgdHJhbnNmb3JtU3RhdGUoVHJhbnNmb3JtU3RhdGU6OkFwcGx5VHJhbnNmb3JtRGlyZWN0aW9u
LCBGbG9hdFBvaW50KCkpOwogICAgIG1hcExvY2FsVG9Db250YWluZXIocmVwYWludENvbnRhaW5l
ciwgdHJhbnNmb3JtU3RhdGUsIEFwcGx5Q29udGFpbmVyRmxpcCB8IFVzZVRyYW5zZm9ybXMpOwot
ICAgIExheW91dFBvaW50IG9mZnNldEZyb21SZXBhaW50Q29udGFpbmVyID0gcm91bmRlZExheW91
dFBvaW50KHRyYW5zZm9ybVN0YXRlLm1hcHBlZFBvaW50KCkpOwotCi0gICAgaWYgKGhhc092ZXJm
bG93Q2xpcCgpKQotICAgICAgICBvZmZzZXRGcm9tUmVwYWludENvbnRhaW5lciAtPSBzY3JvbGxl
ZENvbnRlbnRPZmZzZXQoKTsKKyAgICBMYXlvdXRQb2ludCBvZmZzZXRGcm9tUmVwYWludENvbnRh
aW5lciA9IHJvdW5kZWRMYXlvdXRQb2ludCh0cmFuc2Zvcm1TdGF0ZS5tYXBwZWRQb2ludCgpKSAt
IHNjcm9sbGVkQ29udGVudE9mZnNldCgpOwogCiAgICAgTG9naWNhbFNlbGVjdGlvbk9mZnNldENh
Y2hlcyBjYWNoZSgqdGhpcyk7CiAgICAgTGF5b3V0VW5pdCBsYXN0VG9wID0gMDsKQEAgLTI1NDEs
NyArMjUzNyw3IEBAIHZvaWQgUmVuZGVyQmxvY2s6OnBhaW50U2VsZWN0aW9uKFBhaW50SW5mbyYg
cGFpbnRJbmZvLCBjb25zdCBMYXlvdXRQb2ludCYgcGFpbnRPCiAgICAgICAgICAgICAgICAgICAg
IExheW91dFJlY3QgbG9jYWxCb3VuZHMoZ2FwUmVjdHNCb3VuZHMpOwogICAgICAgICAgICAgICAg
ICAgICBmbGlwRm9yV3JpdGluZ01vZGUobG9jYWxCb3VuZHMpOwogICAgICAgICAgICAgICAgICAg
ICBnYXBSZWN0c0JvdW5kcyA9IGxvY2FsVG9Db250YWluZXJRdWFkKEZsb2F0UmVjdChsb2NhbEJv
dW5kcyksICZsYXllci0+cmVuZGVyZXIoKSkuZW5jbG9zaW5nQm91bmRpbmdCb3goKTsKLSAgICAg
ICAgICAgICAgICAgICAgaWYgKGxheWVyLT5yZW5kZXJlcigpLmhhc092ZXJmbG93Q2xpcCgpKQor
ICAgICAgICAgICAgICAgICAgICBpZiAobGF5ZXItPnJlbmRlcmVyKCkuaXNCb3goKSkKICAgICAg
ICAgICAgICAgICAgICAgICAgIGdhcFJlY3RzQm91bmRzLm1vdmUobGF5ZXItPnJlbmRlckJveCgp
LT5zY3JvbGxlZENvbnRlbnRPZmZzZXQoKSk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAg
ICAgICAgIGxheWVyLT5hZGRCbG9ja1NlbGVjdGlvbkdhcHNCb3VuZHMoZ2FwUmVjdHNCb3VuZHMp
OwpAQCAtMzE3NSw5ICszMTcxLDcgQEAgYm9vbCBSZW5kZXJCbG9jazo6bm9kZUF0UG9pbnQoY29u
c3QgSGl0VGVzdFJlcXVlc3QmIHJlcXVlc3QsIEhpdFRlc3RSZXN1bHQmIHJlc3UKICAgICBib29s
IGNoZWNrQ2hpbGRyZW4gPSAhdXNlQ2xpcCB8fCAoaGFzQ29udHJvbENsaXAoKSA/IGxvY2F0aW9u
SW5Db250YWluZXIuaW50ZXJzZWN0cyhjb250cm9sQ2xpcFJlY3QoYWRqdXN0ZWRMb2NhdGlvbikp
IDogbG9jYXRpb25JbkNvbnRhaW5lci5pbnRlcnNlY3RzKG92ZXJmbG93Q2xpcFJlY3QoYWRqdXN0
ZWRMb2NhdGlvbiwgbG9jYXRpb25JbkNvbnRhaW5lci5yZWdpb24oKSwgSW5jbHVkZU92ZXJsYXlT
Y3JvbGxiYXJTaXplKSkpOwogICAgIGlmIChjaGVja0NoaWxkcmVuKSB7CiAgICAgICAgIC8vIEhp
dCB0ZXN0IGRlc2NlbmRhbnRzIGZpcnN0LgotICAgICAgICBMYXlvdXRTaXplIHNjcm9sbGVkT2Zm
c2V0KGxvY2FsT2Zmc2V0KTsKLSAgICAgICAgaWYgKGhhc092ZXJmbG93Q2xpcCgpKQotICAgICAg
ICAgICAgc2Nyb2xsZWRPZmZzZXQgLT0gc2Nyb2xsZWRDb250ZW50T2Zmc2V0KCk7CisgICAgICAg
IExheW91dFNpemUgc2Nyb2xsZWRPZmZzZXQobG9jYWxPZmZzZXQgLSBzY3JvbGxlZENvbnRlbnRP
ZmZzZXQoKSk7CiAKICAgICAgICAgLy8gSGl0IHRlc3QgY29udGVudHMgaWYgd2UgZG9uJ3QgaGF2
ZSBjb2x1bW5zLgogICAgICAgICBpZiAoIWhhc0NvbHVtbnMoKSkgewpAQCAtMzQ1Myw5ICszNDQ3
LDcgQEAgVmlzaWJsZVBvc2l0aW9uIFJlbmRlckJsb2NrOjpwb3NpdGlvbkZvclBvaW50KGNvbnN0
IExheW91dFBvaW50JiBwb2ludCkKIHZvaWQgUmVuZGVyQmxvY2s6Om9mZnNldEZvckNvbnRlbnRz
KExheW91dFBvaW50JiBvZmZzZXQpIGNvbnN0CiB7CiAgICAgb2Zmc2V0ID0gZmxpcEZvcldyaXRp
bmdNb2RlKG9mZnNldCk7Ci0KLSAgICBpZiAoaGFzT3ZlcmZsb3dDbGlwKCkpCi0gICAgICAgIG9m
ZnNldCArPSBzY3JvbGxlZENvbnRlbnRPZmZzZXQoKTsKKyAgICBvZmZzZXQgKz0gc2Nyb2xsZWRD
b250ZW50T2Zmc2V0KCk7CiAKICAgICBpZiAoaGFzQ29sdW1ucygpKQogICAgICAgICBhZGp1c3RQ
b2ludFRvQ29sdW1uQ29udGVudHMob2Zmc2V0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJCb3guY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckJveC5jcHAKaW5kZXggYTJhN2I4My4uZDBjMjkwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckJveC5jcHAKQEAgLTkxMiw3ICs5MTIsOSBAQCBib29sIFJlbmRlckJveDo6bmVlZHNQ
cmVmZXJyZWRXaWR0aHNSZWNhbGN1bGF0aW9uKCkgY29uc3QKIAogSW50U2l6ZSBSZW5kZXJCb3g6
OnNjcm9sbGVkQ29udGVudE9mZnNldCgpIGNvbnN0CiB7Ci0gICAgQVNTRVJUKGhhc092ZXJmbG93
Q2xpcCgpKTsKKyAgICBpZiAoIWhhc092ZXJmbG93Q2xpcCgpKQorICAgICAgICByZXR1cm4gSW50
U2l6ZSgpOworCiAgICAgQVNTRVJUKGhhc0xheWVyKCkpOwogICAgIHJldHVybiBsYXllcigpLT5z
Y3JvbGxlZENvbnRlbnRPZmZzZXQoKTsKIH0KQEAgLTE5NjAsNyArMTk2Miw3IEBAIExheW91dFNp
emUgUmVuZGVyQm94OjpvZmZzZXRGcm9tQ29udGFpbmVyKFJlbmRlck9iamVjdCogbywgY29uc3Qg
TGF5b3V0UG9pbnQmIHBvCiAgICAgICAgICAgICBvZmZzZXQgKz0gdG9wTGVmdExvY2F0aW9uT2Zm
c2V0KCk7CiAgICAgfQogCi0gICAgaWYgKG8tPmhhc092ZXJmbG93Q2xpcCgpKQorICAgIGlmIChv
LT5pc0JveCgpKQogICAgICAgICBvZmZzZXQgLT0gdG9SZW5kZXJCb3gobyktPnNjcm9sbGVkQ29u
dGVudE9mZnNldCgpOwogCiAgICAgaWYgKHN0eWxlKCkucG9zaXRpb24oKSA9PSBBYnNvbHV0ZVBv
c2l0aW9uICYmIG8tPmlzSW5GbG93UG9zaXRpb25lZCgpICYmIG8tPmlzUmVuZGVySW5saW5lKCkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySW5saW5lLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbmxpbmUuY3BwCmluZGV4IGI3ZDYzMzIu
LjdhNWNjNjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbmxp
bmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbmxpbmUuY3BwCkBA
IC0xMjEwLDcgKzEyMTAsNyBAQCBMYXlvdXRTaXplIFJlbmRlcklubGluZTo6b2Zmc2V0RnJvbUNv
bnRhaW5lcihSZW5kZXJPYmplY3QqIGNvbnRhaW5lciwgY29uc3QgTGF5bwogCiAgICAgY29udGFp
bmVyLT5hZGp1c3RGb3JDb2x1bW5zKG9mZnNldCwgcG9pbnQpOwogCi0gICAgaWYgKGNvbnRhaW5l
ci0+aGFzT3ZlcmZsb3dDbGlwKCkpCisgICAgaWYgKGNvbnRhaW5lci0+aXNCb3goKSkKICAgICAg
ICAgb2Zmc2V0IC09IHRvUmVuZGVyQm94KGNvbnRhaW5lciktPnNjcm9sbGVkQ29udGVudE9mZnNl
dCgpOwogCiAgICAgaWYgKG9mZnNldERlcGVuZHNPblBvaW50KQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJMYXllci5jcHAKaW5kZXggMDMzODdjZi4uNjc3MTExNyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCkBAIC01Mjg5LDggKzUyODksNyBAQCB2b2lk
IFJlbmRlckxheWVyOjptYXBMYXllckNsaXBSZWN0c1RvRnJhZ21lbnRhdGlvbkxheWVyKFJlbmRl
ck5hbWVkRmxvd0ZyYWdtZW50KgogCiAgICAgTGF5b3V0UG9pbnQgcG9ydGlvbkxvY2F0aW9uID0g
Zmxvd1RocmVhZFBvcnRpb25SZWN0LmxvY2F0aW9uKCk7CiAgICAgTGF5b3V0UmVjdCByZWdpb25D
b250ZW50Qm94ID0gbmFtZWRGbG93RnJhZ21lbnQtPmZyYWdtZW50Q29udGFpbmVyKCkuY29udGVu
dEJveFJlY3QoKTsKLSAgICBJbnRTaXplIHNjcm9sbGVkQ29udGVudE9mZnNldCA9IG5hbWVkRmxv
d0ZyYWdtZW50LT5mcmFnbWVudENvbnRhaW5lcigpLmhhc092ZXJmbG93Q2xpcCgpID8gbmFtZWRG
bG93RnJhZ21lbnQtPmZyYWdtZW50Q29udGFpbmVyKCkuc2Nyb2xsZWRDb250ZW50T2Zmc2V0KCkg
OiBJbnRTaXplKCk7Ci0gICAgTGF5b3V0U2l6ZSBtb3ZlT2Zmc2V0ID0gcG9ydGlvbkxvY2F0aW9u
IC0gcmVnaW9uQ29udGVudEJveC5sb2NhdGlvbigpICsgc2Nyb2xsZWRDb250ZW50T2Zmc2V0Owor
ICAgIExheW91dFNpemUgbW92ZU9mZnNldCA9IHBvcnRpb25Mb2NhdGlvbiAtIHJlZ2lvbkNvbnRl
bnRCb3gubG9jYXRpb24oKSArIG5hbWVkRmxvd0ZyYWdtZW50LT5mcmFnbWVudENvbnRhaW5lcigp
LnNjcm9sbGVkQ29udGVudE9mZnNldCgpOwogCiAgICAgQ2xpcFJlY3QgbmV3T3ZlcmZsb3dDbGlw
UmVjdCA9IGNsaXBSZWN0cy5vdmVyZmxvd0NsaXBSZWN0KCk7CiAgICAgbmV3T3ZlcmZsb3dDbGlw
UmVjdC5tb3ZlKG1vdmVPZmZzZXQpOwpAQCAtNjc4NSwxMCArNjc4NCw4IEBAIHZvaWQgUmVuZGVy
TGF5ZXI6OmZpbHRlck5lZWRzUmVwYWludCgpCiB2b2lkIFJlbmRlckxheWVyOjpwYWludE5hbWVk
Rmxvd1RocmVhZEluc2lkZVJlZ2lvbihHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsIFJlbmRlck5h
bWVkRmxvd0ZyYWdtZW50KiByZWdpb24sIExheW91dFJlY3QgcGFpbnREaXJ0eVJlY3QsIExheW91
dFBvaW50IHBhaW50T2Zmc2V0LCBQYWludEJlaGF2aW9yIHBhaW50QmVoYXZpb3IsIFBhaW50TGF5
ZXJGbGFncyBwYWludEZsYWdzKQogewogICAgIExheW91dFJlY3QgcmVnaW9uQ29udGVudEJveCA9
IHRvUmVuZGVyQm94KHJlZ2lvbi0+bGF5ZXJPd25lcigpKS5jb250ZW50Qm94UmVjdCgpOwotICAg
IExheW91dFNpemUgbW92ZU9mZnNldCA9IHJlZ2lvbi0+Zmxvd1RocmVhZFBvcnRpb25Mb2NhdGlv
bigpIC0gKHBhaW50T2Zmc2V0ICsgcmVnaW9uQ29udGVudEJveC5sb2NhdGlvbigpKTsKLSAgICBp
ZiAocmVnaW9uLT5mcmFnbWVudENvbnRhaW5lcigpLmhhc092ZXJmbG93Q2xpcCgpKQotICAgICAg
ICBtb3ZlT2Zmc2V0ICs9IHJlZ2lvbi0+ZnJhZ21lbnRDb250YWluZXIoKS5zY3JvbGxlZENvbnRl
bnRPZmZzZXQoKTsKLSAgICAKKyAgICBMYXlvdXRTaXplIG1vdmVPZmZzZXQgPSByZWdpb24tPmZs
b3dUaHJlYWRQb3J0aW9uTG9jYXRpb24oKSAtIChwYWludE9mZnNldCArIHJlZ2lvbkNvbnRlbnRC
b3gubG9jYXRpb24oKSkgKyByZWdpb24tPmZyYWdtZW50Q29udGFpbmVyKCkuc2Nyb2xsZWRDb250
ZW50T2Zmc2V0KCk7CisKICAgICBJbnRQb2ludCBhZGp1c3RlZFBhaW50T2Zmc2V0ID0gcm91bmRl
ZEludFBvaW50KC1tb3ZlT2Zmc2V0KTsKICAgICBwYWludERpcnR5UmVjdC5tb3ZlKG1vdmVPZmZz
ZXQpOwogCkBAIC02ODc2LDcgKzY4NzMsNiBAQCBSZW5kZXJMYXllciogUmVuZGVyTGF5ZXI6Omhp
dFRlc3RGbG93VGhyZWFkSWZSZWdpb25Gb3JGcmFnbWVudHMoY29uc3QgTGF5ZXJGcmFnbQogICAg
IH0KIAogICAgIExheW91dFJlY3QgcmVnaW9uQ29udGVudEJveCA9IHRvUmVuZGVyQmxvY2tGbG93
KCZyZW5kZXJlcigpKS0+Y29udGVudEJveFJlY3QoKTsKLSAgICBJbnRTaXplIHNjcm9sbGVkQ29u
dGVudE9mZnNldCA9IHJlZ2lvbi0+ZnJhZ21lbnRDb250YWluZXIoKS5oYXNPdmVyZmxvd0NsaXAo
KSA/IHJlZ2lvbi0+ZnJhZ21lbnRDb250YWluZXIoKS5zY3JvbGxlZENvbnRlbnRPZmZzZXQoKSA6
IEludFNpemUoKTsKIAogICAgIFJlbmRlckxheWVyKiByZXN1bHRMYXllciA9IDA7CiAgICAgZm9y
IChpbnQgaSA9IGZyYWdtZW50cy5zaXplKCkgLSAxOyBpID49IDA7IC0taSkgewpAQCAtNjg4NSw3
ICs2ODgxLDcgQEAgUmVuZGVyTGF5ZXIqIFJlbmRlckxheWVyOjpoaXRUZXN0Rmxvd1RocmVhZElm
UmVnaW9uRm9yRnJhZ21lbnRzKGNvbnN0IExheWVyRnJhZ20KICAgICAgICAgaWYgKCFmcmFnbWVu
dC5iYWNrZ3JvdW5kUmVjdC5pbnRlcnNlY3RzKGhpdFRlc3RMb2NhdGlvbikpCiAgICAgICAgICAg
ICBjb250aW51ZTsKIAotICAgICAgICBMYXlvdXRTaXplIGhpdFRlc3RPZmZzZXQgPSBwb3J0aW9u
TG9jYXRpb24gLSAoZnJhZ21lbnQubGF5ZXJCb3VuZHMubG9jYXRpb24oKSArIHJlZ2lvbkNvbnRl
bnRCb3gubG9jYXRpb24oKSkgKyBzY3JvbGxlZENvbnRlbnRPZmZzZXQ7CisgICAgICAgIExheW91
dFNpemUgaGl0VGVzdE9mZnNldCA9IHBvcnRpb25Mb2NhdGlvbiAtIChmcmFnbWVudC5sYXllckJv
dW5kcy5sb2NhdGlvbigpICsgcmVnaW9uQ29udGVudEJveC5sb2NhdGlvbigpKSArIHJlZ2lvbi0+
ZnJhZ21lbnRDb250YWluZXIoKS5zY3JvbGxlZENvbnRlbnRPZmZzZXQoKTsKIAogICAgICAgICAv
LyBBbHdheXMgaWdub3JlIGNsaXBwaW5nLCBzaW5jZSB0aGUgUmVuZGVyRmxvd1RocmVhZCBoYXMg
bm90aGluZyB0byBkbyB3aXRoIHRoZSBib3VuZHMgb2YgdGhlIEZyYW1lVmlldy4KICAgICAgICAg
SGl0VGVzdFJlcXVlc3QgbmV3UmVxdWVzdChyZXF1ZXN0LnR5cGUoKSB8IEhpdFRlc3RSZXF1ZXN0
OjpJZ25vcmVDbGlwcGluZyB8IEhpdFRlc3RSZXF1ZXN0OjpEaXNhbGxvd1NoYWRvd0NvbnRlbnQp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck5hbWVkRmxvd1Ro
cmVhZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTmFtZWRGbG93VGhyZWFk
LmNwcAppbmRleCAxZGQxZmUwLi5jYTFiZDNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyTmFtZWRGbG93VGhyZWFkLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyTmFtZWRGbG93VGhyZWFkLmNwcApAQCAtMjk5LDkgKzI5OSw4IEBAIExh
eW91dFJlY3QgUmVuZGVyTmFtZWRGbG93VGhyZWFkOjpkZWNvcmF0aW9uc0NsaXBSZWN0Rm9yQm94
SW5OYW1lZEZsb3dGcmFnbWVudChjCiAgICAgZmxpcEZvcldyaXRpbmdNb2RlTG9jYWxDb29yZGlu
YXRlcyh2aXN1YWxPdmVyZmxvd1JlY3QpOwogICAgIAogICAgIC8vIFRha2UgdGhlIHNjcm9sbGVk
IG9mZnNldCBvZiB0aGUgcmVnaW9uIGludG8gY29uc2lkZXJhdGlvbi4KLSAgICBSZW5kZXJCbG9j
a0Zsb3cmIGZyYWdtZW50Q29udGFpbmVyID0gZnJhZ21lbnQuZnJhZ21lbnRDb250YWluZXIoKTsK
LSAgICBpZiAoZnJhZ21lbnRDb250YWluZXIuaGFzT3ZlcmZsb3dDbGlwKCkpIHsKLSAgICAgICAg
SW50U2l6ZSBzY3JvbGxlZENvbnRlbnRPZmZzZXQgPSBmcmFnbWVudENvbnRhaW5lci5zY3JvbGxl
ZENvbnRlbnRPZmZzZXQoKTsKKyAgICBJbnRTaXplIHNjcm9sbGVkQ29udGVudE9mZnNldCA9IGZy
YWdtZW50LmZyYWdtZW50Q29udGFpbmVyKCkuc2Nyb2xsZWRDb250ZW50T2Zmc2V0KCk7CisgICAg
aWYgKCFzY3JvbGxlZENvbnRlbnRPZmZzZXQuaXNaZXJvKCkpIHsKICAgICAgICAgaWYgKHN0eWxl
KCkuaXNGbGlwcGVkQmxvY2tzV3JpdGluZ01vZGUoKSkKICAgICAgICAgICAgIHNjcm9sbGVkQ29u
dGVudE9mZnNldCA9IC1zY3JvbGxlZENvbnRlbnRPZmZzZXQ7CiAgICAgICAgIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcAppbmRleCAyMzQ4Nzc2Li5lMDVjNGJiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcApAQCAtMTYxOCw3ICsx
NjE4LDcgQEAgdm9pZCBSZW5kZXJPYmplY3Q6Om1hcExvY2FsVG9Db250YWluZXIoY29uc3QgUmVu
ZGVyTGF5ZXJNb2RlbE9iamVjdCogcmVwYWludENvbnQKICAgICBpZiAoIWNvbHVtbk9mZnNldC5p
c1plcm8oKSkKICAgICAgICAgdHJhbnNmb3JtU3RhdGUubW92ZShjb2x1bW5PZmZzZXQpOwogCi0g
ICAgaWYgKG8tPmhhc092ZXJmbG93Q2xpcCgpKQorICAgIGlmIChvLT5pc0JveCgpKQogICAgICAg
ICB0cmFuc2Zvcm1TdGF0ZS5tb3ZlKC10b1JlbmRlckJveChvKS0+c2Nyb2xsZWRDb250ZW50T2Zm
c2V0KCkpOwogCiAgICAgby0+bWFwTG9jYWxUb0NvbnRhaW5lcihyZXBhaW50Q29udGFpbmVyLCB0
cmFuc2Zvcm1TdGF0ZSwgbW9kZSwgd2FzRml4ZWQpOwpAQCAtMTYzNCw3ICsxNjM0LDcgQEAgY29u
c3QgUmVuZGVyT2JqZWN0KiBSZW5kZXJPYmplY3Q6OnB1c2hNYXBwaW5nVG9Db250YWluZXIoY29u
c3QgUmVuZGVyTGF5ZXJNb2RlbE8KIAogICAgIC8vIEZJWE1FOiB0aGlzIHNob3VsZCBjYWxsIG9m
ZnNldEZyb21Db250YWluZXIgdG8gc2hhcmUgY29kZSwgYnV0IEknbSBub3Qgc3VyZSBpdCdzIGV2
ZXIgY2FsbGVkLgogICAgIExheW91dFNpemUgb2Zmc2V0OwotICAgIGlmIChjb250YWluZXItPmhh
c092ZXJmbG93Q2xpcCgpKQorICAgIGlmIChjb250YWluZXItPmlzQm94KCkpCiAgICAgICAgIG9m
ZnNldCA9IC10b1JlbmRlckJveChjb250YWluZXIpLT5zY3JvbGxlZENvbnRlbnRPZmZzZXQoKTsK
IAogICAgIGdlb21ldHJ5TWFwLnB1c2godGhpcywgb2Zmc2V0LCBoYXNDb2x1bW5zKCkpOwpAQCAt
MTY0Nyw3ICsxNjQ3LDcgQEAgdm9pZCBSZW5kZXJPYmplY3Q6Om1hcEFic29sdXRlVG9Mb2NhbFBv
aW50KE1hcENvb3JkaW5hdGVzRmxhZ3MgbW9kZSwgVHJhbnNmb3JtU3QKICAgICBhdXRvIG8gPSBw
YXJlbnQoKTsKICAgICBpZiAobykgewogICAgICAgICBvLT5tYXBBYnNvbHV0ZVRvTG9jYWxQb2lu
dChtb2RlLCB0cmFuc2Zvcm1TdGF0ZSk7Ci0gICAgICAgIGlmIChvLT5oYXNPdmVyZmxvd0NsaXAo
KSkKKyAgICAgICAgaWYgKG8tPmlzQm94KCkpCiAgICAgICAgICAgICB0cmFuc2Zvcm1TdGF0ZS5t
b3ZlKHRvUmVuZGVyQm94KG8pLT5zY3JvbGxlZENvbnRlbnRPZmZzZXQoKSk7CiAgICAgfQogfQpA
QCAtMTcxOCw3ICsxNzE4LDcgQEAgTGF5b3V0U2l6ZSBSZW5kZXJPYmplY3Q6Om9mZnNldEZyb21D
b250YWluZXIoUmVuZGVyT2JqZWN0KiBvLCBjb25zdCBMYXlvdXRQb2ludCYKIAogICAgIG8tPmFk
anVzdEZvckNvbHVtbnMob2Zmc2V0LCBwb2ludCk7CiAKLSAgICBpZiAoby0+aGFzT3ZlcmZsb3dD
bGlwKCkpCisgICAgaWYgKG8tPmlzQm94KCkpCiAgICAgICAgIG9mZnNldCAtPSB0b1JlbmRlckJv
eChvKS0+c2Nyb2xsZWRDb250ZW50T2Zmc2V0KCk7CiAKICAgICBpZiAob2Zmc2V0RGVwZW5kc09u
UG9pbnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dENv
bnRyb2wuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRleHRDb250cm9sLmNw
cAppbmRleCA1NjA0MTIxLi4yNWYzYTQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyVGV4dENvbnRyb2wuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJUZXh0Q29udHJvbC5jcHAKQEAgLTE2Niw5ICsxNjYsNyBAQCB2b2lkIFJlbmRlclRl
eHRDb250cm9sOjpoaXRJbm5lclRleHRFbGVtZW50KEhpdFRlc3RSZXN1bHQmIHJlc3VsdCwgY29u
c3QgTGF5b3V0UAogICAgICAgICByZXR1cm47CiAKICAgICBMYXlvdXRQb2ludCBhZGp1c3RlZExv
Y2F0aW9uID0gYWNjdW11bGF0ZWRPZmZzZXQgKyBsb2NhdGlvbigpOwotICAgIExheW91dFBvaW50
IGxvY2FsUG9pbnQgPSBwb2ludEluQ29udGFpbmVyIC0gdG9MYXlvdXRTaXplKGFkanVzdGVkTG9j
YXRpb24gKyBpbm5lclRleHQtPnJlbmRlckJveCgpLT5sb2NhdGlvbigpKTsKLSAgICBpZiAoaGFz
T3ZlcmZsb3dDbGlwKCkpCi0gICAgICAgIGxvY2FsUG9pbnQgKz0gc2Nyb2xsZWRDb250ZW50T2Zm
c2V0KCk7CisgICAgTGF5b3V0UG9pbnQgbG9jYWxQb2ludCA9IHBvaW50SW5Db250YWluZXIgLSB0
b0xheW91dFNpemUoYWRqdXN0ZWRMb2NhdGlvbiArIGlubmVyVGV4dC0+cmVuZGVyQm94KCktPmxv
Y2F0aW9uKCkpICsgc2Nyb2xsZWRDb250ZW50T2Zmc2V0KCk7CiAgICAgcmVzdWx0LnNldElubmVy
Tm9kZShpbm5lclRleHQpOwogICAgIHJlc3VsdC5zZXRJbm5lck5vblNoYXJlZE5vZGUoaW5uZXJU
ZXh0KTsKICAgICByZXN1bHQuc2V0TG9jYWxQb2ludChsb2NhbFBvaW50KTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>