<?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>215913</bug_id>
          
          <creation_ts>2020-08-27 23:18:52 -0700</creation_ts>
          <short_desc>TextManipulationController should use weak pointers to Node</short_desc>
          <delta_ts>2021-04-12 21:19:26 -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>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=215914</see_also>
          <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="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>cdumez</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>kangil.han</cc>
    
    <cc>mifenton</cc>
    
    <cc>sihui_liu</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1683589</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2020-08-27 23:18:52 -0700</bug_when>
    <thetext>Now that https://trac.webkit.org/r266212 has been landed, use it in TextManipulationController.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1685564</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-09-03 23:19:14 -0700</bug_when>
    <thetext>&lt;rdar://problem/68325953&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749508</commentid>
    <comment_count>2</comment_count>
      <attachid>425823</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-04-12 19:33:49 -0700</bug_when>
    <thetext>Created attachment 425823
Use WeakHashSet</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749509</commentid>
    <comment_count>3</comment_count>
      <attachid>425823</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-04-12 19:48:56 -0700</bug_when>
    <thetext>Comment on attachment 425823
Use WeakHashSet

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

&gt; Source/WebCore/editing/TextManipulationController.cpp:934
&gt;  void TextManipulationController::removeNode(Node* node)

I&apos;ll make this take Node&amp; as we discussed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749517</commentid>
    <comment_count>4</comment_count>
      <attachid>425827</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-04-12 20:44:52 -0700</bug_when>
    <thetext>Created attachment 425827
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749521</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-12 21:19:24 -0700</bug_when>
    <thetext>Committed r275859 (236424@main): &lt;https://commits.webkit.org/236424@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 425827.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425823</attachid>
            <date>2021-04-12 19:33:49 -0700</date>
            <delta_ts>2021-04-12 20:44:50 -0700</delta_ts>
            <desc>Use WeakHashSet</desc>
            <filename>bug-215913-20210412193348.patch</filename>
            <type>text/plain</type>
            <size>5608</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1ODUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2Y5YjAxMjI1NjliMGVm
MDdlNjBhN2IwZGVkZGJmOWU0YTg4ZmJlNS4uZDM0ZTA2OWRkN2E1YjBhNWNiY2NjNDQ3MTdiZjE1
MGVjNzhhNjE0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDIxLTA0LTEyICBSeW9z
dWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIFRleHRNYW5pcHVsYXRpb25D
b250cm9sbGVyIHNob3VsZCB1c2Ugd2VhayBwb2ludGVycyB0byBOb2RlCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU5MTMKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVc2UgV2Vha0hhc2hTZXQgZm9yIG1f
bWFuaXB1bGF0ZWRUZXh0c1dpdGhOZXdDb250ZW50LCBtX3RleHROb2Rlc1dpdGhOZXdSZW5kZXJl
ciwgYW5kIG1fbWFuaXB1bGF0ZWROb2Rlcy4KKworICAgICAgICAqIGVkaXRpbmcvVGV4dE1hbmlw
dWxhdGlvbkNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VGV4dE1hbmlwdWxhdGlv
bkNvbnRyb2xsZXI6Om9ic2VydmVQYXJhZ3JhcGhzKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRN
YW5pcHVsYXRpb25Db250cm9sbGVyOjpkaWRDcmVhdGVSZW5kZXJlckZvckVsZW1lbnQpOgorICAg
ICAgICAoV2ViQ29yZTo6VGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXI6OmRpZFVwZGF0ZUNvbnRl
bnRGb3JUZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRNYW5pcHVsYXRpb25Db250cm9sbGVy
OjpkaWRDcmVhdGVSZW5kZXJlckZvclRleHROb2RlKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRN
YW5pcHVsYXRpb25Db250cm9sbGVyOjpzY2hlZHVsZU9ic2VydmF0aW9uVXBkYXRlKToKKyAgICAg
ICAgKFdlYkNvcmU6OlRleHRNYW5pcHVsYXRpb25Db250cm9sbGVyOjpyZXBsYWNlKToKKyAgICAg
ICAgKFdlYkNvcmU6OlRleHRNYW5pcHVsYXRpb25Db250cm9sbGVyOjpyZW1vdmVOb2RlKToKKyAg
ICAgICAgKiBlZGl0aW5nL1RleHRNYW5pcHVsYXRpb25Db250cm9sbGVyLmg6CisKIDIwMjEtMDQt
MTIgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2Vk
LCByZXZlcnRpbmcgcjI3NTc2MS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcv
VGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9U
ZXh0TWFuaXB1bGF0aW9uQ29udHJvbGxlci5jcHAKaW5kZXggNDlhNWNmZjM2MjE0YWFhNjg3Y2E4
Y2I0Y2M3NjNiMzNiNGExNjY4OS4uYWU0OTU1ZDYyNzU1ODM5MmUwNDkwOTRmMjc1Mzg2NTczZGY5
ZDEyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9UZXh0TWFuaXB1bGF0aW9u
Q29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9UZXh0TWFuaXB1bGF0
aW9uQ29udHJvbGxlci5jcHAKQEAgLTQ3NSw3ICs0NzUsNyBAQCB2b2lkIFRleHRNYW5pcHVsYXRp
b25Db250cm9sbGVyOjpvYnNlcnZlUGFyYWdyYXBocyhjb25zdCBQb3NpdGlvbiYgc3RhcnQsIGNv
bnN0CiAgICAgICAgICAgICBlbmNsb3NpbmdJdGVtQm91bmRhcnlFbGVtZW50cy5yZW1vdmVMYXN0
KCk7CiAgICAgICAgIH0KIAotICAgICAgICBpZiAobV9tYW5pcHVsYXRlZE5vZGVzLmNvbnRhaW5z
KGNvbnRlbnROb2RlKSkgeworICAgICAgICBpZiAobV9tYW5pcHVsYXRlZE5vZGVzLmNvbnRhaW5z
KCpjb250ZW50Tm9kZSkpIHsKICAgICAgICAgICAgIGFkZEl0ZW1JZlBvc3NpYmxlKHN0ZDo6ZXhj
aGFuZ2UodW5pdHNJbkN1cnJlbnRQYXJhZ3JhcGgsIHsgfSkpOwogICAgICAgICAgICAgY29udGlu
dWU7CiAgICAgICAgIH0KQEAgLTUzMiw3ICs1MzIsNyBAQCB2b2lkIFRleHRNYW5pcHVsYXRpb25D
b250cm9sbGVyOjpvYnNlcnZlUGFyYWdyYXBocyhjb25zdCBQb3NpdGlvbiYgc3RhcnQsIGNvbnN0
CiAKIHZvaWQgVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXI6OmRpZENyZWF0ZVJlbmRlcmVyRm9y
RWxlbWVudChFbGVtZW50JiBlbGVtZW50KQogewotICAgIGlmIChtX21hbmlwdWxhdGVkTm9kZXMu
Y29udGFpbnMoJmVsZW1lbnQpKQorICAgIGlmIChtX21hbmlwdWxhdGVkTm9kZXMuY29udGFpbnMo
ZWxlbWVudCkpCiAgICAgICAgIHJldHVybjsKIAogICAgIHNjaGVkdWxlT2JzZXJ2YXRpb25VcGRh
dGUoKTsKQEAgLTU0NiwyMiArNTQ2LDIyIEBAIHZvaWQgVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xs
ZXI6OmRpZENyZWF0ZVJlbmRlcmVyRm9yRWxlbWVudChFbGVtZW50JiBlbGVtZW50KQogCiB2b2lk
IFRleHRNYW5pcHVsYXRpb25Db250cm9sbGVyOjpkaWRVcGRhdGVDb250ZW50Rm9yVGV4dChUZXh0
JiB0ZXh0KQogewotICAgIGlmICghbV9tYW5pcHVsYXRlZE5vZGVzLmNvbnRhaW5zKCZ0ZXh0KSkK
KyAgICBpZiAoIW1fbWFuaXB1bGF0ZWROb2Rlcy5jb250YWlucyh0ZXh0KSkKICAgICAgICAgcmV0
dXJuOwogCiAgICAgc2NoZWR1bGVPYnNlcnZhdGlvblVwZGF0ZSgpOwogCi0gICAgbV9tYW5pcHVs
YXRlZFRleHRzV2l0aE5ld0NvbnRlbnQuYWRkKCZ0ZXh0KTsKKyAgICBtX21hbmlwdWxhdGVkVGV4
dHNXaXRoTmV3Q29udGVudC5hZGQodGV4dCk7CiB9CiAKIHZvaWQgVGV4dE1hbmlwdWxhdGlvbkNv
bnRyb2xsZXI6OmRpZENyZWF0ZVJlbmRlcmVyRm9yVGV4dE5vZGUoVGV4dCYgdGV4dCkKIHsKLSAg
ICBpZiAobV9tYW5pcHVsYXRlZE5vZGVzLmNvbnRhaW5zKCZ0ZXh0KSkKKyAgICBpZiAobV9tYW5p
cHVsYXRlZE5vZGVzLmNvbnRhaW5zKHRleHQpKQogICAgICAgICByZXR1cm47CiAKICAgICBzY2hl
ZHVsZU9ic2VydmF0aW9uVXBkYXRlKCk7CiAKLSAgICBtX3RleHROb2Rlc1dpdGhOZXdSZW5kZXJl
ci5hZGQoJnRleHQpOworICAgIG1fdGV4dE5vZGVzV2l0aE5ld1JlbmRlcmVyLmFkZCh0ZXh0KTsK
IH0KIAogdm9pZCBUZXh0TWFuaXB1bGF0aW9uQ29udHJvbGxlcjo6c2NoZWR1bGVPYnNlcnZhdGlv
blVwZGF0ZSgpCkBAIC01ODYsMTYgKzU4NiwxNiBAQCB2b2lkIFRleHRNYW5pcHVsYXRpb25Db250
cm9sbGVyOjpzY2hlZHVsZU9ic2VydmF0aW9uVXBkYXRlKCkKICAgICAgICAgICAgIG5vZGVzVG9P
YnNlcnZlLmFkZCh3ZWFrRWxlbWVudCk7CiAgICAgICAgIGNvbnRyb2xsZXItPm1fZWxlbWVudHNX
aXRoTmV3UmVuZGVyZXIuY2xlYXIoKTsKIAotICAgICAgICBmb3IgKGF1dG8qIHRleHQgOiBjb250
cm9sbGVyLT5tX21hbmlwdWxhdGVkVGV4dHNXaXRoTmV3Q29udGVudCkgeworICAgICAgICBmb3Ig
KGF1dG8mIHRleHQgOiBjb250cm9sbGVyLT5tX21hbmlwdWxhdGVkVGV4dHNXaXRoTmV3Q29udGVu
dCkgewogICAgICAgICAgICAgaWYgKCFjb250cm9sbGVyLT5tX21hbmlwdWxhdGVkTm9kZXMuY29u
dGFpbnModGV4dCkpCiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICBjb250
cm9sbGVyLT5tX21hbmlwdWxhdGVkTm9kZXMucmVtb3ZlKHRleHQpOwotICAgICAgICAgICAgbm9k
ZXNUb09ic2VydmUuYWRkKCp0ZXh0KTsKKyAgICAgICAgICAgIG5vZGVzVG9PYnNlcnZlLmFkZCh0
ZXh0KTsKICAgICAgICAgfQogICAgICAgICBjb250cm9sbGVyLT5tX21hbmlwdWxhdGVkVGV4dHNX
aXRoTmV3Q29udGVudC5jbGVhcigpOwogCi0gICAgICAgIGZvciAoYXV0byogdGV4dCA6IGNvbnRy
b2xsZXItPm1fdGV4dE5vZGVzV2l0aE5ld1JlbmRlcmVyKQotICAgICAgICAgICAgbm9kZXNUb09i
c2VydmUuYWRkKCp0ZXh0KTsKKyAgICAgICAgZm9yIChhdXRvJiB0ZXh0IDogY29udHJvbGxlci0+
bV90ZXh0Tm9kZXNXaXRoTmV3UmVuZGVyZXIpCisgICAgICAgICAgICBub2Rlc1RvT2JzZXJ2ZS5h
ZGQodGV4dCk7CiAgICAgICAgIGNvbnRyb2xsZXItPm1fdGV4dE5vZGVzV2l0aE5ld1JlbmRlcmVy
LmNsZWFyKCk7CiAKICAgICAgICAgaWYgKG5vZGVzVG9PYnNlcnZlLmlzRW1wdHkoKSkKQEAgLTky
NSw3ICs5MjUsNyBAQCBhdXRvIFRleHRNYW5pcHVsYXRpb25Db250cm9sbGVyOjpyZXBsYWNlKGNv
bnN0IE1hbmlwdWxhdGlvbkl0ZW1EYXRhJiBpdGVtLCBjb25zdAogICAgICAgICB9CiAKICAgICAg
ICAgaWYgKGluc2VydGlvbi5pc0NoaWxkTWFuaXB1bGF0ZWQgPT0gSXNOb2RlTWFuaXB1bGF0ZWQ6
OlllcykKLSAgICAgICAgICAgIG1fbWFuaXB1bGF0ZWROb2Rlcy5hZGQoaW5zZXJ0aW9uLmNoaWxk
LnB0cigpKTsKKyAgICAgICAgICAgIG1fbWFuaXB1bGF0ZWROb2Rlcy5hZGQoaW5zZXJ0aW9uLmNo
aWxkLmdldCgpKTsKICAgICB9CiAKICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwpAQCAtOTMzLDgg
KzkzMyw4IEBAIGF1dG8gVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXI6OnJlcGxhY2UoY29uc3Qg
TWFuaXB1bGF0aW9uSXRlbURhdGEmIGl0ZW0sIGNvbnN0CiAKIHZvaWQgVGV4dE1hbmlwdWxhdGlv
bkNvbnRyb2xsZXI6OnJlbW92ZU5vZGUoTm9kZSogbm9kZSkKIHsKLSAgICBtX21hbmlwdWxhdGVk
Tm9kZXMucmVtb3ZlKG5vZGUpOwotICAgIG1fdGV4dE5vZGVzV2l0aE5ld1JlbmRlcmVyLnJlbW92
ZShub2RlKTsKKyAgICBtX21hbmlwdWxhdGVkTm9kZXMucmVtb3ZlKCpub2RlKTsKKyAgICBtX3Rl
eHROb2Rlc1dpdGhOZXdSZW5kZXJlci5yZW1vdmUoKm5vZGUpOwogfQogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1RleHRNYW5pcHVs
YXRpb25Db250cm9sbGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1RleHRNYW5pcHVsYXRp
b25Db250cm9sbGVyLmgKaW5kZXggZGU3YmU1MzI0ODRmNjE5MWFhZTljNmIxNzYxZjQ3MDk2MmQy
NzBmYi4uZjZmM2QwOGZkMzgwMTkyZThmMjM4MGQzYWRkNzM4ZjMzZjU1ZmUxZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9UZXh0TWFuaXB1bGF0aW9uQ29udHJvbGxlci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXIuaApA
QCAtMTgyLDkgKzE4Miw5IEBAIHByaXZhdGU6CiAKICAgICBXZWFrUHRyPERvY3VtZW50PiBtX2Rv
Y3VtZW50OwogICAgIFdlYWtIYXNoU2V0PEVsZW1lbnQ+IG1fZWxlbWVudHNXaXRoTmV3UmVuZGVy
ZXI7Ci0gICAgSGFzaFNldDxUZXh0Kj4gbV9tYW5pcHVsYXRlZFRleHRzV2l0aE5ld0NvbnRlbnQ7
Ci0gICAgSGFzaFNldDxOb2RlKj4gbV90ZXh0Tm9kZXNXaXRoTmV3UmVuZGVyZXI7Ci0gICAgSGFz
aFNldDxOb2RlKj4gbV9tYW5pcHVsYXRlZE5vZGVzOworICAgIFdlYWtIYXNoU2V0PFRleHQ+IG1f
bWFuaXB1bGF0ZWRUZXh0c1dpdGhOZXdDb250ZW50OworICAgIFdlYWtIYXNoU2V0PE5vZGU+IG1f
dGV4dE5vZGVzV2l0aE5ld1JlbmRlcmVyOworICAgIFdlYWtIYXNoU2V0PE5vZGU+IG1fbWFuaXB1
bGF0ZWROb2RlczsKIAogICAgIEhhc2hNYXA8U3RyaW5nLCBib29sPiBtX2NhY2hlZEZvbnRGYW1p
bHlFeGNsdXNpb25SZXN1bHRzOwogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425827</attachid>
            <date>2021-04-12 20:44:52 -0700</date>
            <delta_ts>2021-04-12 21:19:25 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-215913-20210412204451.patch</filename>
            <type>text/plain</type>
            <size>7014</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1ODUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2Y5YjAxMjI1NjliMGVm
MDdlNjBhN2IwZGVkZGJmOWU0YTg4ZmJlNS4uNjIwNDJhOWU4Yzc4ODYwNzMxNDRkNWViOWE4NzM3
MDAzMTZiODNiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDIxLTA0LTEyICBSeW9z
dWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIFRleHRNYW5pcHVsYXRpb25D
b250cm9sbGVyIHNob3VsZCB1c2Ugd2VhayBwb2ludGVycyB0byBOb2RlCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU5MTMKKworICAgICAgICBSZXZp
ZXdlZCBieSBXZW5zb24gSHNpZWguCisKKyAgICAgICAgVXNlIFdlYWtIYXNoU2V0IGZvciBtX21h
bmlwdWxhdGVkVGV4dHNXaXRoTmV3Q29udGVudCwgbV90ZXh0Tm9kZXNXaXRoTmV3UmVuZGVyZXIs
IGFuZCBtX21hbmlwdWxhdGVkTm9kZXMuCisKKyAgICAgICAgQWxzbyBtYWRlIFRleHRNYW5pcHVs
YXRpb25Db250cm9sbGVyOjpyZW1vdmVOb2RlIHRha2UgTm9kZSYgaW5zdGVhZCBvZiBOb2RlKi4K
KworICAgICAgICAqIGRvbS9Ob2RlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGU6On5Ob2Rl
KToKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGU6Om1vdmVOb2RlVG9OZXdEb2N1bWVudCk6CisgICAg
ICAgICogZWRpdGluZy9UZXh0TWFuaXB1bGF0aW9uQ29udHJvbGxlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpUZXh0TWFuaXB1bGF0aW9uQ29udHJvbGxlcjo6b2JzZXJ2ZVBhcmFncmFwaHMpOgor
ICAgICAgICAoV2ViQ29yZTo6VGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXI6OmRpZENyZWF0ZVJl
bmRlcmVyRm9yRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0TWFuaXB1bGF0aW9uQ29u
dHJvbGxlcjo6ZGlkVXBkYXRlQ29udGVudEZvclRleHQpOgorICAgICAgICAoV2ViQ29yZTo6VGV4
dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXI6OmRpZENyZWF0ZVJlbmRlcmVyRm9yVGV4dE5vZGUpOgor
ICAgICAgICAoV2ViQ29yZTo6VGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXI6OnNjaGVkdWxlT2Jz
ZXJ2YXRpb25VcGRhdGUpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dE1hbmlwdWxhdGlvbkNvbnRy
b2xsZXI6OnJlcGxhY2UpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dE1hbmlwdWxhdGlvbkNvbnRy
b2xsZXI6OnJlbW92ZU5vZGUpOgorICAgICAgICAqIGVkaXRpbmcvVGV4dE1hbmlwdWxhdGlvbkNv
bnRyb2xsZXIuaDoKKwogMjAyMS0wNC0xMiAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29t
PgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJldmVydGluZyByMjc1NzYxLgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvZG9tL05vZGUuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuY3Bw
CmluZGV4IGQ1ZTUwYzAwYzEzMGM1N2Y4Zjc1MzY2ZGIwODQyNWEyY2RlYjFmMzkuLjhmMGY1NDM1
MjJmOGQ5YzU0NDE5MTMwOGRhZWY3YmRiY2Q1MjBhMWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9Ob2RlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5jcHAKQEAgLTM3
MSw3ICszNzEsNyBAQCBOb2RlOjp+Tm9kZSgpCiAKICAgICBhdXRvKiB0ZXh0TWFuaXB1bGF0aW9u
Q29udHJvbGxlciA9IGRvY3VtZW50KCkudGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXJJZkV4aXN0
cygpOwogICAgIGlmIChVTkxJS0VMWSh0ZXh0TWFuaXB1bGF0aW9uQ29udHJvbGxlcikpCi0gICAg
ICAgIHRleHRNYW5pcHVsYXRpb25Db250cm9sbGVyLT5yZW1vdmVOb2RlKHRoaXMpOworICAgICAg
ICB0ZXh0TWFuaXB1bGF0aW9uQ29udHJvbGxlci0+cmVtb3ZlTm9kZSgqdGhpcyk7CiAKICAgICBp
ZiAoIWlzQ29udGFpbmVyTm9kZSgpKQogICAgICAgICB3aWxsQmVEZWxldGVkRnJvbShkb2N1bWVu
dCgpKTsKQEAgLTIwNjYsNyArMjA2Niw3IEBAIHZvaWQgTm9kZTo6bW92ZU5vZGVUb05ld0RvY3Vt
ZW50KERvY3VtZW50JiBvbGREb2N1bWVudCwgRG9jdW1lbnQmIG5ld0RvY3VtZW50KQogCiAgICAg
YXV0byogdGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXIgPSBvbGREb2N1bWVudC50ZXh0TWFuaXB1
bGF0aW9uQ29udHJvbGxlcklmRXhpc3RzKCk7CiAgICAgaWYgKFVOTElLRUxZKHRleHRNYW5pcHVs
YXRpb25Db250cm9sbGVyKSkKLSAgICAgICAgdGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXItPnJl
bW92ZU5vZGUodGhpcyk7CisgICAgICAgIHRleHRNYW5pcHVsYXRpb25Db250cm9sbGVyLT5yZW1v
dmVOb2RlKCp0aGlzKTsKIAogICAgIGlmIChhdXRvKiBldmVudFRhcmdldERhdGEgPSB0aGlzLT5l
dmVudFRhcmdldERhdGEoKSkgewogICAgICAgICBpZiAoIWV2ZW50VGFyZ2V0RGF0YS0+ZXZlbnRM
aXN0ZW5lck1hcC5pc0VtcHR5KCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRp
bmcvVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9UZXh0TWFuaXB1bGF0aW9uQ29udHJvbGxlci5jcHAKaW5kZXggNDlhNWNmZjM2MjE0YWFhNjg3
Y2E4Y2I0Y2M3NjNiMzNiNGExNjY4OS4uNDE5MWI0ZGM4ZDgwY2I4OWRlYTVhODBhMDk3ZWZjMTQw
YjAwNGFjYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9UZXh0TWFuaXB1bGF0
aW9uQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9UZXh0TWFuaXB1
bGF0aW9uQ29udHJvbGxlci5jcHAKQEAgLTQ3NSw3ICs0NzUsNyBAQCB2b2lkIFRleHRNYW5pcHVs
YXRpb25Db250cm9sbGVyOjpvYnNlcnZlUGFyYWdyYXBocyhjb25zdCBQb3NpdGlvbiYgc3RhcnQs
IGNvbnN0CiAgICAgICAgICAgICBlbmNsb3NpbmdJdGVtQm91bmRhcnlFbGVtZW50cy5yZW1vdmVM
YXN0KCk7CiAgICAgICAgIH0KIAotICAgICAgICBpZiAobV9tYW5pcHVsYXRlZE5vZGVzLmNvbnRh
aW5zKGNvbnRlbnROb2RlKSkgeworICAgICAgICBpZiAobV9tYW5pcHVsYXRlZE5vZGVzLmNvbnRh
aW5zKCpjb250ZW50Tm9kZSkpIHsKICAgICAgICAgICAgIGFkZEl0ZW1JZlBvc3NpYmxlKHN0ZDo6
ZXhjaGFuZ2UodW5pdHNJbkN1cnJlbnRQYXJhZ3JhcGgsIHsgfSkpOwogICAgICAgICAgICAgY29u
dGludWU7CiAgICAgICAgIH0KQEAgLTUzMiw3ICs1MzIsNyBAQCB2b2lkIFRleHRNYW5pcHVsYXRp
b25Db250cm9sbGVyOjpvYnNlcnZlUGFyYWdyYXBocyhjb25zdCBQb3NpdGlvbiYgc3RhcnQsIGNv
bnN0CiAKIHZvaWQgVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXI6OmRpZENyZWF0ZVJlbmRlcmVy
Rm9yRWxlbWVudChFbGVtZW50JiBlbGVtZW50KQogewotICAgIGlmIChtX21hbmlwdWxhdGVkTm9k
ZXMuY29udGFpbnMoJmVsZW1lbnQpKQorICAgIGlmIChtX21hbmlwdWxhdGVkTm9kZXMuY29udGFp
bnMoZWxlbWVudCkpCiAgICAgICAgIHJldHVybjsKIAogICAgIHNjaGVkdWxlT2JzZXJ2YXRpb25V
cGRhdGUoKTsKQEAgLTU0NiwyMiArNTQ2LDIyIEBAIHZvaWQgVGV4dE1hbmlwdWxhdGlvbkNvbnRy
b2xsZXI6OmRpZENyZWF0ZVJlbmRlcmVyRm9yRWxlbWVudChFbGVtZW50JiBlbGVtZW50KQogCiB2
b2lkIFRleHRNYW5pcHVsYXRpb25Db250cm9sbGVyOjpkaWRVcGRhdGVDb250ZW50Rm9yVGV4dChU
ZXh0JiB0ZXh0KQogewotICAgIGlmICghbV9tYW5pcHVsYXRlZE5vZGVzLmNvbnRhaW5zKCZ0ZXh0
KSkKKyAgICBpZiAoIW1fbWFuaXB1bGF0ZWROb2Rlcy5jb250YWlucyh0ZXh0KSkKICAgICAgICAg
cmV0dXJuOwogCiAgICAgc2NoZWR1bGVPYnNlcnZhdGlvblVwZGF0ZSgpOwogCi0gICAgbV9tYW5p
cHVsYXRlZFRleHRzV2l0aE5ld0NvbnRlbnQuYWRkKCZ0ZXh0KTsKKyAgICBtX21hbmlwdWxhdGVk
VGV4dHNXaXRoTmV3Q29udGVudC5hZGQodGV4dCk7CiB9CiAKIHZvaWQgVGV4dE1hbmlwdWxhdGlv
bkNvbnRyb2xsZXI6OmRpZENyZWF0ZVJlbmRlcmVyRm9yVGV4dE5vZGUoVGV4dCYgdGV4dCkKIHsK
LSAgICBpZiAobV9tYW5pcHVsYXRlZE5vZGVzLmNvbnRhaW5zKCZ0ZXh0KSkKKyAgICBpZiAobV9t
YW5pcHVsYXRlZE5vZGVzLmNvbnRhaW5zKHRleHQpKQogICAgICAgICByZXR1cm47CiAKICAgICBz
Y2hlZHVsZU9ic2VydmF0aW9uVXBkYXRlKCk7CiAKLSAgICBtX3RleHROb2Rlc1dpdGhOZXdSZW5k
ZXJlci5hZGQoJnRleHQpOworICAgIG1fdGV4dE5vZGVzV2l0aE5ld1JlbmRlcmVyLmFkZCh0ZXh0
KTsKIH0KIAogdm9pZCBUZXh0TWFuaXB1bGF0aW9uQ29udHJvbGxlcjo6c2NoZWR1bGVPYnNlcnZh
dGlvblVwZGF0ZSgpCkBAIC01ODYsMTYgKzU4NiwxNiBAQCB2b2lkIFRleHRNYW5pcHVsYXRpb25D
b250cm9sbGVyOjpzY2hlZHVsZU9ic2VydmF0aW9uVXBkYXRlKCkKICAgICAgICAgICAgIG5vZGVz
VG9PYnNlcnZlLmFkZCh3ZWFrRWxlbWVudCk7CiAgICAgICAgIGNvbnRyb2xsZXItPm1fZWxlbWVu
dHNXaXRoTmV3UmVuZGVyZXIuY2xlYXIoKTsKIAotICAgICAgICBmb3IgKGF1dG8qIHRleHQgOiBj
b250cm9sbGVyLT5tX21hbmlwdWxhdGVkVGV4dHNXaXRoTmV3Q29udGVudCkgeworICAgICAgICBm
b3IgKGF1dG8mIHRleHQgOiBjb250cm9sbGVyLT5tX21hbmlwdWxhdGVkVGV4dHNXaXRoTmV3Q29u
dGVudCkgewogICAgICAgICAgICAgaWYgKCFjb250cm9sbGVyLT5tX21hbmlwdWxhdGVkTm9kZXMu
Y29udGFpbnModGV4dCkpCiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICBj
b250cm9sbGVyLT5tX21hbmlwdWxhdGVkTm9kZXMucmVtb3ZlKHRleHQpOwotICAgICAgICAgICAg
bm9kZXNUb09ic2VydmUuYWRkKCp0ZXh0KTsKKyAgICAgICAgICAgIG5vZGVzVG9PYnNlcnZlLmFk
ZCh0ZXh0KTsKICAgICAgICAgfQogICAgICAgICBjb250cm9sbGVyLT5tX21hbmlwdWxhdGVkVGV4
dHNXaXRoTmV3Q29udGVudC5jbGVhcigpOwogCi0gICAgICAgIGZvciAoYXV0byogdGV4dCA6IGNv
bnRyb2xsZXItPm1fdGV4dE5vZGVzV2l0aE5ld1JlbmRlcmVyKQotICAgICAgICAgICAgbm9kZXNU
b09ic2VydmUuYWRkKCp0ZXh0KTsKKyAgICAgICAgZm9yIChhdXRvJiB0ZXh0IDogY29udHJvbGxl
ci0+bV90ZXh0Tm9kZXNXaXRoTmV3UmVuZGVyZXIpCisgICAgICAgICAgICBub2Rlc1RvT2JzZXJ2
ZS5hZGQodGV4dCk7CiAgICAgICAgIGNvbnRyb2xsZXItPm1fdGV4dE5vZGVzV2l0aE5ld1JlbmRl
cmVyLmNsZWFyKCk7CiAKICAgICAgICAgaWYgKG5vZGVzVG9PYnNlcnZlLmlzRW1wdHkoKSkKQEAg
LTkyNSwxMyArOTI1LDEzIEBAIGF1dG8gVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXI6OnJlcGxh
Y2UoY29uc3QgTWFuaXB1bGF0aW9uSXRlbURhdGEmIGl0ZW0sIGNvbnN0CiAgICAgICAgIH0KIAog
ICAgICAgICBpZiAoaW5zZXJ0aW9uLmlzQ2hpbGRNYW5pcHVsYXRlZCA9PSBJc05vZGVNYW5pcHVs
YXRlZDo6WWVzKQotICAgICAgICAgICAgbV9tYW5pcHVsYXRlZE5vZGVzLmFkZChpbnNlcnRpb24u
Y2hpbGQucHRyKCkpOworICAgICAgICAgICAgbV9tYW5pcHVsYXRlZE5vZGVzLmFkZChpbnNlcnRp
b24uY2hpbGQuZ2V0KCkpOwogICAgIH0KIAogICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CiB9CiAK
LXZvaWQgVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXI6OnJlbW92ZU5vZGUoTm9kZSogbm9kZSkK
K3ZvaWQgVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXI6OnJlbW92ZU5vZGUoTm9kZSYgbm9kZSkK
IHsKICAgICBtX21hbmlwdWxhdGVkTm9kZXMucmVtb3ZlKG5vZGUpOwogICAgIG1fdGV4dE5vZGVz
V2l0aE5ld1JlbmRlcmVyLnJlbW92ZShub2RlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2VkaXRpbmcvVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2Vk
aXRpbmcvVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXIuaAppbmRleCBkZTdiZTUzMjQ4NGY2MTkx
YWFlOWM2YjE3NjFmNDcwOTYyZDI3MGZiLi43YzBiNmRjODZlZjczZjE2M2I3ZGY2MTVlYjJlMThk
ODNmYWZlYTk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1RleHRNYW5pcHVs
YXRpb25Db250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9UZXh0TWFuaXB1
bGF0aW9uQ29udHJvbGxlci5oCkBAIC0xMTksNyArMTE5LDcgQEAgcHVibGljOgogICAgIHZvaWQg
ZGlkQ3JlYXRlUmVuZGVyZXJGb3JFbGVtZW50KEVsZW1lbnQmKTsKICAgICB2b2lkIGRpZENyZWF0
ZVJlbmRlcmVyRm9yVGV4dE5vZGUoVGV4dCYpOwogICAgIHZvaWQgZGlkVXBkYXRlQ29udGVudEZv
clRleHQoVGV4dCYpOwotICAgIHZvaWQgcmVtb3ZlTm9kZShOb2RlKik7CisgICAgdm9pZCByZW1v
dmVOb2RlKE5vZGUmKTsKIAogICAgIGVudW0gY2xhc3MgTWFuaXB1bGF0aW9uRmFpbHVyZVR5cGUg
OiB1aW50OF90IHsKICAgICAgICAgQ29udGVudENoYW5nZWQsCkBAIC0xODIsOSArMTgyLDkgQEAg
cHJpdmF0ZToKIAogICAgIFdlYWtQdHI8RG9jdW1lbnQ+IG1fZG9jdW1lbnQ7CiAgICAgV2Vha0hh
c2hTZXQ8RWxlbWVudD4gbV9lbGVtZW50c1dpdGhOZXdSZW5kZXJlcjsKLSAgICBIYXNoU2V0PFRl
eHQqPiBtX21hbmlwdWxhdGVkVGV4dHNXaXRoTmV3Q29udGVudDsKLSAgICBIYXNoU2V0PE5vZGUq
PiBtX3RleHROb2Rlc1dpdGhOZXdSZW5kZXJlcjsKLSAgICBIYXNoU2V0PE5vZGUqPiBtX21hbmlw
dWxhdGVkTm9kZXM7CisgICAgV2Vha0hhc2hTZXQ8VGV4dD4gbV9tYW5pcHVsYXRlZFRleHRzV2l0
aE5ld0NvbnRlbnQ7CisgICAgV2Vha0hhc2hTZXQ8Tm9kZT4gbV90ZXh0Tm9kZXNXaXRoTmV3UmVu
ZGVyZXI7CisgICAgV2Vha0hhc2hTZXQ8Tm9kZT4gbV9tYW5pcHVsYXRlZE5vZGVzOwogCiAgICAg
SGFzaE1hcDxTdHJpbmcsIGJvb2w+IG1fY2FjaGVkRm9udEZhbWlseUV4Y2x1c2lvblJlc3VsdHM7
CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>