<?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>197079</bug_id>
          
          <creation_ts>2019-04-18 15:48:21 -0700</creation_ts>
          <short_desc>Crash in FrameLoader::stopAllLoaders via [WebView dealloc] inside ~ObjCEventListener</short_desc>
          <delta_ts>2019-05-08 17:16: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>WebKit API</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=197712</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>achristensen</cc>
    
    <cc>beidson</cc>
    
    <cc>cdumez</cc>
    
    <cc>darin</cc>
    
    <cc>ggaren</cc>
    
    <cc>mitz</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1528633</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-04-18 15:48:21 -0700</bug_when>
    <thetext>Some WebKit clients crash in FrameLoader::stopAllLoaders via [WebView dealloc] inside ~ObjCEventListener while deleting event targets.

&lt;rdar://problem/40888424&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1528639</commentid>
    <comment_count>1</comment_count>
      <attachid>367769</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-04-18 16:02:31 -0700</bug_when>
    <thetext>Created attachment 367769
Fixes the bug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1528640</commentid>
    <comment_count>2</comment_count>
      <attachid>367770</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-04-18 16:03:48 -0700</bug_when>
    <thetext>Created attachment 367770
Fixes the bug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1528777</commentid>
    <comment_count>3</comment_count>
      <attachid>367770</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2019-04-19 09:59:58 -0700</bug_when>
    <thetext>Comment on attachment 367770
Fixes the bug

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

&gt; Source/WebKitLegacy/mac/DOM/ObjCEventListener.mm:75
&gt; +    // Avoid executing arbitrary code during GC; e.g. inside Node::~Node.
&gt; +    [m_listener.get() retain];
&gt; +    [m_listener.get() autorelease];

Some day we will move to ARC. To be prepared for when we do, it will be much more future-proof to use CFRetain and CFAutorelease, which can be used for this purpose even under ARC. I suggest doing that.

    CFRetain((__bridge CFTypeRef)m_listener.get());
    CFAutorelease((__bridge CFTypeRef)m_listener.get());

To make it cleaner, if this idiom comes up more often, we could add a RetainPtr member function designed for this purpose. Unfortunately, the current RetainPtr::autorelease is not what we want because it compiles to a bridging release under ARC, not an autorelease.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1528810</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-04-19 11:46:51 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #3)
&gt; Comment on attachment 367770 [details]
&gt; Fixes the bug
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=367770&amp;action=review
&gt; 
&gt; &gt; Source/WebKitLegacy/mac/DOM/ObjCEventListener.mm:75
&gt; &gt; +    // Avoid executing arbitrary code during GC; e.g. inside Node::~Node.
&gt; &gt; +    [m_listener.get() retain];
&gt; &gt; +    [m_listener.get() autorelease];
&gt; 
&gt; Some day we will move to ARC. To be prepared for when we do, it will be much
&gt; more future-proof to use CFRetain and CFAutorelease, which can be used for
&gt; this purpose even under ARC. I suggest doing that.
&gt; 
&gt;     CFRetain((__bridge CFTypeRef)m_listener.get());
&gt;     CFAutorelease((__bridge CFTypeRef)m_listener.get());
&gt; 
&gt; To make it cleaner, if this idiom comes up more often, we could add a
&gt; RetainPtr member function designed for this purpose. Unfortunately, the
&gt; current RetainPtr::autorelease is not what we want because it compiles to a
&gt; bridging release under ARC, not an autorelease.

Okay, sure, I&apos;ll use CF*.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1528817</commentid>
    <comment_count>5</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-04-19 12:01:40 -0700</bug_when>
    <thetext>Committed r244459: &lt;https://trac.webkit.org/changeset/244459&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>367769</attachid>
            <date>2019-04-18 16:02:31 -0700</date>
            <delta_ts>2019-04-18 16:03:47 -0700</delta_ts>
            <desc>Fixes the bug</desc>
            <filename>bug-197079-20190418160230.patch</filename>
            <type>text/plain</type>
            <size>6276</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cJKHJldmlzaW9uIDI0NDM3MSkKKysrIFNv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDIxIEBACisyMDE5LTA0LTE4ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisg
ICAgICAgIENyYXNoIGluIEZyYW1lTG9hZGVyOjpzdG9wQWxsTG9hZGVycyB2aWEgW1dlYlZpZXcg
ZGVhbGxvY10gaW5zaWRlIH5PYmpDRXZlbnRMaXN0ZW5lcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk3MDc5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIGNyYXNoIHdhcyBjYXVzZWQgYnkgdGhlIGZh
Y3QgZGVsZXRpbmcgYSBub2RlIGNvdWxkIGVuZCB1cCBkZWxldGluZyBPYmplY3RpdmUtQyBldmVu
dCBsaXN0ZW5lcnMKKyAgICAgICAgc29tZSBvZiB3aGljaCBtYXkgYmUgdGhlIGxhc3Qgb2JqZWN0
IGhvbGRpbmcgb250byBXZWJWaWV3IGl0c2VsZiBpbiB0aGUgbWlkZGxlIG9mIHJ1bm5pbmcgR0Mu
CisKKyAgICAgICAgSXQncyBub3QgZ2VuZXJhbGx5IHNhZmUgdG8gZGVsZXRlIE9iamVjdGl2ZS1D
IG9iamVjdHMgZGVmaWVuZCBieSBjbGllbnQgYXBwbGljYXRpb25zIHNpbmNlCisgICAgICAgIGRl
YWxsb2MgY291bGQgZXhlY3V0ZSBhcmJpdHJhcnkgY29kZSwgYW5kIGZvciBpbnN0YW5jZSwgdHJ5
IHRvIGV4ZWN1dGUgSmF2YVNjcmlwdCBvciBsb2FkIG5ldyBwYWdlLgorCisgICAgICAgIEZpeGVk
IHRoZSBidWcgYnkgZGVsYXlpbmcgdGhlIGRlYWxsb2MnaW5nIG9mIE9iamVjdGl2ZSBldmVudCBs
aXN0ZW5lcnMgdmlhIGF1dG9yZWxlYXNlIHBvb2wuCisKKyAgICAgICAgKiBET00vT2JqQ0V2ZW50
TGlzdGVuZXIubW06CisgICAgICAgIChXZWJDb3JlOjpPYmpDRXZlbnRMaXN0ZW5lcjo6fk9iakNF
dmVudExpc3RlbmVyKToKKwogMjAxOS0wNC0xMCAgU2FpZCBBYm91LUhhbGxhd2EgIDxzYWJvdWhh
bGxhd2FAYXBwbGUuY29tPgogCiAgICAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSBzaG91bGQg
ZXhlY3V0ZSBiZWZvcmUgdGhlIG5leHQgZnJhbWUKSW5kZXg6IFNvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL0RPTS9PYmpDRXZlbnRMaXN0ZW5lci5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9ET00vT2JqQ0V2ZW50TGlzdGVuZXIubW0JKHJldmlzaW9uIDI0NDM3MSkKKysr
IFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0RPTS9PYmpDRXZlbnRMaXN0ZW5lci5tbQkod29ya2lu
ZyBjb3B5KQpAQCAtNzAsNiArNzAsOSBAQCBPYmpDRXZlbnRMaXN0ZW5lcjo6T2JqQ0V2ZW50TGlz
dGVuZXIoT2JqCiBPYmpDRXZlbnRMaXN0ZW5lcjo6fk9iakNFdmVudExpc3RlbmVyKCkKIHsKICAg
ICBsaXN0ZW5lck1hcC0+cmVtb3ZlKG1fbGlzdGVuZXIuZ2V0KCkpOworICAgIC8vIEF2b2lkIGV4
ZWN1dGluZyBhcmJpdHJhcnkgY29kZSBkdXJpbmcgR0M7IGUuZy4gaW5zaWRlIE5vZGU6On5Ob2Rl
LgorICAgIFttX2xpc3RlbmVyLmdldCgpIHJldGFpbl07CisgICAgW21fbGlzdGVuZXIuZ2V0KCkg
YXV0b3JlbGVhc2VdOwogfQogCiB2b2lkIE9iakNFdmVudExpc3RlbmVyOjpoYW5kbGVFdmVudChT
Y3JpcHRFeGVjdXRpb25Db250ZXh0JiwgRXZlbnQmIGV2ZW50KQpJbmRleDogVG9vbHMvQ2hhbmdl
TG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gMjQ0NDQyKQorKysg
VG9vbHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTktMDQt
MTggIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQ3Jhc2ggaW4g
RnJhbWVMb2FkZXI6OnN0b3BBbGxMb2FkZXJzIHZpYSBbV2ViVmlldyBkZWFsbG9jXSBpbnNpZGUg
fk9iakNFdmVudExpc3RlbmVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xOTcwNzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBBZGRlZCBhIHJlZ3Jlc3Npb24gdGVzdC4gSXQgaGl0cyBhIHNsaWdodGx5IGRp
ZmZlcmVudCBiYWNrdHJhY2UgYnV0IG9mIHRoZSBzYW1lIGNsYXNzIG9mIGlzc3Vlcy4KKworICAg
ICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorCiAyMDE5LTA0LTE4ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAg
ICAgICAgIEFkZCBzdXBwb3J0IGZvciBwYXJzaW5nIEZhaXJQbGF5U3RyZWFtaW5nIFBTU0ggYm94
ZXMuCkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvago9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJL
aXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkocmV2aXNpb24gMjQ0MzcxKQorKysgVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJ
KHdvcmtpbmcgY29weSkKQEAgLTY3MCw2ICs2NzAsNyBAQAogCQk5QjYyNjMwQzFGOEMyNUM4MDA3
RUUyOUIgLyogY29weS11cmwuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5QjYyNjMwQjFGOEMyNTEwMDA3RUUyOUIgLyogY29weS11cmwu
aHRtbCAqLzsgfTsKIAkJOUI3QTM3QzQxRjhBRUJBNTAwNEFBMjI4IC8qIENvcHlVUkwubW0gaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5QjdBMzdDMjFGOEFF
QkE1MDA0QUEyMjggLyogQ29weVVSTC5tbSAqLzsgfTsKIAkJOUI3RDc0MEYxRjgzNzg3NzAwMDZD
NDMyIC8qIHBhc3RlLXJ0ZmQuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5QjdENzQwRTFGODM3N0U2MDAwNkM0MzIgLyogcGFzdGUtcnRm
ZC5odG1sICovOyB9OworCQk5QkFEN0YzRTIyNjkwRjIwMDBGOERBNjYgLyogRGVhbGxvY1dlYlZp
ZXdJbkV2ZW50TGlzdGVuZXIubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5QkFEN0YzRDIyNjkwRjE0MDBGOERBNjYgLyogRGVhbGxvY1dlYlZpZXdJbkV2
ZW50TGlzdGVuZXIubW0gKi87IH07CiAJCTlCQ0I3QzI4MjAxMzA2MDAwMDNFN0MwQyAvKiBQYXN0
ZUhUTUwubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5
QkNCN0MyNjIwMTMwNjAwMDAzRTdDMEMgLyogUGFzdGVIVE1MLm1tICovOyB9OwogCQk5QkNENDEx
QTIwNkRCQ0EzMDAxRDcxQkUgLyogbXNvLWxpc3Qtb24taDQuaHRtbCBpbiBDb3B5IFJlc291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5QkNENDExOTIwNkQ1RUQ3MDAx
RDcxQkUgLyogbXNvLWxpc3Qtb24taDQuaHRtbCAqLzsgfTsKIAkJOUJENDIzOUExRTA0QkQ5ODAw
MjAwMzk1IC8qIEF0dHJpYnV0ZWRTdWJzdHJpbmdGb3JQcm9wb3NlZFJhbmdlV2l0aEltYWdlLm1t
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOUJENDIzOTkx
RTA0QkQ5ODAwMjAwMzk1IC8qIEF0dHJpYnV0ZWRTdWJzdHJpbmdGb3JQcm9wb3NlZFJhbmdlV2l0
aEltYWdlLm1tICovOyB9OwpAQCAtMTkzMSw2ICsxOTMyLDcgQEAKIAkJOUI3OTE2NEYxQkQ4OUQw
RDAwRDUwQjhGIC8qIEZpcnN0UmVzcG9uZGVyU2Nyb2xsaW5nUG9zaXRpb24ubW0gKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBGaXJzdFJlc3BvbmRlclNjcm9sbGluZ1Bv
c2l0aW9uLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5QjdBMzdDMjFGOEFFQkE1
MDA0QUEyMjggLyogQ29weVVSTC5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IENvcHlVUkwubW07
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTlCN0Q3NDBFMUY4Mzc3RTYwMDA2QzQzMiAv
KiBwYXN0ZS1ydGZkLmh0bWwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0Lmh0bWw7IHBhdGggPSAicGFzdGUtcnRmZC5odG1sIjsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOUJBRDdGM0QyMjY5MEYxNDAwRjhEQTY2IC8qIERlYWxsb2NX
ZWJWaWV3SW5FdmVudExpc3RlbmVyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gRGVhbGxvY1dlYlZpZXdJbkV2ZW50TGlzdGVuZXIubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTlCQ0I3QzI2MjAxMzA2MDAwMDNFN0MwQyAvKiBQYXN0ZUhUTUwubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQYXN0ZUhUTUwubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTlCQ0Q0MTE5MjA2RDVFRDcwMDFENzFCRSAvKiBtc28tbGlzdC1vbi1oNC5odG1s
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5o
dG1sOyBwYXRoID0gIm1zby1saXN0LW9uLWg0Lmh0bWwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk5QkQ0MjM5OTFFMDRCRDk4MDAyMDAzOTUgLyogQXR0cmlidXRlZFN1YnN0cmluZ0Zv
clByb3Bvc2VkUmFuZ2VXaXRoSW1hZ2UubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IHBhdGggPSBBdHRyaWJ1dGVkU3Vic3RyaW5nRm9yUHJvcG9zZWRSYW5nZVdpdGhJbWFnZS5t
bTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTI4NjMsNiArMjg2NSw3IEBACiAJCQlj
aGlsZHJlbiA9ICgKIAkJCQk5QkQ1MTExQjFGRThFMTE2MDBEMkI2MzAgLyogQWNjZXNzaW5nUGFz
dGVkSW1hZ2UubW0gKi8sCiAJCQkJNkIzMDYxMDUyMThBMzcyOTAwRjVBODAyIC8qIENsb3NpbmdX
ZWJWaWV3Lm1tICovLAorCQkJCTlCQUQ3RjNEMjI2OTBGMTQwMEY4REE2NiAvKiBEZWFsbG9jV2Vi
Vmlld0luRXZlbnRMaXN0ZW5lci5tbSAqLywKIAkJCQk1Q0Y1NDBFODIyNTdFNjRCMDBFNkJDMEUg
LyogRG93bmxvYWRUaHJlYWQubW0gKi8sCiAJCQkJNUM2RTI3QTYyMjRFRUJFQTAwMTI4NzM2IC8q
IFVSTENhbm9uaWNhbGl6YXRpb24ubW0gKi8sCiAJCQkpOwpAQCAtNDA2Myw2ICs0MDY2LDcgQEAK
IAkJCQk0NkE5MTE1OTIxMDhFNjc4MDA3OEQ0MEQgLyogQ3VzdG9tVXNlckFnZW50Lm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJNzUxQjA1RDYxRjhFQUM0MTAwMjhBMDlFIC8qIERhdGFiYXNlVHJhY2tl
clRlc3QubW0gaW4gU291cmNlcyAqLywKIAkJCQkyREM0Q0Y3NzFEMkQ5REQ4MDBFQ0NDOTQgLyog
RGF0YURldGVjdGlvbi5tbSBpbiBTb3VyY2VzICovLAorCQkJCTlCQUQ3RjNFMjI2OTBGMjAwMEY4
REE2NiAvKiBEZWFsbG9jV2ViVmlld0luRXZlbnRMaXN0ZW5lci5tbSBpbiBTb3VyY2VzICovLAog
CQkJCTUxOEVFNTFEMjBBNzhEMzYwMEUwMjRGMyAvKiBEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9u
QWN0aW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMkQxNjQ2RTIxRDE4NjJDRDAwMDE1QTFBIC8q
IERlZmVycmVkVmlld0luV2luZG93U3RhdGVDaGFuZ2UubW0gaW4gU291cmNlcyAqLywKIAkJCQk0
NjkxOEVGQzIyMzcyODNDMDA0NjhERkUgLyogRGV2aWNlT3JpZW50YXRpb24ubW0gaW4gU291cmNl
cyAqLywK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>367770</attachid>
            <date>2019-04-18 16:03:48 -0700</date>
            <delta_ts>2019-04-19 09:59:58 -0700</delta_ts>
            <desc>Fixes the bug</desc>
            <filename>bug-197079-20190418160347.patch</filename>
            <type>text/plain</type>
            <size>9970</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cJKHJldmlzaW9uIDI0NDM3MSkKKysrIFNv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDIxIEBACisyMDE5LTA0LTE4ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisg
ICAgICAgIENyYXNoIGluIEZyYW1lTG9hZGVyOjpzdG9wQWxsTG9hZGVycyB2aWEgW1dlYlZpZXcg
ZGVhbGxvY10gaW5zaWRlIH5PYmpDRXZlbnRMaXN0ZW5lcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk3MDc5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIGNyYXNoIHdhcyBjYXVzZWQgYnkgdGhlIGZh
Y3QgZGVsZXRpbmcgYSBub2RlIGNvdWxkIGVuZCB1cCBkZWxldGluZyBPYmplY3RpdmUtQyBldmVu
dCBsaXN0ZW5lcnMKKyAgICAgICAgc29tZSBvZiB3aGljaCBtYXkgYmUgdGhlIGxhc3Qgb2JqZWN0
IGhvbGRpbmcgb250byBXZWJWaWV3IGl0c2VsZiBpbiB0aGUgbWlkZGxlIG9mIHJ1bm5pbmcgR0Mu
CisKKyAgICAgICAgSXQncyBub3QgZ2VuZXJhbGx5IHNhZmUgdG8gZGVsZXRlIE9iamVjdGl2ZS1D
IG9iamVjdHMgZGVmaWVuZCBieSBjbGllbnQgYXBwbGljYXRpb25zIHNpbmNlCisgICAgICAgIGRl
YWxsb2MgY291bGQgZXhlY3V0ZSBhcmJpdHJhcnkgY29kZSwgYW5kIGZvciBpbnN0YW5jZSwgdHJ5
IHRvIGV4ZWN1dGUgSmF2YVNjcmlwdCBvciBsb2FkIG5ldyBwYWdlLgorCisgICAgICAgIEZpeGVk
IHRoZSBidWcgYnkgZGVsYXlpbmcgdGhlIGRlYWxsb2MnaW5nIG9mIE9iamVjdGl2ZSBldmVudCBs
aXN0ZW5lcnMgdmlhIGF1dG9yZWxlYXNlIHBvb2wuCisKKyAgICAgICAgKiBET00vT2JqQ0V2ZW50
TGlzdGVuZXIubW06CisgICAgICAgIChXZWJDb3JlOjpPYmpDRXZlbnRMaXN0ZW5lcjo6fk9iakNF
dmVudExpc3RlbmVyKToKKwogMjAxOS0wNC0xMCAgU2FpZCBBYm91LUhhbGxhd2EgIDxzYWJvdWhh
bGxhd2FAYXBwbGUuY29tPgogCiAgICAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSBzaG91bGQg
ZXhlY3V0ZSBiZWZvcmUgdGhlIG5leHQgZnJhbWUKSW5kZXg6IFNvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL0RPTS9PYmpDRXZlbnRMaXN0ZW5lci5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9ET00vT2JqQ0V2ZW50TGlzdGVuZXIubW0JKHJldmlzaW9uIDI0NDM3MSkKKysr
IFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0RPTS9PYmpDRXZlbnRMaXN0ZW5lci5tbQkod29ya2lu
ZyBjb3B5KQpAQCAtNzAsNiArNzAsOSBAQCBPYmpDRXZlbnRMaXN0ZW5lcjo6T2JqQ0V2ZW50TGlz
dGVuZXIoT2JqCiBPYmpDRXZlbnRMaXN0ZW5lcjo6fk9iakNFdmVudExpc3RlbmVyKCkKIHsKICAg
ICBsaXN0ZW5lck1hcC0+cmVtb3ZlKG1fbGlzdGVuZXIuZ2V0KCkpOworICAgIC8vIEF2b2lkIGV4
ZWN1dGluZyBhcmJpdHJhcnkgY29kZSBkdXJpbmcgR0M7IGUuZy4gaW5zaWRlIE5vZGU6On5Ob2Rl
LgorICAgIFttX2xpc3RlbmVyLmdldCgpIHJldGFpbl07CisgICAgW21fbGlzdGVuZXIuZ2V0KCkg
YXV0b3JlbGVhc2VdOwogfQogCiB2b2lkIE9iakNFdmVudExpc3RlbmVyOjpoYW5kbGVFdmVudChT
Y3JpcHRFeGVjdXRpb25Db250ZXh0JiwgRXZlbnQmIGV2ZW50KQpJbmRleDogVG9vbHMvQ2hhbmdl
TG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gMjQ0NDQyKQorKysg
VG9vbHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTktMDQt
MTggIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQ3Jhc2ggaW4g
RnJhbWVMb2FkZXI6OnN0b3BBbGxMb2FkZXJzIHZpYSBbV2ViVmlldyBkZWFsbG9jXSBpbnNpZGUg
fk9iakNFdmVudExpc3RlbmVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xOTcwNzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBBZGRlZCBhIHJlZ3Jlc3Npb24gdGVzdC4gSXQgaGl0cyBhIHNsaWdodGx5IGRp
ZmZlcmVudCBiYWNrdHJhY2UgYnV0IG9mIHRoZSBzYW1lIGNsYXNzIG9mIGlzc3Vlcy4KKworICAg
ICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0TGVnYWN5L21hYy9EZWFs
bG9jV2ViVmlld0luRXZlbnRMaXN0ZW5lci5tbTogQWRkZWQuCisKIDIwMTktMDQtMTggIEplciBO
b2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIHN1cHBvcnQgZm9yIHBh
cnNpbmcgRmFpclBsYXlTdHJlYW1pbmcgUFNTSCBib3hlcy4KSW5kZXg6IFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCShyZXZpc2lvbiAyNDQzNzEpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJL
aXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtNjcwLDYg
KzY3MCw3IEBACiAJCTlCNjI2MzBDMUY4QzI1QzgwMDdFRTI5QiAvKiBjb3B5LXVybC5odG1sIGlu
IENvcHkgUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDlCNjI2
MzBCMUY4QzI1MTAwMDdFRTI5QiAvKiBjb3B5LXVybC5odG1sICovOyB9OwogCQk5QjdBMzdDNDFG
OEFFQkE1MDA0QUEyMjggLyogQ29weVVSTC5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDlCN0EzN0MyMUY4QUVCQTUwMDRBQTIyOCAvKiBDb3B5VVJMLm1t
ICovOyB9OwogCQk5QjdENzQwRjFGODM3ODc3MDAwNkM0MzIgLyogcGFzdGUtcnRmZC5odG1sIGlu
IENvcHkgUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDlCN0Q3
NDBFMUY4Mzc3RTYwMDA2QzQzMiAvKiBwYXN0ZS1ydGZkLmh0bWwgKi87IH07CisJCTlCQUQ3RjNF
MjI2OTBGMjAwMEY4REE2NiAvKiBEZWFsbG9jV2ViVmlld0luRXZlbnRMaXN0ZW5lci5tbSBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDlCQUQ3RjNEMjI2OTBG
MTQwMEY4REE2NiAvKiBEZWFsbG9jV2ViVmlld0luRXZlbnRMaXN0ZW5lci5tbSAqLzsgfTsKIAkJ
OUJDQjdDMjgyMDEzMDYwMDAwM0U3QzBDIC8qIFBhc3RlSFRNTC5tbSBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDlCQ0I3QzI2MjAxMzA2MDAwMDNFN0MwQyAv
KiBQYXN0ZUhUTUwubW0gKi87IH07CiAJCTlCQ0Q0MTFBMjA2REJDQTMwMDFENzFCRSAvKiBtc28t
bGlzdC1vbi1oNC5odG1sIGluIENvcHkgUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDlCQ0Q0MTE5MjA2RDVFRDcwMDFENzFCRSAvKiBtc28tbGlzdC1vbi1oNC5o
dG1sICovOyB9OwogCQk5QkQ0MjM5QTFFMDRCRDk4MDAyMDAzOTUgLyogQXR0cmlidXRlZFN1YnN0
cmluZ0ZvclByb3Bvc2VkUmFuZ2VXaXRoSW1hZ2UubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5QkQ0MjM5OTFFMDRCRDk4MDAyMDAzOTUgLyogQXR0cmli
dXRlZFN1YnN0cmluZ0ZvclByb3Bvc2VkUmFuZ2VXaXRoSW1hZ2UubW0gKi87IH07CkBAIC0xOTMx
LDYgKzE5MzIsNyBAQAogCQk5Qjc5MTY0RjFCRDg5RDBEMDBENTBCOEYgLyogRmlyc3RSZXNwb25k
ZXJTY3JvbGxpbmdQb3NpdGlvbi5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IEZpcnN0UmVzcG9uZGVyU2Nyb2xsaW5nUG9zaXRpb24ubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTlCN0EzN0MyMUY4QUVCQTUwMDRBQTIyOCAvKiBDb3B5VVJMLm1tICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAub2JqY3BwOyBwYXRoID0gQ29weVVSTC5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJOUI3RDc0MEUxRjgzNzdFNjAwMDZDNDMyIC8qIHBhc3RlLXJ0ZmQuaHRtbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuaHRtbDsgcGF0
aCA9ICJwYXN0ZS1ydGZkLmh0bWwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5QkFE
N0YzRDIyNjkwRjE0MDBGOERBNjYgLyogRGVhbGxvY1dlYlZpZXdJbkV2ZW50TGlzdGVuZXIubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBEZWFsbG9jV2ViVmlld0lu
RXZlbnRMaXN0ZW5lci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOUJDQjdDMjYy
MDEzMDYwMDAwM0U3QzBDIC8qIFBhc3RlSFRNTC5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFBh
c3RlSFRNTC5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOUJDRDQxMTkyMDZENUVE
NzAwMUQ3MUJFIC8qIG1zby1saXN0LW9uLWg0Lmh0bWwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lmh0bWw7IHBhdGggPSAibXNvLWxpc3Qtb24t
aDQuaHRtbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTlCRDQyMzk5MUUwNEJEOTgw
MDIwMDM5NSAvKiBBdHRyaWJ1dGVkU3Vic3RyaW5nRm9yUHJvcG9zZWRSYW5nZVdpdGhJbWFnZS5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEF0dHJpYnV0ZWRTdWJz
dHJpbmdGb3JQcm9wb3NlZFJhbmdlV2l0aEltYWdlLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtMjg2Myw2ICsyODY1LDcgQEAKIAkJCWNoaWxkcmVuID0gKAogCQkJCTlCRDUxMTFC
MUZFOEUxMTYwMEQyQjYzMCAvKiBBY2Nlc3NpbmdQYXN0ZWRJbWFnZS5tbSAqLywKIAkJCQk2QjMw
NjEwNTIxOEEzNzI5MDBGNUE4MDIgLyogQ2xvc2luZ1dlYlZpZXcubW0gKi8sCisJCQkJOUJBRDdG
M0QyMjY5MEYxNDAwRjhEQTY2IC8qIERlYWxsb2NXZWJWaWV3SW5FdmVudExpc3RlbmVyLm1tICov
LAogCQkJCTVDRjU0MEU4MjI1N0U2NEIwMEU2QkMwRSAvKiBEb3dubG9hZFRocmVhZC5tbSAqLywK
IAkJCQk1QzZFMjdBNjIyNEVFQkVBMDAxMjg3MzYgLyogVVJMQ2Fub25pY2FsaXphdGlvbi5tbSAq
LywKIAkJCSk7CkBAIC00MDYzLDYgKzQwNjYsNyBAQAogCQkJCTQ2QTkxMTU5MjEwOEU2NzgwMDc4
RDQwRCAvKiBDdXN0b21Vc2VyQWdlbnQubW0gaW4gU291cmNlcyAqLywKIAkJCQk3NTFCMDVENjFG
OEVBQzQxMDAyOEEwOUUgLyogRGF0YWJhc2VUcmFja2VyVGVzdC5tbSBpbiBTb3VyY2VzICovLAog
CQkJCTJEQzRDRjc3MUQyRDlERDgwMEVDQ0M5NCAvKiBEYXRhRGV0ZWN0aW9uLm1tIGluIFNvdXJj
ZXMgKi8sCisJCQkJOUJBRDdGM0UyMjY5MEYyMDAwRjhEQTY2IC8qIERlYWxsb2NXZWJWaWV3SW5F
dmVudExpc3RlbmVyLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNTE4RUU1MUQyMEE3OEQzNjAwRTAy
NEYzIC8qIERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24ubW0gaW4gU291cmNlcyAqLywK
IAkJCQkyRDE2NDZFMjFEMTg2MkNEMDAwMTVBMUEgLyogRGVmZXJyZWRWaWV3SW5XaW5kb3dTdGF0
ZUNoYW5nZS5tbSBpbiBTb3VyY2VzICovLAogCQkJCTQ2OTE4RUZDMjIzNzI4M0MwMDQ2OERGRSAv
KiBEZXZpY2VPcmllbnRhdGlvbi5tbSBpbiBTb3VyY2VzICovLApJbmRleDogVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXRMZWdhY3kvbWFjL0RlYWxsb2NXZWJWaWV3SW5FdmVudExpc3Rl
bmVyLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0TGVn
YWN5L21hYy9EZWFsbG9jV2ViVmlld0luRXZlbnRMaXN0ZW5lci5tbQkobm9uZXhpc3RlbnQpCisr
KyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdExlZ2FjeS9tYWMvRGVhbGxvY1dlYlZp
ZXdJbkV2ZW50TGlzdGVuZXIubW0JKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw5MyBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNpbXBvcnQgImNvbmZpZy5oIgorI2ltcG9ydCAiUGxhdGZvcm1VdGlsaXRpZXMu
aCIKKyNpbXBvcnQgIldURlN0cmluZ1V0aWxpdGllcy5oIgorCisjaW1wb3J0IDxDYXJib24vQ2Fy
Ym9uLmg+CisjaW1wb3J0IDxXZWJLaXQvV2ViVmlld1ByaXZhdGUuaD4KKyNpbXBvcnQgPHd0Zi9S
ZXRhaW5QdHIuaD4KKworZXh0ZXJuICJDIiB2b2lkIEpTU3luY2hyb25vdXNHYXJiYWdlQ29sbGVj
dEZvckRlYnVnZ2luZyhKU0NvbnRleHRSZWYpOworCisjaWYgSlNDX09CSkNfQVBJX0VOQUJMRUQK
Kworc3RhdGljIGJvb2wgZGlkRmluaXNoTG9hZCA9IGZhbHNlOworc3RhdGljIGJvb2wgZGlkQ2xv
c2UgPSBmYWxzZTsKK3N0YXRpYyBSZXRhaW5QdHI8V2ViVmlldz4gd2ViVmlldzsKKworQGludGVy
ZmFjZSBEZWFsbG9jV2ViVmlld0luRXZlbnRMaXN0ZW5lckxvYWREZWxlZ2F0ZSA6IE5TT2JqZWN0
IDxXZWJGcmFtZUxvYWREZWxlZ2F0ZT4KK0BlbmQKKworQGltcGxlbWVudGF0aW9uIERlYWxsb2NX
ZWJWaWV3SW5FdmVudExpc3RlbmVyTG9hZERlbGVnYXRlCistICh2b2lkKXdlYlZpZXc6KFdlYlZp
ZXcgKilzZW5kZXIgZGlkRmluaXNoTG9hZEZvckZyYW1lOihXZWJGcmFtZSAqKWZyYW1lCit7Cisg
ICAgZGlkRmluaXNoTG9hZCA9IHRydWU7Cit9CitAZW5kCisKK0BpbnRlcmZhY2UgRGVhbGxvY1dl
YlZpZXdJbkV2ZW50TGlzdGVuZXIgOiBOU09iamVjdCA8RE9NRXZlbnRMaXN0ZW5lcj4KK0BlbmQK
KworQGltcGxlbWVudGF0aW9uIERlYWxsb2NXZWJWaWV3SW5FdmVudExpc3RlbmVyCistICh2b2lk
KWhhbmRsZUV2ZW50OihET01FdmVudCAqKWV2ZW50Cit7CisKK30KKworLSAodm9pZClkZWFsbG9j
Cit7CisgICAgd2ViVmlldyA9IG51bGxwdHI7CisgICAgW3N1cGVyIGRlYWxsb2NdOworICAgIGRp
ZENsb3NlID0gdHJ1ZTsKK30KK0BlbmQKKworbmFtZXNwYWNlIFRlc3RXZWJLaXRBUEkgeworCitU
RVNUKFdlYktpdExlZ2FjeSwgRGVhbGxvY1dlYlZpZXdJbkV2ZW50TGlzdGVuZXIpCit7CisgICAg
eworICAgICAgICBOU0F1dG9yZWxlYXNlUG9vbCAqcG9vbCA9IFtbTlNBdXRvcmVsZWFzZVBvb2wg
YWxsb2NdIGluaXRdOworICAgICAgICB3ZWJWaWV3ID0gYWRvcHROUyhbW1dlYlZpZXcgYWxsb2Nd
IGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA0MDAsIDQwMCkgZnJhbWVOYW1lOm5pbCBn
cm91cE5hbWU6bmlsXSk7CisgICAgICAgIGF1dG8gbG9hZERlbGVnYXRlID0gYWRvcHROUyhbW0Rl
YWxsb2NXZWJWaWV3SW5FdmVudExpc3RlbmVyTG9hZERlbGVnYXRlIGFsbG9jXSBpbml0XSk7Cisg
ICAgICAgIHdlYlZpZXcuZ2V0KCkuZnJhbWVMb2FkRGVsZWdhdGUgPSBsb2FkRGVsZWdhdGUuZ2V0
KCk7CisKKyAgICAgICAgW1t3ZWJWaWV3IG1haW5GcmFtZV0gbG9hZEhUTUxTdHJpbmc6QCI8aHRt
bD48Ym9keT48L2JvZHk+PC9odG1sPiIgYmFzZVVSTDpuaWxdOworICAgICAgICBVdGlsOjpydW4o
JmRpZEZpbmlzaExvYWQpOworCisgICAgICAgIGF1dG8gbGlzdGVuZXIgPSBhZG9wdE5TKFtbRGVh
bGxvY1dlYlZpZXdJbkV2ZW50TGlzdGVuZXIgYWxsb2NdIGluaXRdKTsKKyAgICAgICAgW1tbd2Vi
VmlldyBtYWluRnJhbWVEb2N1bWVudF0gYm9keV0gYWRkRXZlbnRMaXN0ZW5lcjpAImtleXByZXNz
IiBsaXN0ZW5lcjpsaXN0ZW5lci5nZXQoKSB1c2VDYXB0dXJlOk5PXTsKKyAgICAgICAgbGlzdGVu
ZXIgPSBudWxscHRyOworICAgICAgICBbd2ViVmlldyBjbG9zZV07CisgICAgICAgIFtwb29sIGRy
YWluXTsKKyAgICB9CisgICAgVXRpbDo6cnVuKCZkaWRDbG9zZSk7Cit9CisKK30gLy8gbmFtZXNw
YWNlIFRlc3RXZWJLaXRBUEkKKworI2VuZGlmIC8vIEVOQUJMRShKU0NfT0JKQ19BUEkpCg==
</data>
<flag name="review"
          id="384110"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>