<?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>215792</bug_id>
          
          <creation_ts>2020-08-24 19:51:23 -0700</creation_ts>
          <short_desc>Trying to lookup when WebView is in a popover causes process to hang. Fix for Legacy WebView.</short_desc>
          <delta_ts>2020-08-25 14:34:23 -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>New Bugs</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="Megan Gardner">megan_gardner</reporter>
          <assigned_to name="Megan Gardner">megan_gardner</assigned_to>
          <cc>darin</cc>
    
    <cc>hi</cc>
    
    <cc>thorton</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1682549</commentid>
    <comment_count>0</comment_count>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-08-24 19:51:23 -0700</bug_when>
    <thetext>Trying to lookup when WebView is in a popover causes process to hang. Fix for Legacy WebView.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1682550</commentid>
    <comment_count>1</comment_count>
      <attachid>407163</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-08-24 19:53:52 -0700</bug_when>
    <thetext>Created attachment 407163
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1682551</commentid>
    <comment_count>2</comment_count>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-08-24 19:54:10 -0700</bug_when>
    <thetext>&lt;rdar://problem/52317762&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1682556</commentid>
    <comment_count>3</comment_count>
      <attachid>407163</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-08-24 20:03:44 -0700</bug_when>
    <thetext>Comment on attachment 407163
Patch

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

&gt; Source/WebKitLegacy/mac/WebView/WebHTMLView.mm:3682
&gt; -    auto defaultMenuItems = createMenuItems(hitTestResult, defaultMenu.items());
&gt; +    Vector&lt;WebCore::ContextMenuItem&gt; filteredItems;
&gt; +    filteredItems.reserveInitialCapacity(defaultMenu.items().size());
&gt; +    
&gt; +    bool isPopover = webView.window._childWindowOrderingPriority == NSWindowChildOrderingPriorityPopover;
&gt; +    bool isLookupDisabled = [NSUserDefaults.standardUserDefaults boolForKey:@&quot;LULookupDisabled&quot;];
&gt;  
&gt; +    for (WebCore::ContextMenuItem item : defaultMenu.items()) {
&gt; +        if (item.action() != WebCore::ContextMenuItemTagLookUpInDictionary || (!isLookupDisabled &amp;&amp; !isPopover))
&gt; +            filteredItems.uncheckedAppend(item);
&gt; +    }
&gt; +    
&gt; +    auto defaultMenuItems = createMenuItems(hitTestResult, filteredItems);

Here’s a simpler way to write it (roughly, not sure I have the syntax right:

    auto filteredItems = defaultMenu.items();
    if (!isLookupDisabled &amp;&amp; !isPopover) {
        filteredItems.removeAllMatching([] (auto&amp; item) {
            return item.action() == WebCore::ContextMenuItemTagLookUpInDictionary;
        });
    }
    auto defaultMenuItems = createMenuItems(hitTestResult, filteredItems);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1682557</commentid>
    <comment_count>4</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-08-24 20:04:22 -0700</bug_when>
    <thetext>Not a lot simpler (I accidentally left out the isPopover and isLookupDisabled part), but still I think it’s better than writing our own loop.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1682698</commentid>
    <comment_count>5</comment_count>
      <attachid>407206</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-08-25 10:36:58 -0700</bug_when>
    <thetext>Created attachment 407206
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1682799</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-08-25 14:34:23 -0700</bug_when>
    <thetext>Committed r266143: &lt;https://trac.webkit.org/changeset/266143&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 407206.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407163</attachid>
            <date>2020-08-24 19:53:52 -0700</date>
            <delta_ts>2020-08-24 19:57:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215792-20200824195351.patch</filename>
            <type>text/plain</type>
            <size>2772</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY1NzYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKaW5k
ZXggODcwYTM5NGQ5YTUyMjY3NzQ5MmUxMmVmZTVlOWM2NDVkNzk0ZDM5Ny4uZWRiY2UzOWE5OGIw
NzFiOTY4MjIyNzMxMGU2YTZhZjQ1M2E5ODJkZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDIwIEBACisyMDIwLTA4LTI0ICBNZWdhbiBHYXJkbmVyICA8bWVnYW5fZ2Fy
ZG5lckBhcHBsZS5jb20+CisKKyAgICAgICAgVHJ5aW5nIHRvIGxvb2t1cCB3aGVuIFdlYlZpZXcg
aXMgaW4gYSBwb3BvdmVyIGNhdXNlcyBwcm9jZXNzIHRvIGhhbmcuIEZpeCBmb3IgTGVnYWN5IFdl
YlZpZXcuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MTU3OTIKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzUyMzE3NzYyPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpeCBmb3IgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNDc3MyBhbHNvIG5lZWRlZCBpbiBsZWdhY3kgV2Vi
Vmlldy4KKyAgICAgICAgVGhlIExvb2t1cCBmcmFtZXdvcmsgZG9lcyBub3QgcG9wdWxhdGUgdGhl
IG1lbnVzIHRoYXQgaXQgdmVuZHMgd2l0aCB0aGUgb3B0aW9uIHRvICdsb29rdXAnCisgICAgICAg
IHdvcmRzIHRoYXQgYXJlIHNlbGVjdGVkIGluIHBvcG92ZXJzLiBXZWJLaXQgc2hvdWxkIGZvbGxv
dyB0aGUgcGF0dGVybiBhbmQgbm90IHB1dCB0aGUKKyAgICAgICAgaXRlbSBpbiB0aGUgbWVudSBh
cyBMb29rdXAgaXMgbm90IGFibGUgdG8gaGFuZGxlIHRoaXMgc2l0dWF0aW9uLiBBbHNvIGlmIExv
b2t1cCBpcyBkaXNhYmxlZAorICAgICAgICB2aWEgZGVmYXVsdHMsIHdlIHNob3VsZCBub3Qgc2hv
dyBpdCBpbiB0aGUgbWVudS4KKworICAgICAgICAqIFdlYlZpZXcvV2ViSFRNTFZpZXcubW06Cisg
ICAgICAgIChjdXN0b21NZW51RnJvbURlZmF1bHRJdGVtcyk6CisKIDIwMjAtMDgtMTcgIERhdmlk
IEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KIAogICAgICAgICBDbGVhbiB1cCBEcmFnQXBw
bGljYXRpb25GbGFncyBhZnRlciBzd2l0Y2ggdG8gT3B0aW9uU2V0PD4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0gYi9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tCmluZGV4IDNhZGY2MzQwZTA3ODA3
NWMxZDdjMzBhMzc5MmFlYzQzYjIyZWE2ZDYuLjBjZmUzZmYxNzZmNWI3ZjZlNTZmMTdiMDhiYWQ1
OGZhYjM5OTMwZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcv
V2ViSFRNTFZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJI
VE1MVmlldy5tbQpAQCAtMzY2OCw4ICszNjY4LDE4IEBAIHN0YXRpYyBSZXRhaW5QdHI8TlNNZW51
SXRlbT4gY3JlYXRlTWVudUl0ZW0oY29uc3QgV2ViQ29yZTo6SGl0VGVzdFJlc3VsdCYgaGl0VGVz
CiBzdGF0aWMgUmV0YWluUHRyPE5TQXJyYXk+IGN1c3RvbU1lbnVGcm9tRGVmYXVsdEl0ZW1zKFdl
YlZpZXcgKndlYlZpZXcsIGNvbnN0IFdlYkNvcmU6OkNvbnRleHRNZW51JiBkZWZhdWx0TWVudSkK
IHsKICAgICBjb25zdCBhdXRvJiBoaXRUZXN0UmVzdWx0ID0gd2ViVmlldy5wYWdlLT5jb250ZXh0
TWVudUNvbnRyb2xsZXIoKS5oaXRUZXN0UmVzdWx0KCk7Ci0gICAgYXV0byBkZWZhdWx0TWVudUl0
ZW1zID0gY3JlYXRlTWVudUl0ZW1zKGhpdFRlc3RSZXN1bHQsIGRlZmF1bHRNZW51Lml0ZW1zKCkp
OworICAgIFZlY3RvcjxXZWJDb3JlOjpDb250ZXh0TWVudUl0ZW0+IGZpbHRlcmVkSXRlbXM7Cisg
ICAgZmlsdGVyZWRJdGVtcy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KGRlZmF1bHRNZW51Lml0ZW1z
KCkuc2l6ZSgpKTsKKyAgICAKKyAgICBib29sIGlzUG9wb3ZlciA9IHdlYlZpZXcud2luZG93Ll9j
aGlsZFdpbmRvd09yZGVyaW5nUHJpb3JpdHkgPT0gTlNXaW5kb3dDaGlsZE9yZGVyaW5nUHJpb3Jp
dHlQb3BvdmVyOworICAgIGJvb2wgaXNMb29rdXBEaXNhYmxlZCA9IFtOU1VzZXJEZWZhdWx0cy5z
dGFuZGFyZFVzZXJEZWZhdWx0cyBib29sRm9yS2V5OkAiTFVMb29rdXBEaXNhYmxlZCJdOwogCisg
ICAgZm9yIChXZWJDb3JlOjpDb250ZXh0TWVudUl0ZW0gaXRlbSA6IGRlZmF1bHRNZW51Lml0ZW1z
KCkpIHsKKyAgICAgICAgaWYgKGl0ZW0uYWN0aW9uKCkgIT0gV2ViQ29yZTo6Q29udGV4dE1lbnVJ
dGVtVGFnTG9va1VwSW5EaWN0aW9uYXJ5IHx8ICghaXNMb29rdXBEaXNhYmxlZCAmJiAhaXNQb3Bv
dmVyKSkKKyAgICAgICAgICAgIGZpbHRlcmVkSXRlbXMudW5jaGVja2VkQXBwZW5kKGl0ZW0pOwor
ICAgIH0KKyAgICAKKyAgICBhdXRvIGRlZmF1bHRNZW51SXRlbXMgPSBjcmVhdGVNZW51SXRlbXMo
aGl0VGVzdFJlc3VsdCwgZmlsdGVyZWRJdGVtcyk7CiAgICAgaWQgZGVsZWdhdGUgPSBbd2ViVmll
dyBVSURlbGVnYXRlXTsKICAgICBTRUwgc2VsZWN0b3IgPSBAc2VsZWN0b3Iod2ViVmlldzpjb250
ZXh0TWVudUl0ZW1zRm9yRWxlbWVudDpkZWZhdWx0TWVudUl0ZW1zOik7CiAgICAgaWYgKCFbZGVs
ZWdhdGUgcmVzcG9uZHNUb1NlbGVjdG9yOnNlbGVjdG9yXSkK
</data>
<flag name="review"
          id="422516"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407206</attachid>
            <date>2020-08-25 10:36:58 -0700</date>
            <delta_ts>2020-08-25 14:34:23 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215792-20200825103657.patch</filename>
            <type>text/plain</type>
            <size>4790</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY1NzYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDA4ZjQyODI3NmFjY2U3NDdi
MmQ1MDlkNDU0NTlhNGQ0Y2U4MDcwMzguLmEzNDkzZjUxNjA5NDZlODcwM2M4YzYyZTI3ZjU4Y2M4
OTI3YmMzYzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjAtMDgtMjUgIE1lZ2FuIEdh
cmRuZXIgIDxtZWdhbl9nYXJkbmVyQGFwcGxlLmNvbT4KKworICAgICAgICBUcnlpbmcgdG8gbG9v
a3VwIHdoZW4gV2ViVmlldyBpcyBpbiBhIHBvcG92ZXIgY2F1c2VzIHByb2Nlc3MgdG8gaGFuZy4g
Rml4IGZvciBMZWdhY3kgV2ViVmlldy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNTc5MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFVwZGF0ZSBjb2RlIGJhc2VkIG9uIERhcmluJ3Mgc3VnZ2VzdGlvbiBm
b3IgbWlycm9yIGZpeCBpbiBsZWdhY3kgd2Via2l0LgorCisgICAgICAgICogVUlQcm9jZXNzL21h
Yy9XZWJDb250ZXh0TWVudVByb3h5TWFjLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0
TWVudVByb3h5TWFjOjpnZXRDb250ZXh0TWVudUZyb21JdGVtcyk6CisKIDIwMjAtMDgtMTcgIEpl
ciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAgICAgW01hY10gQWRkIEV4cGVy
aW1lbnRhbCBGZWF0dXJlIHByZWZlcmVuY2UgZm9yIFNXIFZQOQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hh
bmdlTG9nCmluZGV4IDg3MGEzOTRkOWE1MjI2Nzc0OTJlMTJlZmU1ZTljNjQ1ZDc5NGQzOTcuLjJj
M2UxYjhjZjU1MmFjNzRmNzQ0OTY4ZjJkNTgxZWQ5MmRmNGJjMmQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21h
Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAyMC0wOC0yNSAgTWVnYW4gR2FyZG5lciAg
PG1lZ2FuX2dhcmRuZXJAYXBwbGUuY29tPgorCisgICAgICAgIFRyeWluZyB0byBsb29rdXAgd2hl
biBXZWJWaWV3IGlzIGluIGEgcG9wb3ZlciBjYXVzZXMgcHJvY2VzcyB0byBoYW5nLiBGaXggZm9y
IExlZ2FjeSBXZWJWaWV3LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjE1NzkyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgRml4IGZvciBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjE0NzczIGFsc28gbmVlZGVkIGluIGxlZ2FjeSBXZWJWaWV3LgorICAgICAgICBUaGUgTG9va3Vw
IGZyYW1ld29yayBkb2VzIG5vdCBwb3B1bGF0ZSB0aGUgbWVudXMgdGhhdCBpdCB2ZW5kcyB3aXRo
IHRoZSBvcHRpb24gdG8gJ2xvb2t1cCcKKyAgICAgICAgd29yZHMgdGhhdCBhcmUgc2VsZWN0ZWQg
aW4gcG9wb3ZlcnMuIFdlYktpdCBzaG91bGQgZm9sbG93IHRoZSBwYXR0ZXJuIGFuZCBub3QgcHV0
IHRoZQorICAgICAgICBpdGVtIGluIHRoZSBtZW51IGFzIExvb2t1cCBpcyBub3QgYWJsZSB0byBo
YW5kbGUgdGhpcyBzaXR1YXRpb24uIEFsc28gaWYgTG9va3VwIGlzIGRpc2FibGVkCisgICAgICAg
IHZpYSBkZWZhdWx0cywgd2Ugc2hvdWxkIG5vdCBzaG93IGl0IGluIHRoZSBtZW51LgorCisgICAg
ICAgICogV2ViVmlldy9XZWJIVE1MVmlldy5tbToKKyAgICAgICAgKGN1c3RvbU1lbnVGcm9tRGVm
YXVsdEl0ZW1zKToKKwogMjAyMC0wOC0xNyAgRGF2aWQgS2lsemVyICA8ZGRraWx6ZXJAYXBwbGUu
Y29tPgogCiAgICAgICAgIENsZWFuIHVwIERyYWdBcHBsaWNhdGlvbkZsYWdzIGFmdGVyIHN3aXRj
aCB0byBPcHRpb25TZXQ8PgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFj
L1dlYkNvbnRleHRNZW51UHJveHlNYWMubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMv
V2ViQ29udGV4dE1lbnVQcm94eU1hYy5tbQppbmRleCAxNDk1YWMxNDc2YmQ1MTNkOGE2MmY4MjU3
MGRjOGJjY2EzYjA1NDIwLi5iZjI5MmRiZWQ5ZWYzOGRkNTNjZDg5NjNkYWJhODQ3NWM3MWRlZjU4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV2ViQ29udGV4dE1lbnVQ
cm94eU1hYy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV2ViQ29udGV4dE1l
bnVQcm94eU1hYy5tbQpAQCAtMzQ3LDE2ICszNDcsMTYgQEAgdm9pZCBXZWJDb250ZXh0TWVudVBy
b3h5TWFjOjpnZXRDb250ZXh0TWVudUZyb21JdGVtcyhjb25zdCBWZWN0b3I8V2ViQ29udGV4dE1l
bnUKICAgICAgICAgcmV0dXJuOwogICAgIH0KICAgICAKLSAgICBWZWN0b3I8V2ViQ29udGV4dE1l
bnVJdGVtRGF0YT4gZmlsdGVyZWRJdGVtczsKLSAgICBmaWx0ZXJlZEl0ZW1zLnJlc2VydmVJbml0
aWFsQ2FwYWNpdHkoaXRlbXMuc2l6ZSgpKTsKKyAgICBhdXRvIGZpbHRlcmVkSXRlbXMgPSBpdGVt
czsKICAgICBhdXRvIHdlYlZpZXcgPSBtX3dlYlZpZXcuZ2V0KCk7CiAgICAgCiAgICAgYm9vbCBp
c1BvcG92ZXIgPSB3ZWJWaWV3LmdldCgpLndpbmRvdy5fY2hpbGRXaW5kb3dPcmRlcmluZ1ByaW9y
aXR5ID09IE5TV2luZG93Q2hpbGRPcmRlcmluZ1ByaW9yaXR5UG9wb3ZlcjsKICAgICBib29sIGlz
TG9va3VwRGlzYWJsZWQgPSBbTlNVc2VyRGVmYXVsdHMuc3RhbmRhcmRVc2VyRGVmYXVsdHMgYm9v
bEZvcktleTpAIkxVTG9va3VwRGlzYWJsZWQiXTsKLQotICAgIGZvciAoYXV0byYgaXRlbSA6IGl0
ZW1zKSB7Ci0gICAgICAgIGlmIChpdGVtLmFjdGlvbigpICE9IENvbnRleHRNZW51SXRlbVRhZ0xv
b2tVcEluRGljdGlvbmFyeSB8fCAoIWlzTG9va3VwRGlzYWJsZWQgJiYgIWlzUG9wb3ZlcikpCi0g
ICAgICAgICAgICBmaWx0ZXJlZEl0ZW1zLnVuY2hlY2tlZEFwcGVuZChpdGVtKTsKKyAgICAKKyAg
ICBpZiAoaXNMb29rdXBEaXNhYmxlZCB8fCBpc1BvcG92ZXIpIHsKKyAgICAgICAgZmlsdGVyZWRJ
dGVtcy5yZW1vdmVBbGxNYXRjaGluZyhbXSAoYXV0byYgaXRlbSkgeworICAgICAgICAgICAgcmV0
dXJuIGl0ZW0uYWN0aW9uKCkgPT0gV2ViQ29yZTo6Q29udGV4dE1lbnVJdGVtVGFnTG9va1VwSW5E
aWN0aW9uYXJ5OworICAgICAgICB9KTsKICAgICB9CiAKICAgICBhdXRvIHNwYXJzZU1lbnVJdGVt
cyA9IHJldGFpblB0cihbTlNQb2ludGVyQXJyYXkgc3Ryb25nT2JqZWN0c1BvaW50ZXJBcnJheV0p
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJIVE1MVmll
dy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0KaW5k
ZXggM2FkZjYzNDBlMDc4MDc1YzFkN2MzMGEzNzkyYWVjNDNiMjJlYTZkNi4uMjgyOTFjYjIwNWIz
ZjMxYWY1ZTVlOWJlOTU1MzNiYmI0MmI1MWVlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tCkBAIC0zNjY4LDggKzM2NjgsMTcgQEAgc3RhdGlj
IFJldGFpblB0cjxOU01lbnVJdGVtPiBjcmVhdGVNZW51SXRlbShjb25zdCBXZWJDb3JlOjpIaXRU
ZXN0UmVzdWx0JiBoaXRUZXMKIHN0YXRpYyBSZXRhaW5QdHI8TlNBcnJheT4gY3VzdG9tTWVudUZy
b21EZWZhdWx0SXRlbXMoV2ViVmlldyAqd2ViVmlldywgY29uc3QgV2ViQ29yZTo6Q29udGV4dE1l
bnUmIGRlZmF1bHRNZW51KQogewogICAgIGNvbnN0IGF1dG8mIGhpdFRlc3RSZXN1bHQgPSB3ZWJW
aWV3LnBhZ2UtPmNvbnRleHRNZW51Q29udHJvbGxlcigpLmhpdFRlc3RSZXN1bHQoKTsKLSAgICBh
dXRvIGRlZmF1bHRNZW51SXRlbXMgPSBjcmVhdGVNZW51SXRlbXMoaGl0VGVzdFJlc3VsdCwgZGVm
YXVsdE1lbnUuaXRlbXMoKSk7Ci0KKyAgICBib29sIGlzUG9wb3ZlciA9IHdlYlZpZXcud2luZG93
Ll9jaGlsZFdpbmRvd09yZGVyaW5nUHJpb3JpdHkgPT0gTlNXaW5kb3dDaGlsZE9yZGVyaW5nUHJp
b3JpdHlQb3BvdmVyOworICAgIGJvb2wgaXNMb29rdXBEaXNhYmxlZCA9IFtOU1VzZXJEZWZhdWx0
cy5zdGFuZGFyZFVzZXJEZWZhdWx0cyBib29sRm9yS2V5OkAiTFVMb29rdXBEaXNhYmxlZCJdOwor
ICAgIGF1dG8gZmlsdGVyZWRJdGVtcyA9IGRlZmF1bHRNZW51Lml0ZW1zKCk7CisgICAgCisgICAg
aWYgKGlzTG9va3VwRGlzYWJsZWQgfHwgaXNQb3BvdmVyKSB7CisgICAgICAgIGZpbHRlcmVkSXRl
bXMucmVtb3ZlQWxsTWF0Y2hpbmcoW10gKGF1dG8mIGl0ZW0pIHsKKyAgICAgICAgICAgIHJldHVy
biBpdGVtLmFjdGlvbigpID09IFdlYkNvcmU6OkNvbnRleHRNZW51SXRlbVRhZ0xvb2tVcEluRGlj
dGlvbmFyeTsKKyAgICAgICAgfSk7CisgICAgfQorICAgIGF1dG8gZGVmYXVsdE1lbnVJdGVtcyA9
IGNyZWF0ZU1lbnVJdGVtcyhoaXRUZXN0UmVzdWx0LCBmaWx0ZXJlZEl0ZW1zKTsKKyAgICAKICAg
ICBpZCBkZWxlZ2F0ZSA9IFt3ZWJWaWV3IFVJRGVsZWdhdGVdOwogICAgIFNFTCBzZWxlY3RvciA9
IEBzZWxlY3Rvcih3ZWJWaWV3OmNvbnRleHRNZW51SXRlbXNGb3JFbGVtZW50OmRlZmF1bHRNZW51
SXRlbXM6KTsKICAgICBpZiAoIVtkZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6c2VsZWN0b3Jd
KQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>