<?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>225908</bug_id>
          
          <creation_ts>2021-05-17 23:10:12 -0700</creation_ts>
          <short_desc>Use RefPtr for local ref counted objects of FrameSelection::setSelectionWithoutUpdatingAppearance</short_desc>
          <delta_ts>2021-05-18 03:01:36 -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>HTML Editing</component>
          <version>Other</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>
          <dependson>225219</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Frédéric Wang Nélar">fred.wang</reporter>
          <assigned_to name="Frédéric Wang Nélar">fred.wang</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>ews-feeder</cc>
    
    <cc>product-security</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1761045</commentid>
    <comment_count>0</comment_count>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-05-17 23:10:12 -0700</bug_when>
    <thetext>.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761046</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-05-17 23:10:26 -0700</bug_when>
    <thetext>&lt;rdar://problem/78140308&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761047</commentid>
    <comment_count>2</comment_count>
      <attachid>428915</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-05-17 23:11:27 -0700</bug_when>
    <thetext>Created attachment 428915
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761089</commentid>
    <comment_count>3</comment_count>
      <attachid>428915</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-05-18 01:49:21 -0700</bug_when>
    <thetext>Comment on attachment 428915
Patch

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

&gt; Source/WebCore/editing/FrameSelection.cpp:1944
&gt; -    ContainerNode* ownerElementParent = ownerElement-&gt;parentNode();
&gt; +    RefPtr&lt;ContainerNode&gt; ownerElementParent = ownerElement-&gt;parentNode();

Use makeRefPtr?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761090</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-05-18 01:49:37 -0700</bug_when>
    <thetext>I don&apos;t think this needs to be in the security component unless there is an actual security bug we&apos;re fixing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761091</commentid>
    <comment_count>5</comment_count>
      <attachid>428915</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-05-18 01:54:07 -0700</bug_when>
    <thetext>Comment on attachment 428915
Patch

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

&gt;&gt; Source/WebCore/editing/FrameSelection.cpp:1944
&gt;&gt; +    RefPtr&lt;ContainerNode&gt; ownerElementParent = ownerElement-&gt;parentNode();
&gt; 
&gt; Use makeRefPtr?

This needs to be cast to RefPtr&lt;ContainerNode&gt;. Not sure how we do that in our code... or maybe you mean adding makeRefPtr in any case?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761092</commentid>
    <comment_count>6</comment_count>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-05-18 01:55:34 -0700</bug_when>
    <thetext>(In reply to Ryosuke Niwa from comment #4)
&gt; I don&apos;t think this needs to be in the security component unless there is an
&gt; actual security bug we&apos;re fixing.

Yeah, reading the code, I don&apos;t think any of this use is &quot;dangerous&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761095</commentid>
    <comment_count>7</comment_count>
      <attachid>428915</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-05-18 02:03:51 -0700</bug_when>
    <thetext>Comment on attachment 428915
Patch

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

&gt;&gt;&gt; Source/WebCore/editing/FrameSelection.cpp:1944
&gt;&gt;&gt; +    RefPtr&lt;ContainerNode&gt; ownerElementParent = ownerElement-&gt;parentNode();
&gt;&gt; 
&gt;&gt; Use makeRefPtr?
&gt; 
&gt; This needs to be cast to RefPtr&lt;ContainerNode&gt;. Not sure how we do that in our code... or maybe you mean adding makeRefPtr in any case?

I&apos;m confused. Given Node::parentNode() returns ContainerNode, calling makeRefPtr will surely make it RefPtr&lt;ContainerNode&gt;?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761103</commentid>
    <comment_count>8</comment_count>
      <attachid>428915</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-05-18 02:31:44 -0700</bug_when>
    <thetext>Comment on attachment 428915
Patch

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

&gt;&gt;&gt;&gt; Source/WebCore/editing/FrameSelection.cpp:1944
&gt;&gt;&gt;&gt; +    RefPtr&lt;ContainerNode&gt; ownerElementParent = ownerElement-&gt;parentNode();
&gt;&gt;&gt; 
&gt;&gt;&gt; Use makeRefPtr?
&gt;&gt; 
&gt;&gt; This needs to be cast to RefPtr&lt;ContainerNode&gt;. Not sure how we do that in our code... or maybe you mean adding makeRefPtr in any case?
&gt; 
&gt; I&apos;m confused. Given Node::parentNode() returns ContainerNode, calling makeRefPtr will surely make it RefPtr&lt;ContainerNode&gt;?

OK, I stand corrected. I had build errors when I tried yesterday, but probably that was something else. Will update the patch and land it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761105</commentid>
    <comment_count>9</comment_count>
      <attachid>428923</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-05-18 02:34:32 -0700</bug_when>
    <thetext>Created attachment 428923
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761108</commentid>
    <comment_count>10</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-05-18 03:01:34 -0700</bug_when>
    <thetext>Committed r277647 (237853@main): &lt;https://commits.webkit.org/237853@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 428923.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428915</attachid>
            <date>2021-05-17 23:11:27 -0700</date>
            <delta_ts>2021-05-18 01:49:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>0001-Bug-225908-Use-RefPtr-for-local-ref-counted-objects-.patch</filename>
            <type>text/plain</type>
            <size>4696</size>
            <attacher name="Frédéric Wang Nélar">fred.wang</attacher>
            
              <data encoding="base64">RnJvbSBiZjM3NjM4NmNkMWM2OWM0YTM5MTcwYjIxNTRkMTMyZDE3YmY1NDZhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/RnI9QzM9QTlkPUMzPUE5cmljPTIwV2FuZz89
IDxmd2FuZ0BpZ2FsaWEuY29tPgpEYXRlOiBUdWUsIDE4IE1heSAyMDIxIDA4OjA5OjIwICswMjAw
ClN1YmplY3Q6IFtQQVRDSF0gQnVnIDIyNTkwOCAtIFVzZSBSZWZQdHIgZm9yIGxvY2FsIHJlZiBj
b3VudGVkIG9iamVjdHMgb2YKIEZyYW1lU2VsZWN0aW9uOjpzZXRTZWxlY3Rpb25XaXRob3V0VXBk
YXRpbmdBcHBlYXJhbmNlCgotLS0KIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAg
ICAgICAgIHwgMjQgKysrKysrKysrKysrKysrKysrKysrKysKIFNvdXJjZS9XZWJDb3JlL2VkaXRp
bmcvRnJhbWVTZWxlY3Rpb24uY3BwIHwgMTIgKysrKysrLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQs
IDMwIGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDIxOWNlNzFm
OTYuLjhjMTgzMGI0MTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNyBAQAorMjAyMS0wNS0xNyAg
RnJlZGVyaWMgV2FuZyAgPGZ3YW5nQGlnYWxpYS5jb20+CisKKyAgICAgICAgVXNlIFJlZlB0ciBm
b3IgbG9jYWwgcmVmIGNvdW50ZWQgb2JqZWN0cyBvZiBGcmFtZVNlbGVjdGlvbjo6c2V0U2VsZWN0
aW9uV2l0aG91dFVwZGF0aW5nQXBwZWFyYW5jZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1OTA4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQSBwcmV2aW91cyBwYXRjaCBtb2RpZmllZCBzZXRTZWxlY3Rp
b25XaXRob3V0VXBkYXRpbmdBcHBlYXJhbmNlIHRvIHRha2UgaW50byBhY2NvdW50IG9uZQorICAg
ICAgICBwb3NzaWJsZSBET00gbXV0YXRpb24gYWZ0ZXIgZm9jdXMgY2hhbmdlLiBUaGlzIGlzIGEg
Zm9sbG93LXVwIHBhdGNoIGFwcGx5aW5nIHJlY29tbWVuZGF0aW9uCisgICAgICAgIGZyb20gaHR0
cHM6Ly9saXN0cy53ZWJraXQub3JnL3BpcGVybWFpbC93ZWJraXQtZGV2LzIwMjAtU2VwdGVtYmVy
LzAzMTM4Ni5odG1sIGV2ZW50IGlmIGl0IGlzCisgICAgICAgIG5vdCBvYnZpb3VzIHdoZXRoZXIg
YW55IG9mIHRoZSBjdXJyZW50IHVzZXMgaXMgZGFuZ2Vyb3VzLgorCisgICAgICAgIE5vIG5ldyB0
ZXN0cy4KKworICAgICAgICAqIGVkaXRpbmcvRnJhbWVTZWxlY3Rpb24uY3BwOgorICAgICAgICAo
V2ViQ29yZTo6RnJhbWVTZWxlY3Rpb246OnNlbGVjdEZyYW1lRWxlbWVudEluUGFyZW50SWZGdWxs
eVNlbGVjdGVkKTogVXNlIFJlZlB0ciBmb3IgdGhlCisgICAgICAgIGZvbGxvd2luZyB2YXJpYWJs
ZXM6CisgICAgICAgIC0gcGFyZW50OiB1c2VkIGluIHRoZSBub24tdHJpdmlhbCBzZXRGb2N1c2Vk
RnJhbWUgZnVuY3Rpb24gKHdoZXJlIGl0IGlzIGhvd2V2ZXIgaW1tZWRpYXRlbHkKKyAgICAgICAg
c3RvcmVkIGluIGEgUmVmUHRyKS4KKyAgICAgICAgLSBvd25lckVsZW1lbnQ6IHVzZWQgaW4gdGhl
IG5vbi10cml2aWFsIGZ1bmN0aW9uIGNvbXB1dGVOb2RlSW5kZXggKHdoaWNoIGhvd2V2ZXIgb25s
eQorICAgICAgICBwZXJmb3JtcyBzaW1wbGUgdHJlZSBuYXZpZ2F0aW9uKS4KKyAgICAgICAgLSBv
d25lckVsZW1lbnRQYXJlbnQ6IHVzZWQgYXMgYSB0aGlzIG9mIHRoZSBub24tdHJpdmlhbCBmdW5j
dGlvbiBoYXNFZGl0YWJsZVN0eWxlICh3aGljaAorICAgICAgICBob3dldmVyIGRvZXMgbm90IHVw
ZGF0ZSBzdHlsZSB3aGVuIGNvbXB1dGluZyBlZGl0YWJpbGl0eSkuCisKIDIwMjEtMDUtMTcgIEZy
ZWRlcmljIFdhbmcgIDxmd2FuZ0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFNIT1VMRCBORVZFUiBC
RSBSRUFDSEVEIGluIEZyYW1lU2VsZWN0aW9uOjpzZXRTZWxlY3Rpb25XaXRob3V0VXBkYXRpbmdB
cHBlYXJhbmNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0
aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRnJhbWVTZWxlY3Rpb24uY3BwCmluZGV4
IDhlOTQ1YWFiOTMuLjIxZGU1M2M0NzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRp
bmcvRnJhbWVTZWxlY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRnJhbWVT
ZWxlY3Rpb24uY3BwCkBAIC0xOTIyLDcgKzE5MjIsNyBAQCBib29sIEZyYW1lU2VsZWN0aW9uOjpj
b250YWlucyhjb25zdCBMYXlvdXRQb2ludCYgcG9pbnQpIGNvbnN0CiB2b2lkIEZyYW1lU2VsZWN0
aW9uOjpzZWxlY3RGcmFtZUVsZW1lbnRJblBhcmVudElmRnVsbHlTZWxlY3RlZCgpCiB7CiAgICAg
Ly8gRmluZCB0aGUgcGFyZW50IGZyYW1lOyBpZiB0aGVyZSBpcyBub25lLCB0aGVuIHdlIGhhdmUg
bm90aGluZyB0byBkby4KLSAgICBGcmFtZSogcGFyZW50ID0gbV9kb2N1bWVudC0+ZnJhbWUoKS0+
dHJlZSgpLnBhcmVudCgpOworICAgIGF1dG8gcGFyZW50ID0gbWFrZVJlZlB0cihtX2RvY3VtZW50
LT5mcmFtZSgpLT50cmVlKCkucGFyZW50KCkpOwogICAgIGlmICghcGFyZW50KQogICAgICAgICBy
ZXR1cm47CiAgICAgUGFnZSogcGFnZSA9IG1fZG9jdW1lbnQtPnBhZ2UoKTsKQEAgLTE5MzgsMTAg
KzE5MzgsMTAgQEAgdm9pZCBGcmFtZVNlbGVjdGlvbjo6c2VsZWN0RnJhbWVFbGVtZW50SW5QYXJl
bnRJZkZ1bGx5U2VsZWN0ZWQoKQogICAgICAgICByZXR1cm47CiAKICAgICAvLyBHZXQgdG8gdGhl
IDxpZnJhbWU+IG9yIDxmcmFtZT4gKG9yIGV2ZW4gPG9iamVjdD4pIGVsZW1lbnQgaW4gdGhlIHBh
cmVudCBmcmFtZS4KLSAgICBFbGVtZW50KiBvd25lckVsZW1lbnQgPSBtX2RvY3VtZW50LT5vd25l
ckVsZW1lbnQoKTsKKyAgICBhdXRvIG93bmVyRWxlbWVudCA9IG1ha2VSZWZQdHIobV9kb2N1bWVu
dC0+b3duZXJFbGVtZW50KCkpOwogICAgIGlmICghb3duZXJFbGVtZW50KQogICAgICAgICByZXR1
cm47Ci0gICAgQ29udGFpbmVyTm9kZSogb3duZXJFbGVtZW50UGFyZW50ID0gb3duZXJFbGVtZW50
LT5wYXJlbnROb2RlKCk7CisgICAgUmVmUHRyPENvbnRhaW5lck5vZGU+IG93bmVyRWxlbWVudFBh
cmVudCA9IG93bmVyRWxlbWVudC0+cGFyZW50Tm9kZSgpOwogICAgIGlmICghb3duZXJFbGVtZW50
UGFyZW50KQogICAgICAgICByZXR1cm47CiAgICAgICAgIApAQCAtMTk1MSwxMyArMTk1MSwxMyBA
QCB2b2lkIEZyYW1lU2VsZWN0aW9uOjpzZWxlY3RGcmFtZUVsZW1lbnRJblBhcmVudElmRnVsbHlT
ZWxlY3RlZCgpCiAKICAgICAvLyBDcmVhdGUgY29tcHV0ZSBwb3NpdGlvbnMgYmVmb3JlIGFuZCBh
ZnRlciB0aGUgZWxlbWVudC4KICAgICB1bnNpZ25lZCBvd25lckVsZW1lbnROb2RlSW5kZXggPSBv
d25lckVsZW1lbnQtPmNvbXB1dGVOb2RlSW5kZXgoKTsKLSAgICBWaXNpYmxlUG9zaXRpb24gYmVm
b3JlT3duZXJFbGVtZW50KFZpc2libGVQb3NpdGlvbihQb3NpdGlvbihvd25lckVsZW1lbnRQYXJl
bnQsIG93bmVyRWxlbWVudE5vZGVJbmRleCwgUG9zaXRpb246OlBvc2l0aW9uSXNPZmZzZXRJbkFu
Y2hvcikpKTsKLSAgICBWaXNpYmxlUG9zaXRpb24gYWZ0ZXJPd25lckVsZW1lbnQoVmlzaWJsZVBv
c2l0aW9uKFBvc2l0aW9uKG93bmVyRWxlbWVudFBhcmVudCwgb3duZXJFbGVtZW50Tm9kZUluZGV4
ICsgMSwgUG9zaXRpb246OlBvc2l0aW9uSXNPZmZzZXRJbkFuY2hvciksIEFmZmluaXR5OjpVcHN0
cmVhbSkpOworICAgIFZpc2libGVQb3NpdGlvbiBiZWZvcmVPd25lckVsZW1lbnQoVmlzaWJsZVBv
c2l0aW9uKFBvc2l0aW9uKG93bmVyRWxlbWVudFBhcmVudC5nZXQoKSwgb3duZXJFbGVtZW50Tm9k
ZUluZGV4LCBQb3NpdGlvbjo6UG9zaXRpb25Jc09mZnNldEluQW5jaG9yKSkpOworICAgIFZpc2li
bGVQb3NpdGlvbiBhZnRlck93bmVyRWxlbWVudChWaXNpYmxlUG9zaXRpb24oUG9zaXRpb24ob3du
ZXJFbGVtZW50UGFyZW50LmdldCgpLCBvd25lckVsZW1lbnROb2RlSW5kZXggKyAxLCBQb3NpdGlv
bjo6UG9zaXRpb25Jc09mZnNldEluQW5jaG9yKSwgQWZmaW5pdHk6OlVwc3RyZWFtKSk7CiAKICAg
ICAvLyBGb2N1cyBvbiB0aGUgcGFyZW50IGZyYW1lLCBhbmQgdGhlbiBzZWxlY3QgZnJvbSBiZWZv
cmUgdGhpcyBlbGVtZW50IHRvIGFmdGVyLgogICAgIFZpc2libGVTZWxlY3Rpb24gbmV3U2VsZWN0
aW9uKGJlZm9yZU93bmVyRWxlbWVudCwgYWZ0ZXJPd25lckVsZW1lbnQpOwogICAgIGlmIChwYXJl
bnQtPnNlbGVjdGlvbigpLnNob3VsZENoYW5nZVNlbGVjdGlvbihuZXdTZWxlY3Rpb24pKSB7Ci0g
ICAgICAgIHBhZ2UtPmZvY3VzQ29udHJvbGxlcigpLnNldEZvY3VzZWRGcmFtZShwYXJlbnQpOwor
ICAgICAgICBwYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5zZXRGb2N1c2VkRnJhbWUocGFyZW50Lmdl
dCgpKTsKICAgICAgICAgLy8gUHJldmlvdXMgZm9jdXMgY2FuIHRyaWdnZXIgRE9NIGV2ZW50cywg
ZW5zdXJlIHRoZSBzZWxlY3Rpb24gZGlkIG5vdCBiZWNvbWUgb3JwaGFuLgogICAgICAgICBpZiAo
bmV3U2VsZWN0aW9uLmlzT3JwaGFuKCkpCiAgICAgICAgICAgICBwYXJlbnQtPnNlbGVjdGlvbigp
LmNsZWFyKCk7Ci0tIAoyLjI1LjEKCg==
</data>
<flag name="review"
          id="449977"
          type_id="1"
          status="+"
          setter="rniwa"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428923</attachid>
            <date>2021-05-18 02:34:32 -0700</date>
            <delta_ts>2021-05-18 03:01:35 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>0001-Bug-225908-Use-RefPtr-for-local-ref-counted-objects-.patch</filename>
            <type>text/plain</type>
            <size>4689</size>
            <attacher name="Frédéric Wang Nélar">fred.wang</attacher>
            
              <data encoding="base64">RnJvbSBiZjM3NjM4NmNkMWM2OWM0YTM5MTcwYjIxNTRkMTMyZDE3YmY1NDZhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/RnI9QzM9QTlkPUMzPUE5cmljPTIwV2FuZz89
IDxmd2FuZ0BpZ2FsaWEuY29tPgpEYXRlOiBUdWUsIDE4IE1heSAyMDIxIDA4OjA5OjIwICswMjAw
ClN1YmplY3Q6IFtQQVRDSF0gQnVnIDIyNTkwOCAtIFVzZSBSZWZQdHIgZm9yIGxvY2FsIHJlZiBj
b3VudGVkIG9iamVjdHMgb2YKIEZyYW1lU2VsZWN0aW9uOjpzZXRTZWxlY3Rpb25XaXRob3V0VXBk
YXRpbmdBcHBlYXJhbmNlCgotLS0KIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAg
ICAgICAgIHwgMjQgKysrKysrKysrKysrKysrKysrKysrKysKIFNvdXJjZS9XZWJDb3JlL2VkaXRp
bmcvRnJhbWVTZWxlY3Rpb24uY3BwIHwgMTIgKysrKysrLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQs
IDMwIGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDIxOWNlNzFm
OTYuLjhjMTgzMGI0MTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNyBAQAorMjAyMS0wNS0xNyAg
RnJlZGVyaWMgV2FuZyAgPGZ3YW5nQGlnYWxpYS5jb20+CisKKyAgICAgICAgVXNlIFJlZlB0ciBm
b3IgbG9jYWwgcmVmIGNvdW50ZWQgb2JqZWN0cyBvZiBGcmFtZVNlbGVjdGlvbjo6c2V0U2VsZWN0
aW9uV2l0aG91dFVwZGF0aW5nQXBwZWFyYW5jZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1OTA4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgUnlvc3Vr
ZSBOaXdhLgorCisgICAgICAgIEEgcHJldmlvdXMgcGF0Y2ggbW9kaWZpZWQgc2V0U2VsZWN0aW9u
V2l0aG91dFVwZGF0aW5nQXBwZWFyYW5jZSB0byB0YWtlIGludG8gYWNjb3VudCBvbmUKKyAgICAg
ICAgcG9zc2libGUgRE9NIG11dGF0aW9uIGFmdGVyIGZvY3VzIGNoYW5nZS4gVGhpcyBpcyBhIGZv
bGxvdy11cCBwYXRjaCBhcHBseWluZyByZWNvbW1lbmRhdGlvbgorICAgICAgICBmcm9tIGh0dHBz
Oi8vbGlzdHMud2Via2l0Lm9yZy9waXBlcm1haWwvd2Via2l0LWRldi8yMDIwLVNlcHRlbWJlci8w
MzEzODYuaHRtbCBldmVudCBpZiBpdCBpcworICAgICAgICBub3Qgb2J2aW91cyB3aGV0aGVyIGFu
eSBvZiB0aGUgY3VycmVudCB1c2VzIGlzIGRhbmdlcm91cy4KKworICAgICAgICBObyBuZXcgdGVz
dHMuCisKKyAgICAgICAgKiBlZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkZyYW1lU2VsZWN0aW9uOjpzZWxlY3RGcmFtZUVsZW1lbnRJblBhcmVudElmRnVsbHlT
ZWxlY3RlZCk6IFVzZSBSZWZQdHIgZm9yIHRoZQorICAgICAgICBmb2xsb3dpbmcgdmFyaWFibGVz
OgorICAgICAgICAtIHBhcmVudDogdXNlZCBpbiB0aGUgbm9uLXRyaXZpYWwgc2V0Rm9jdXNlZEZy
YW1lIGZ1bmN0aW9uICh3aGVyZSBpdCBpcyBob3dldmVyIGltbWVkaWF0ZWx5CisgICAgICAgIHN0
b3JlZCBpbiBhIFJlZlB0cikuCisgICAgICAgIC0gb3duZXJFbGVtZW50OiB1c2VkIGluIHRoZSBu
b24tdHJpdmlhbCBmdW5jdGlvbiBjb21wdXRlTm9kZUluZGV4ICh3aGljaCBob3dldmVyIG9ubHkK
KyAgICAgICAgcGVyZm9ybXMgc2ltcGxlIHRyZWUgbmF2aWdhdGlvbikuCisgICAgICAgIC0gb3du
ZXJFbGVtZW50UGFyZW50OiB1c2VkIGFzIGEgdGhpcyBvZiB0aGUgbm9uLXRyaXZpYWwgZnVuY3Rp
b24gaGFzRWRpdGFibGVTdHlsZSAod2hpY2gKKyAgICAgICAgaG93ZXZlciBkb2VzIG5vdCB1cGRh
dGUgc3R5bGUgd2hlbiBjb21wdXRpbmcgZWRpdGFiaWxpdHkpLgorCiAyMDIxLTA1LTE3ICBGcmVk
ZXJpYyBXYW5nICA8ZndhbmdAaWdhbGlhLmNvbT4KIAogICAgICAgICBTSE9VTEQgTkVWRVIgQkUg
UkVBQ0hFRCBpbiBGcmFtZVNlbGVjdGlvbjo6c2V0U2VsZWN0aW9uV2l0aG91dFVwZGF0aW5nQXBw
ZWFyYW5jZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9GcmFtZVNlbGVjdGlv
bi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcAppbmRleCA4
ZTk0NWFhYjkzLi4yMWRlNTNjNDcwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5n
L0ZyYW1lU2VsZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2Vs
ZWN0aW9uLmNwcApAQCAtMTkyMiw3ICsxOTIyLDcgQEAgYm9vbCBGcmFtZVNlbGVjdGlvbjo6Y29u
dGFpbnMoY29uc3QgTGF5b3V0UG9pbnQmIHBvaW50KSBjb25zdAogdm9pZCBGcmFtZVNlbGVjdGlv
bjo6c2VsZWN0RnJhbWVFbGVtZW50SW5QYXJlbnRJZkZ1bGx5U2VsZWN0ZWQoKQogewogICAgIC8v
IEZpbmQgdGhlIHBhcmVudCBmcmFtZTsgaWYgdGhlcmUgaXMgbm9uZSwgdGhlbiB3ZSBoYXZlIG5v
dGhpbmcgdG8gZG8uCi0gICAgRnJhbWUqIHBhcmVudCA9IG1fZG9jdW1lbnQtPmZyYW1lKCktPnRy
ZWUoKS5wYXJlbnQoKTsKKyAgICBhdXRvIHBhcmVudCA9IG1ha2VSZWZQdHIobV9kb2N1bWVudC0+
ZnJhbWUoKS0+dHJlZSgpLnBhcmVudCgpKTsKICAgICBpZiAoIXBhcmVudCkKICAgICAgICAgcmV0
dXJuOwogICAgIFBhZ2UqIHBhZ2UgPSBtX2RvY3VtZW50LT5wYWdlKCk7CkBAIC0xOTM4LDEwICsx
OTM4LDEwIEBAIHZvaWQgRnJhbWVTZWxlY3Rpb246OnNlbGVjdEZyYW1lRWxlbWVudEluUGFyZW50
SWZGdWxseVNlbGVjdGVkKCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgLy8gR2V0IHRvIHRoZSA8
aWZyYW1lPiBvciA8ZnJhbWU+IChvciBldmVuIDxvYmplY3Q+KSBlbGVtZW50IGluIHRoZSBwYXJl
bnQgZnJhbWUuCi0gICAgRWxlbWVudCogb3duZXJFbGVtZW50ID0gbV9kb2N1bWVudC0+b3duZXJF
bGVtZW50KCk7CisgICAgYXV0byBvd25lckVsZW1lbnQgPSBtYWtlUmVmUHRyKG1fZG9jdW1lbnQt
Pm93bmVyRWxlbWVudCgpKTsKICAgICBpZiAoIW93bmVyRWxlbWVudCkKICAgICAgICAgcmV0dXJu
OwotICAgIENvbnRhaW5lck5vZGUqIG93bmVyRWxlbWVudFBhcmVudCA9IG93bmVyRWxlbWVudC0+
cGFyZW50Tm9kZSgpOworICAgIGF1dG8gb3duZXJFbGVtZW50UGFyZW50ID0gbWFrZVJlZlB0cihv
d25lckVsZW1lbnQtPnBhcmVudE5vZGUoKSk7CiAgICAgaWYgKCFvd25lckVsZW1lbnRQYXJlbnQp
CiAgICAgICAgIHJldHVybjsKICAgICAgICAgCkBAIC0xOTUxLDEzICsxOTUxLDEzIEBAIHZvaWQg
RnJhbWVTZWxlY3Rpb246OnNlbGVjdEZyYW1lRWxlbWVudEluUGFyZW50SWZGdWxseVNlbGVjdGVk
KCkKIAogICAgIC8vIENyZWF0ZSBjb21wdXRlIHBvc2l0aW9ucyBiZWZvcmUgYW5kIGFmdGVyIHRo
ZSBlbGVtZW50LgogICAgIHVuc2lnbmVkIG93bmVyRWxlbWVudE5vZGVJbmRleCA9IG93bmVyRWxl
bWVudC0+Y29tcHV0ZU5vZGVJbmRleCgpOwotICAgIFZpc2libGVQb3NpdGlvbiBiZWZvcmVPd25l
ckVsZW1lbnQoVmlzaWJsZVBvc2l0aW9uKFBvc2l0aW9uKG93bmVyRWxlbWVudFBhcmVudCwgb3du
ZXJFbGVtZW50Tm9kZUluZGV4LCBQb3NpdGlvbjo6UG9zaXRpb25Jc09mZnNldEluQW5jaG9yKSkp
OwotICAgIFZpc2libGVQb3NpdGlvbiBhZnRlck93bmVyRWxlbWVudChWaXNpYmxlUG9zaXRpb24o
UG9zaXRpb24ob3duZXJFbGVtZW50UGFyZW50LCBvd25lckVsZW1lbnROb2RlSW5kZXggKyAxLCBQ
b3NpdGlvbjo6UG9zaXRpb25Jc09mZnNldEluQW5jaG9yKSwgQWZmaW5pdHk6OlVwc3RyZWFtKSk7
CisgICAgVmlzaWJsZVBvc2l0aW9uIGJlZm9yZU93bmVyRWxlbWVudChWaXNpYmxlUG9zaXRpb24o
UG9zaXRpb24ob3duZXJFbGVtZW50UGFyZW50LmdldCgpLCBvd25lckVsZW1lbnROb2RlSW5kZXgs
IFBvc2l0aW9uOjpQb3NpdGlvbklzT2Zmc2V0SW5BbmNob3IpKSk7CisgICAgVmlzaWJsZVBvc2l0
aW9uIGFmdGVyT3duZXJFbGVtZW50KFZpc2libGVQb3NpdGlvbihQb3NpdGlvbihvd25lckVsZW1l
bnRQYXJlbnQuZ2V0KCksIG93bmVyRWxlbWVudE5vZGVJbmRleCArIDEsIFBvc2l0aW9uOjpQb3Np
dGlvbklzT2Zmc2V0SW5BbmNob3IpLCBBZmZpbml0eTo6VXBzdHJlYW0pKTsKIAogICAgIC8vIEZv
Y3VzIG9uIHRoZSBwYXJlbnQgZnJhbWUsIGFuZCB0aGVuIHNlbGVjdCBmcm9tIGJlZm9yZSB0aGlz
IGVsZW1lbnQgdG8gYWZ0ZXIuCiAgICAgVmlzaWJsZVNlbGVjdGlvbiBuZXdTZWxlY3Rpb24oYmVm
b3JlT3duZXJFbGVtZW50LCBhZnRlck93bmVyRWxlbWVudCk7CiAgICAgaWYgKHBhcmVudC0+c2Vs
ZWN0aW9uKCkuc2hvdWxkQ2hhbmdlU2VsZWN0aW9uKG5ld1NlbGVjdGlvbikpIHsKLSAgICAgICAg
cGFnZS0+Zm9jdXNDb250cm9sbGVyKCkuc2V0Rm9jdXNlZEZyYW1lKHBhcmVudCk7CisgICAgICAg
IHBhZ2UtPmZvY3VzQ29udHJvbGxlcigpLnNldEZvY3VzZWRGcmFtZShwYXJlbnQuZ2V0KCkpOwog
ICAgICAgICAvLyBQcmV2aW91cyBmb2N1cyBjYW4gdHJpZ2dlciBET00gZXZlbnRzLCBlbnN1cmUg
dGhlIHNlbGVjdGlvbiBkaWQgbm90IGJlY29tZSBvcnBoYW4uCiAgICAgICAgIGlmIChuZXdTZWxl
Y3Rpb24uaXNPcnBoYW4oKSkKICAgICAgICAgICAgIHBhcmVudC0+c2VsZWN0aW9uKCkuY2xlYXIo
KTsKLS0gCjIuMjUuMQoK
</data>

          </attachment>
      

    </bug>

</bugzilla>