<?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>206015</bug_id>
          
          <creation_ts>2020-01-09 10:25:11 -0800</creation_ts>
          <short_desc>Text manipulation controller should not observe changes in new replacement elements</short_desc>
          <delta_ts>2020-01-13 19:06:52 -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>WebCore Misc.</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>mifenton</cc>
    
    <cc>rniwa</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1604698</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-01-09 10:25:11 -0800</bug_when>
    <thetext>&lt;rdar://problem/58353667&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1604824</commentid>
    <comment_count>1</comment_count>
      <attachid>387267</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-01-09 13:35:59 -0800</bug_when>
    <thetext>Created attachment 387267
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1604920</commentid>
    <comment_count>2</comment_count>
      <attachid>387267</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-01-09 16:40:21 -0800</bug_when>
    <thetext>Comment on attachment 387267
Patch

Clearing flags on attachment: 387267

Committed r254314: &lt;https://trac.webkit.org/changeset/254314&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1604921</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-01-09 16:40:23 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1606196</commentid>
    <comment_count>4</comment_count>
      <attachid>387267</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2020-01-13 19:06:32 -0800</bug_when>
    <thetext>Comment on attachment 387267
Patch

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

&gt; Source/WebCore/editing/TextManipulationController.cpp:407
&gt; +    m_document-&gt;eventLoop().queueTask(TaskSource::InternalAsyncTask, [weakThis = makeWeakPtr(*this)] {

Hm... this is probably not sufficient delay. We need to schedule this when the first call to didCreateRendererForElement happens.
Anyway, I&apos;m gonna add a generic mechanism to track already translated content so it&apos;s sort of a moot point.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1606197</commentid>
    <comment_count>5</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2020-01-13 19:06:52 -0800</bug_when>
    <thetext>(In reply to Ryosuke Niwa from comment #4)
&gt; Comment on attachment 387267 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=387267&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/editing/TextManipulationController.cpp:407
&gt; &gt; +    m_document-&gt;eventLoop().queueTask(TaskSource::InternalAsyncTask, [weakThis = makeWeakPtr(*this)] {
&gt; 
&gt; Hm... this is probably not sufficient delay. We need to schedule this when
&gt; the first call to didCreateRendererForElement happens.
&gt; Anyway, I&apos;m gonna add a generic mechanism to track already translated
&gt; content so it&apos;s sort of a moot point.

This is because there is no guarantee that the style recalc happens by the next task in the event loop is executed.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>387267</attachid>
            <date>2020-01-09 13:35:59 -0800</date>
            <delta_ts>2020-01-09 16:40:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-206015-20200109133558.patch</filename>
            <type>text/plain</type>
            <size>8065</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU0MjI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDA1ODIyNjhiMWZhZDgy
NWU5MzBkMmFhNzZlNjk1OGYwZjFkMGNjYS4uOWMyNDg0NjRiMzQ5Y2NhYjA4YzRiMTg0YjEyNDMx
ZGRiNjVjNzRkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDIwLTAxLTA5ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFRleHQgbWFuaXB1
bGF0aW9uIGNvbnRyb2xsZXIgc2hvdWxkIG5vdCBvYnNlcnZlIGNoYW5nZXMgaW4gbmV3IHJlcGxh
Y2VtZW50IGVsZW1lbnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMDYwMTUKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU4MzUzNjY3PgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRleHRNYW5pcHVsYXRp
b25Db250cm9sbGVyIG1heSBpbnNlcnQgZWxlbWVudHMgaW4gdGhlIHByb2Nlc3Mgb2YgY29tcGxl
dGluZyB0ZXh0IHJlcGxhY2VtZW50IG9wZXJhdGlvbnMuIFdoZW4KKyAgICAgICAgcmVuZGVyZXJz
IGFyZSBjcmVhdGVkIGZvciB0aGVzZSBlbGVtZW50cyAoYWZ0ZXIgdGhlIG5leHQgbGF5b3V0IHBh
c3MpLCB0aGUgY29udHJvbGxlciBpcyBub3RpZmllZCB2aWEKKyAgICAgICAgVGV4dE1hbmlwdWxh
dGlvbkNvbnRyb2xsZXI6OmRpZENyZWF0ZVJlbmRlcmVyRm9yRWxlbWVudCwgd2hpY2ggY2F1c2Vz
IGl0IHRvIGJlZ2luIG9ic2VydmluZyB0aGUgbmV3bHkgaW5zZXJ0ZWQKKyAgICAgICAgZWxlbWVu
dHMuIEZvciBjZXJ0YWluIGNsaWVudHMsIHRoaXMgbWF5IGxlYWQgdG8gYW4gdW5lbmRpbmcgY3lj
bGUgb2YgdGV4dCBtYW5pcHVsYXRpb24gdXBkYXRlcyBhcyB0aGUgbmV3CisgICAgICAgIHRleHQg
bWFuaXB1bGF0aW9uIGl0ZW1zJyB0b2tlbnMgd2lsbCBiZSByZXBsYWNlZCB3aXRoIG5ldyB0b2tl
bnMsIGFuZCB3ZSBuZXZlciByZWFjaCBhIHN0YWJsZSBzdGF0ZS4KKworICAgICAgICBUbyBtaXRp
Z2F0ZSB0aGlzLCB3ZSBhdm9pZCBhZGRpbmcgbmV3bHkgdmlzaWJsZSBlbGVtZW50cyB0byBtX211
dGF0ZWRFbGVtZW50cyBpbiB0aGUgY2FzZSB3aGVyZSB0aGUgbmV3bHkKKyAgICAgICAgdmlzaWJs
ZSBlbGVtZW50cyB3ZXJlIHJlY2VudGx5IGluc2VydGVkIGJ5IHRleHQgcmVwbGFjZW1lbnQuIFNl
ZSBiZWxvdyBmb3IgbW9yZSBkZXRhaWxzLgorCisgICAgICAgIFRlc3Q6IFRleHRNYW5pcHVsYXRp
b24uQ29tcGxldGVUZXh0TWFuaXB1bGF0aW9uRG9lc05vdENyZWF0ZU1vcmVUZXh0TWFuaXB1bGF0
aW9uSXRlbXMKKworICAgICAgICAqIGVkaXRpbmcvVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6VGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXI6OmRpZENy
ZWF0ZVJlbmRlcmVyRm9yRWxlbWVudCk6CisKKyAgICAgICAgQXZvaWQgY29uc2lkZXJpbmcgYW4g
ZWxlbWVudCB0aGF0IGhhcyBhIG5ldyByZW5kZXJlciwgaWYgaXQgaXMgYW4gZWxlbWVudCB3ZSBo
YWQganVzdCBpbnNlcnRlZCB1c2luZyB0ZXh0CisgICAgICAgIG1hbmlwdWxhdGlvbiBBUElzLgor
CisgICAgICAgIChXZWJDb3JlOjpUZXh0TWFuaXB1bGF0aW9uQ29udHJvbGxlcjo6cmVwbGFjZSk6
CisKKyAgICAgICAgQXMgd2UgaXRlcmF0ZSBvdmVyIGFuZCBhcHBseSBlYWNoIHRleHQgcmVwbGFj
ZW1lbnQsIHJlbWVtYmVyIHRoZSBlbGVtZW50cyB3ZSd2ZSBpbnNlcnRlZCB1c2luZyBhIFdlYWtI
YXNoU2V0OworICAgICAgICB0aGlzIHNldCBpcyBjbGVhcmVkIGluIGEgcXVldWVkIGFzeW5jIHRh
c2ssIGFmdGVyIHdoaWNoIGxheW91dCBzaG91bGQgYmUgdXAgdG8gZGF0ZS4KKworICAgICAgICAq
IGVkaXRpbmcvVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXIuaDoKKwogMjAyMC0wMS0wOCAgV2Vu
c29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAgICAgICBJbXBsZW1lbnQg
ZW5jb2RlcnMgYW5kIGRlY29kZXJzIGZvciBtb3JlIGZvbnQtcmVsYXRlZCBlbnRpdGllcwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9UZXh0TWFuaXB1bGF0aW9uQ29udHJvbGxl
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1RleHRNYW5pcHVsYXRpb25Db250cm9sbGVy
LmNwcAppbmRleCAxMjU0MmE2MTU2MmIzY2NlMjJlZDAwOThmZDYwZDkzYWQ5MmRlMzA1Li5jZGU5
YTc4YzhmZTdkYTEzMWUxMWY0NGY0YmIwOTFjNWZlNmYwMmYzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9lZGl0aW5nL1RleHRNYW5pcHVsYXRpb25Db250cm9sbGVyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9lZGl0aW5nL1RleHRNYW5pcHVsYXRpb25Db250cm9sbGVyLmNwcApAQCAtMTc4
LDYgKzE3OCw5IEBAIHZvaWQgVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXI6Om9ic2VydmVQYXJh
Z3JhcGhzKFZpc2libGVQb3NpdGlvbiYgc3RhcnQsIFZpc2liCiAKIHZvaWQgVGV4dE1hbmlwdWxh
dGlvbkNvbnRyb2xsZXI6OmRpZENyZWF0ZVJlbmRlcmVyRm9yRWxlbWVudChFbGVtZW50JiBlbGVt
ZW50KQogeworICAgIGlmIChtX3JlY2VudGx5SW5zZXJ0ZWRFbGVtZW50cy5jb250YWlucyhlbGVt
ZW50KSkKKyAgICAgICAgcmV0dXJuOworCiAgICAgaWYgKG1fbXV0YXRlZEVsZW1lbnRzLmNvbXB1
dGVzRW1wdHkoKSkKICAgICAgICAgc2NoZWR1bGVPYnNlcnZhcnRpb25VcGRhdGUoKTsKIApAQCAt
Mzk4LDcgKzQwMSwxMyBAQCBhdXRvIFRleHRNYW5pcHVsYXRpb25Db250cm9sbGVyOjpyZXBsYWNl
KGNvbnN0IE1hbmlwdWxhdGlvbkl0ZW0mIGl0ZW0sIGNvbnN0IFZlYwogICAgICAgICAgICAgaW5z
ZXJ0aW9uUG9pbnQuY29udGFpbmVyTm9kZSgpLT5pbnNlcnRCZWZvcmUoaW5zZXJ0aW9uLmNoaWxk
LCBpbnNlcnRpb25Qb2ludC5jb21wdXRlTm9kZUJlZm9yZVBvc2l0aW9uKCkpOwogICAgICAgICBl
bHNlCiAgICAgICAgICAgICBpbnNlcnRpb24ucGFyZW50SWZEaWZmZXJlbnRGcm9tQ29tbW9uQW5j
ZXN0b3ItPmFwcGVuZENoaWxkKGluc2VydGlvbi5jaGlsZCk7CisgICAgICAgIGlmIChpczxFbGVt
ZW50PihpbnNlcnRpb24uY2hpbGQuZ2V0KCkpKQorICAgICAgICAgICAgbV9yZWNlbnRseUluc2Vy
dGVkRWxlbWVudHMuYWRkKGRvd25jYXN0PEVsZW1lbnQ+KGluc2VydGlvbi5jaGlsZC5nZXQoKSkp
OwogICAgIH0KKyAgICBtX2RvY3VtZW50LT5ldmVudExvb3AoKS5xdWV1ZVRhc2soVGFza1NvdXJj
ZTo6SW50ZXJuYWxBc3luY1Rhc2ssIFt3ZWFrVGhpcyA9IG1ha2VXZWFrUHRyKCp0aGlzKV0gewor
ICAgICAgICBpZiAoYXV0byBzdHJvbmdUaGlzID0gd2Vha1RoaXMuZ2V0KCkpCisgICAgICAgICAg
ICBzdHJvbmdUaGlzLT5tX3JlY2VudGx5SW5zZXJ0ZWRFbGVtZW50cy5jbGVhcigpOworICAgIH0p
OwogCiAgICAgcmV0dXJuIE1hbmlwdWxhdGlvblJlc3VsdDo6U3VjY2VzczsKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXIuaCBi
L1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXIuaAppbmRl
eCA3OGExODdlN2MzZDNiMDY5M2RmMjYxNmJkNzYxN2JlYjJiZDM4NTUwLi5mZDQ4ZmFmZjBlNTZl
ODhkMDFiNDU1NDM0MmFhNzBjMTAxZWFhOGZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9l
ZGl0aW5nL1RleHRNYW5pcHVsYXRpb25Db250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
ZWRpdGluZy9UZXh0TWFuaXB1bGF0aW9uQ29udHJvbGxlci5oCkBAIC0xMjIsNiArMTIyLDcgQEAg
cHJpdmF0ZToKIAogICAgIFdlYWtQdHI8RG9jdW1lbnQ+IG1fZG9jdW1lbnQ7CiAgICAgV2Vha0hh
c2hTZXQ8RWxlbWVudD4gbV9tdXRhdGVkRWxlbWVudHM7CisgICAgV2Vha0hhc2hTZXQ8RWxlbWVu
dD4gbV9yZWNlbnRseUluc2VydGVkRWxlbWVudHM7CiAgICAgTWFuaXB1bGF0aW9uSXRlbUNhbGxi
YWNrIG1fY2FsbGJhY2s7CiAgICAgVmVjdG9yPEV4Y2x1c2lvblJ1bGU+IG1fZXhjbHVzaW9uUnVs
ZXM7CiAgICAgSGFzaE1hcDxJdGVtSWRlbnRpZmllciwgTWFuaXB1bGF0aW9uSXRlbT4gbV9pdGVt
czsKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA5
YThmMzMxM2NhOTQ1NTBhYzA2OTExOWU0NWUxY2Y3OTA5NjQ0Njk5Li40MjNhODk2YzMxMDk3NTVm
MGQwZWFhODM2MjI5MDRlNjhjYjI2YWJmIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysr
IGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMjAtMDEtMDkgIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgVGV4dCBtYW5pcHVsYXRp
b24gY29udHJvbGxlciBzaG91bGQgbm90IG9ic2VydmUgY2hhbmdlcyBpbiBuZXcgcmVwbGFjZW1l
bnQgZWxlbWVudHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIwNjAxNQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTgzNTM2Njc+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdENvY29hL1RleHRNYW5pcHVsYXRpb24ubW06CisKKyAgICAgICAgQWRkIGEgbmV3
IEFQSSB0ZXN0IHRvIHZlcmlmeSB0aGF0IHdlIGRvbid0IGZpcmUgdGV4dCBtYW5pcHVsYXRpb24g
aXRlbSBjYWxsYmFja3MgZHVlIHRvIGluc2VydGluZyBlbGVtZW50cyB3aGVuCisgICAgICAgIGNv
bXBsZXRpbmcgdGV4dCBtYW5pcHVsYXRpb24uCisKKyAgICAgICAgKC1bVGV4dE1hbmlwdWxhdGlv
bkRlbGVnYXRlIGluaXRXaXRoSXRlbUNhbGxiYWNrXSk6IERlbGV0ZWQuCisKKyAgICAgICAgUmVt
b3ZlIGEgc3RyYXkgaW5pdGlhbGl6ZXIgdGhhdCB3YXMgdW51c2VkIChhbmQgYWxzbyBkb2Vzbid0
IHRha2UgYW4gSXRlbUNhbGxiYWNrLCBhcyBpdHMgbmFtZSBtaWdodCBzdWdnZXN0KS4KKwogMjAy
MC0wMS0wOCAgTWF0dCBMZXdpcyAgPGpsZXdpczNAYXBwbGUuY29tPgogCiAgICAgICAgIE1vdmUg
RVdTIGZyb20gbWFjT1MgSGlnaCBTaWVycmEgdG8gbWFjT1MgTW9qYXZlCmRpZmYgLS1naXQgYS9U
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1RleHRNYW5pcHVsYXRpb24ubW0g
Yi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1RleHRNYW5pcHVsYXRpb24u
bW0KaW5kZXggNDZmMjMyMzc0ZTA2OGM5ZmQ4YTcwNDQ4YTY0NDc2ODhjMzI5OTI0MS4uYTFjZGZl
MGQwNDU5MDg1MjVjYjBjNDUzOWRiZDRiYzk0YmFmYjMxZCAxMDA2NDQKLS0tIGEvVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9UZXh0TWFuaXB1bGF0aW9uLm1tCisrKyBiL1Rv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvVGV4dE1hbmlwdWxhdGlvbi5tbQpA
QCAtNjIsMTQgKzYyLDYgQEAgLSAoaW5zdGFuY2V0eXBlKWluaXQKICAgICByZXR1cm4gc2VsZjsK
IH0KIAotLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoSXRlbUNhbGxiYWNrCi17Ci0gICAgaWYgKCEo
c2VsZiA9IFtzdXBlciBpbml0XSkpCi0gICAgICAgIHJldHVybiBuaWw7Ci0gICAgX2l0ZW1zID0g
YWRvcHROUyhbW05TTXV0YWJsZUFycmF5IGFsbG9jXSBpbml0XSk7Ci0gICAgcmV0dXJuIHNlbGY7
Ci19Ci0KIC0gKHZvaWQpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgZGlkRmluZFRleHRN
YW5pcHVsYXRpb25JdGVtOihfV0tUZXh0TWFuaXB1bGF0aW9uSXRlbSAqKWl0ZW0KIHsKICAgICBb
X2l0ZW1zIGFkZE9iamVjdDppdGVtXTsKQEAgLTkwNSw2ICs4OTcsNTAgQEAgVEVTVChUZXh0TWFu
aXB1bGF0aW9uLCBDb21wbGV0ZVRleHRNYW5pcHVsYXRpb25QcmVzZXJ2ZXNFeGNsdWRlZENvbnRl
bnQpCiAgICAgRVhQRUNUX1dLX1NUUkVRKCI8cD5IZWxsbywgPGVtPldlYktpdHRlbjwvZW0+PC9w
PiIsIFt3ZWJWaWV3IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3JpcHQ6QCJkb2N1bWVudC5ib2R5
LmlubmVySFRNTCJdKTsKIH0KIAorVEVTVChUZXh0TWFuaXB1bGF0aW9uLCBDb21wbGV0ZVRleHRN
YW5pcHVsYXRpb25Eb2VzTm90Q3JlYXRlTW9yZVRleHRNYW5pcHVsYXRpb25JdGVtcykKK3sKKyAg
ICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1RleHRNYW5pcHVsYXRpb25EZWxlZ2F0ZSBhbGxv
Y10gaW5pdF0pOworICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFs
bG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgNDAwLCA0MDApXSk7CisgICAgW3dl
YlZpZXcgX3NldFRleHRNYW5pcHVsYXRpb25EZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisKKyAg
ICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZEhUTUxTdHJpbmc6QCI8IURPQ1RZUEUgaHRtbD48
aHRtbD48Ym9keT48cD5Gb28gPHN0cm9uZz5iYXI8L3N0cm9uZz4gYmF6PC9wPjwvYm9keT48L2h0
bWw+Il07CisKKyAgICBhdXRvIGNvbmZpZ3VyYXRpb24gPSBhZG9wdE5TKFtbX1dLVGV4dE1hbmlw
dWxhdGlvbkNvbmZpZ3VyYXRpb24gYWxsb2NdIGluaXRdKTsKKworICAgIGRvbmUgPSBmYWxzZTsK
KyAgICBbd2ViVmlldyBfc3RhcnRUZXh0TWFuaXB1bGF0aW9uc1dpdGhDb25maWd1cmF0aW9uOmNv
bmZpZ3VyYXRpb24uZ2V0KCkgY29tcGxldGlvbjpeeworICAgICAgICBkb25lID0gdHJ1ZTsKKyAg
ICB9XTsKKyAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmRvbmUpOworCisgICAgYXV0byAq
aXRlbXMgPSBbZGVsZWdhdGUgaXRlbXNdOworICAgIEVYUEVDVF9FUShpdGVtcy5jb3VudCwgMVVM
KTsKKworICAgIGF1dG8qIGZpcnN0SXRlbSA9IGl0ZW1zLmZpcnN0T2JqZWN0OworICAgIEVYUEVD
VF9FUShmaXJzdEl0ZW0udG9rZW5zLmNvdW50LCAzVUwpOworCisgICAgX19ibG9jayBCT09MIGZv
dW5kTmV3SXRlbUFmdGVyQ29tcGxldGluZ1RleHRNYW5pcHVsYXRpb24gPSBmYWxzZTsKKyAgICBb
ZGVsZWdhdGUgc2V0SXRlbUNhbGxiYWNrOl4oX1dLVGV4dE1hbmlwdWxhdGlvbkl0ZW0gKikgewor
ICAgICAgICBmb3VuZE5ld0l0ZW1BZnRlckNvbXBsZXRpbmdUZXh0TWFuaXB1bGF0aW9uID0gdHJ1
ZTsKKyAgICB9XTsKKworICAgIGRvbmUgPSBmYWxzZTsKKyAgICBbd2ViVmlldyBfY29tcGxldGVU
ZXh0TWFuaXB1bGF0aW9uOihfV0tUZXh0TWFuaXB1bGF0aW9uSXRlbSAqKWNyZWF0ZUl0ZW0oZmly
c3RJdGVtLmlkZW50aWZpZXIsIHsKKyAgICAgICAgeyBmaXJzdEl0ZW0udG9rZW5zWzBdLmlkZW50
aWZpZXIsIEAiYmFyICIgfSwKKyAgICAgICAgeyBmaXJzdEl0ZW0udG9rZW5zWzFdLmlkZW50aWZp
ZXIsIEAiZ2FycGx5IiB9LAorICAgICAgICB7IGZpcnN0SXRlbS50b2tlbnNbMl0uaWRlbnRpZmll
ciwgQCIgZm9vIiB9LAorICAgIH0pLmdldCgpIGNvbXBsZXRpb246XihCT09MIHN1Y2Nlc3MpIHsK
KyAgICAgICAgRVhQRUNUX1RSVUUoc3VjY2Vzcyk7CisgICAgICAgIGRvbmUgPSB0cnVlOworICAg
IH1dOworCisgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZkb25lKTsKKyAgICBbd2ViVmll
dyB3YWl0Rm9yTmV4dFByZXNlbnRhdGlvblVwZGF0ZV07CisKKyAgICBFWFBFQ1RfRkFMU0UoZm91
bmROZXdJdGVtQWZ0ZXJDb21wbGV0aW5nVGV4dE1hbmlwdWxhdGlvbik7CisgICAgRVhQRUNUX1dL
X1NUUkVRKCI8cD5iYXIgPHN0cm9uZz5nYXJwbHk8L3N0cm9uZz4gZm9vPC9wPiIsIFt3ZWJWaWV3
IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3JpcHQ6QCJkb2N1bWVudC5ib2R5LmlubmVySFRNTCJd
KTsKK30KKwogVEVTVChUZXh0TWFuaXB1bGF0aW9uLCBUZXh0TWFuaXB1bGF0aW9uVG9rZW5EZWJ1
Z0Rlc2NyaXB0aW9uKQogewogICAgIGF1dG8gdG9rZW4gPSBhZG9wdE5TKFtbX1dLVGV4dE1hbmlw
dWxhdGlvblRva2VuIGFsbG9jXSBpbml0XSk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>