<?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>167414</bug_id>
          
          <creation_ts>2017-01-25 03:19:11 -0800</creation_ts>
          <short_desc>[GTK] Icon Database should be in private browsing mode for ephemeral web views</short_desc>
          <delta_ts>2017-01-25 09:04:31 -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>WebKitGTK</component>
          <version>WebKit Local 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>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>berto</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>commit-queue</cc>
    
    <cc>gustavo</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>mrobinson</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1269769</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-01-25 03:19:11 -0800</bug_when>
    <thetext>This is already done by WebProcessPool for the legacy private session setting, only checking the setting and not whether there are ephemeral web pages or not.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1269770</commentid>
    <comment_count>1</comment_count>
      <attachid>299687</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-01-25 03:23:58 -0800</bug_when>
    <thetext>Created attachment 299687
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1269771</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-25 03:26:20 -0800</bug_when>
    <thetext>Thanks for the patch. If this patch contains new public API please make sure it follows the guidelines for new WebKit2 GTK+ API. See http://trac.webkit.org/wiki/WebKitGTK/AddingNewWebKit2API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1269825</commentid>
    <comment_count>3</comment_count>
      <attachid>299687</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-01-25 08:39:00 -0800</bug_when>
    <thetext>Comment on attachment 299687
Patch

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

Exactly the sort of thing I was worried about with allowing a per-view ephemeral setting... will there be more?

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp:785
&gt; +        // We notify the context here to ensure it&apos;s called only once. Ideally we should
&gt; +        // call this in finalize, not dispose, but finalize is used internally and we don&apos;t
&gt; +        // have access to the instance pointer from the private struct destructor.
&gt; +        webkitWebContextWebViewDestroyed(webView-&gt;priv-&gt;context.get(), webView);

I don&apos;t understand this. Of course you can move the call to webkitWebContextWebViewDestroyed finalize? Why not? What do you mean it&apos;s used internally?

&gt; Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFaviconDatabase.cpp:163
&gt; +static void testPrivateBrowsing(FaviconDatabaseTest* test)

Shouldn&apos;t you add a test for an ephemeral web context as well?

&gt; Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFaviconDatabase.cpp:173
&gt; +    // An ephemeral web view should nto write to the database.

nto -&gt; not</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1269831</commentid>
    <comment_count>4</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-01-25 08:52:28 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Comment on attachment 299687 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=299687&amp;action=review
&gt; 
&gt; Exactly the sort of thing I was worried about with allowing a per-view
&gt; ephemeral setting... will there be more?

This is not because we allow per-webview ephemeral setting, but because the icon database works only with the legacy private browsing setting.

&gt; &gt; Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp:785
&gt; &gt; +        // We notify the context here to ensure it&apos;s called only once. Ideally we should
&gt; &gt; +        // call this in finalize, not dispose, but finalize is used internally and we don&apos;t
&gt; &gt; +        // have access to the instance pointer from the private struct destructor.
&gt; &gt; +        webkitWebContextWebViewDestroyed(webView-&gt;priv-&gt;context.get(), webView);
&gt; 
&gt; I don&apos;t understand this. Of course you can move the call to
&gt; webkitWebContextWebViewDestroyed finalize? Why not? What do you mean it&apos;s
&gt; used internally?

Finalize is defined by WEBKIT_DEFINE_TYPE. So when we want to do something on finalize we use the private instance constructor, but that approach doesn&apos;t work when you also need access to the pointer of the object instance.

&gt; &gt; Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFaviconDatabase.cpp:163
&gt; &gt; +static void testPrivateBrowsing(FaviconDatabaseTest* test)
&gt; 
&gt; Shouldn&apos;t you add a test for an ephemeral web context as well?

It&apos;s the same thing, as I said this is not happening because of per-webview setting. An ephemeral context simply creates ephemeral web views.

&gt; &gt; Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFaviconDatabase.cpp:173
&gt; &gt; +    // An ephemeral web view should nto write to the database.
&gt; 
&gt; nto -&gt; not

Oops.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1269837</commentid>
    <comment_count>5</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-01-25 08:57:30 -0800</bug_when>
    <thetext>(In reply to comment #4) 
&gt; It&apos;s the same thing, as I said this is not happening because of per-webview
&gt; setting. An ephemeral context simply creates ephemeral web views.

Yes, but since it&apos;s accomplished through the API in two different ways, it would be good to add a test to ensure it really is the same thing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1269838</commentid>
    <comment_count>6</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-01-25 09:00:10 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; (In reply to comment #4) 
&gt; &gt; It&apos;s the same thing, as I said this is not happening because of per-webview
&gt; &gt; setting. An ephemeral context simply creates ephemeral web views.
&gt; 
&gt; Yes, but since it&apos;s accomplished through the API in two different ways, it
&gt; would be good to add a test to ensure it really is the same thing.

You don&apos;t know how painful the favicon unit tests are :-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1269840</commentid>
    <comment_count>7</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-01-25 09:04:31 -0800</bug_when>
    <thetext>Committed r211147: &lt;http://trac.webkit.org/changeset/211147&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>299687</attachid>
            <date>2017-01-25 03:23:58 -0800</date>
            <delta_ts>2017-01-25 08:39:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>wk2-icon-database-private.diff</filename>
            <type>text/plain</type>
            <size>8708</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCAzMDNlZmZhYmFhMy4uMGJlNGQzZmY0YTcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNCBAQAorMjAxNy0wMS0yNSAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGln
YWxpYS5jb20+CisKKyAgICAgICAgW0dUS10gSWNvbiBEYXRhYmFzZSBzaG91bGQgYmUgaW4gcHJp
dmF0ZSBicm93c2luZyBtb2RlIGZvciBlcGhlbWVyYWwgd2ViIHZpZXdzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjc0MTQKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIGFscmVhZHkgZG9uZSBi
eSBXZWJQcm9jZXNzUG9vbCBmb3IgdGhlIGxlZ2FjeSBwcml2YXRlIHNlc3Npb24gc2V0dGluZywg
YnV0IG9ubHkgY2hlY2tpbmcgdGhlIHNldHRpbmcgYW5kIG5vdAorICAgICAgICB3aGV0aGVyIHRo
ZXJlIGFyZSBlcGhlbWVyYWwgd2ViIHBhZ2VzIG9yIG5vdC4KKworICAgICAgICAqIFVJUHJvY2Vz
cy9BUEkvZ3RrL1dlYktpdFdlYkNvbnRleHQuY3BwOgorICAgICAgICAod2Via2l0V2ViQ29udGV4
dEVuYWJsZUljb25EYXRhYmFzZVByaXZhdGVCcm93c2luZ0lmTmVlZGVkKTogRW5hYmxlIGljb24g
ZGF0YWJhc2UgcHJpdmF0ZSBicm93c2luZyBpZiB0aGVyZSdzCisgICAgICAgIGFueSBlcGhlbWVy
YWwgd2ViIHZpZXcuCisgICAgICAgICh3ZWJraXRXZWJDb250ZXh0RGlzYWJsZUljb25EYXRhYmFz
ZVByaXZhdGVCcm93c2luZ0lmTmVlZGVkKTogRGlzYWJsZSBpY29uIGRhdGFiYXNlIHByaXZhdGUg
YnJvd3NpbmcgaWYgdGhlcmUKKyAgICAgICAgYXJlbid0IGVwaGVtZXJhbCB3ZWIgdmlld3MgYW55
bW9yZS4KKyAgICAgICAgKHdlYmtpdF93ZWJfY29udGV4dF9zZXRfZmF2aWNvbl9kYXRhYmFzZV9k
aXJlY3RvcnkpOiBFbmFibGUgaWNvbiBkYXRhYmFzZSBwcml2YXRlIGJyb3dzaW5nIGlmIHRoZSB3
ZWIgY29udGV4dCBpcyBlcGhlbWVyYWwuCisgICAgICAgICh3ZWJraXRXZWJDb250ZXh0Q3JlYXRl
UGFnZUZvcldlYlZpZXcpOiBDYWxsIHdlYmtpdFdlYkNvbnRleHRFbmFibGVJY29uRGF0YWJhc2VQ
cml2YXRlQnJvd3NpbmdJZk5lZWRlZCgpLgorICAgICAgICAod2Via2l0V2ViQ29udGV4dFdlYlZp
ZXdEZXN0cm95ZWQpOiBDYWxsIHdlYmtpdFdlYkNvbnRleHREaXNhYmxlSWNvbkRhdGFiYXNlUHJp
dmF0ZUJyb3dzaW5nSWZOZWVkZWQoKS4KKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2d0ay9XZWJL
aXRXZWJWaWV3LmNwcDoKKyAgICAgICAgKHdlYmtpdFdlYlZpZXdEaXNwb3NlKTogRW5zdXJlIHdl
YmtpdFdlYkNvbnRleHRXZWJWaWV3RGVzdHJveWVkIGlzIGNhbGxlZCBvbmx5IG9uY2UuCisKIDIw
MTctMDEtMjQgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAg
ICAgICAgIFtHVEtdIEFkZCBBUEkgdG8gY3JlYXRlIGVwaGVtZXJhbCB3ZWIgdmlld3MgYW5kIGRl
cHJlY2F0ZSB0aGUgcHJpdmF0ZSBicm93c2luZyBzZXR0aW5nCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJDb250ZXh0LmNwcCBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYkNvbnRleHQuY3BwCmluZGV4IDhmMTgy
MjI2YjZlLi41NmM5NjZjMjY0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9ndGsvV2ViS2l0V2ViQ29udGV4dC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9ndGsvV2ViS2l0V2ViQ29udGV4dC5jcHAKQEAgLTE3Niw2ICsxNzYsNyBAQCBzdHJ1
Y3QgX1dlYktpdFdlYkNvbnRleHRQcml2YXRlIHsKICAgICB1bnNpZ25lZCBwcm9jZXNzQ291bnRM
aW1pdDsKIAogICAgIEhhc2hNYXA8dWludDY0X3QsIFdlYktpdFdlYlZpZXcqPiB3ZWJWaWV3czsK
KyAgICB1bnNpZ25lZCBlcGhlbWVyYWxQYWdlQ291bnQ7CiAKICAgICBDU3RyaW5nIHdlYkV4dGVu
c2lvbnNEaXJlY3Rvcnk7CiAgICAgR1JlZlB0cjxHVmFyaWFudD4gd2ViRXh0ZW5zaW9uc0luaXRp
YWxpemF0aW9uVXNlckRhdGE7CkBAIC03MTIsNiArNzEzLDMxIEBAIHN0YXRpYyB2b2lkIGVuc3Vy
ZUZhdmljb25EYXRhYmFzZShXZWJLaXRXZWJDb250ZXh0KiBjb250ZXh0KQogICAgIHByaXYtPmZh
dmljb25EYXRhYmFzZSA9IGFkb3B0R1JlZih3ZWJraXRGYXZpY29uRGF0YWJhc2VDcmVhdGUocHJp
di0+cHJvY2Vzc1Bvb2wtPmljb25EYXRhYmFzZSgpKSk7CiB9CiAKK3N0YXRpYyB2b2lkIHdlYmtp
dFdlYkNvbnRleHRFbmFibGVJY29uRGF0YWJhc2VQcml2YXRlQnJvd3NpbmdJZk5lZWRlZChXZWJL
aXRXZWJDb250ZXh0KiBjb250ZXh0LCBXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3KQoreworICAgIGlm
ICh3ZWJraXRfd2ViX2NvbnRleHRfaXNfZXBoZW1lcmFsKGNvbnRleHQpKQorICAgICAgICByZXR1
cm47CisgICAgaWYgKCF3ZWJraXRfd2ViX3ZpZXdfaXNfZXBoZW1lcmFsKHdlYlZpZXcpKQorICAg
ICAgICByZXR1cm47CisKKyAgICBpZiAoIWNvbnRleHQtPnByaXYtPmVwaGVtZXJhbFBhZ2VDb3Vu
dCkKKyAgICAgICAgY29udGV4dC0+cHJpdi0+cHJvY2Vzc1Bvb2wtPmljb25EYXRhYmFzZSgpLT5z
ZXRQcml2YXRlQnJvd3NpbmdFbmFibGVkKHRydWUpOworICAgIGNvbnRleHQtPnByaXYtPmVwaGVt
ZXJhbFBhZ2VDb3VudCsrOworfQorCitzdGF0aWMgdm9pZCB3ZWJraXRXZWJDb250ZXh0RGlzYWJs
ZUljb25EYXRhYmFzZVByaXZhdGVCcm93c2luZ0lmTmVlZGVkKFdlYktpdFdlYkNvbnRleHQqIGNv
bnRleHQsIFdlYktpdFdlYlZpZXcqIHdlYlZpZXcpCit7CisgICAgaWYgKHdlYmtpdF93ZWJfY29u
dGV4dF9pc19lcGhlbWVyYWwoY29udGV4dCkpCisgICAgICAgIHJldHVybjsKKyAgICBpZiAoIXdl
YmtpdF93ZWJfdmlld19pc19lcGhlbWVyYWwod2ViVmlldykpCisgICAgICAgIHJldHVybjsKKwor
ICAgIEFTU0VSVChjb250ZXh0LT5wcml2LT5lcGhlbWVyYWxQYWdlQ291bnQpOworICAgIGNvbnRl
eHQtPnByaXYtPmVwaGVtZXJhbFBhZ2VDb3VudC0tOworICAgIGlmICghY29udGV4dC0+cHJpdi0+
ZXBoZW1lcmFsUGFnZUNvdW50KQorICAgICAgICBjb250ZXh0LT5wcml2LT5wcm9jZXNzUG9vbC0+
aWNvbkRhdGFiYXNlKCktPnNldFByaXZhdGVCcm93c2luZ0VuYWJsZWQoZmFsc2UpOworfQorCiAv
KioKICAqIHdlYmtpdF93ZWJfY29udGV4dF9zZXRfZmF2aWNvbl9kYXRhYmFzZV9kaXJlY3Rvcnk6
CiAgKiBAY29udGV4dDogYSAjV2ViS2l0V2ViQ29udGV4dApAQCAtNzUwLDYgKzc3Niw5IEBAIHZv
aWQgd2Via2l0X3dlYl9jb250ZXh0X3NldF9mYXZpY29uX2RhdGFiYXNlX2RpcmVjdG9yeShXZWJL
aXRXZWJDb250ZXh0KiBjb250ZXh0CiAKICAgICAvLyBTZXR0aW5nIHRoZSBwYXRoIHdpbGwgY2F1
c2UgdGhlIGljb24gZGF0YWJhc2UgdG8gYmUgb3BlbmVkLgogICAgIHByaXYtPnByb2Nlc3NQb29s
LT5zZXRJY29uRGF0YWJhc2VQYXRoKFdlYkNvcmU6OnN0cmluZ0Zyb21GaWxlU3lzdGVtUmVwcmVz
ZW50YXRpb24oZmF2aWNvbkRhdGFiYXNlUGF0aC5nZXQoKSkpOworCisgICAgaWYgKHdlYmtpdF93
ZWJfY29udGV4dF9pc19lcGhlbWVyYWwoY29udGV4dCkpCisgICAgICAgIHByaXYtPnByb2Nlc3NQ
b29sLT5pY29uRGF0YWJhc2UoKS0+c2V0UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCh0cnVlKTsKIH0K
IAogLyoqCkBAIC0xNDU4LDYgKzE0ODcsMTAgQEAgdm9pZCB3ZWJraXRXZWJDb250ZXh0Q3JlYXRl
UGFnZUZvcldlYlZpZXcoV2ViS2l0V2ViQ29udGV4dCogY29udGV4dCwgV2ViS2l0V2ViVmkKIHsK
ICAgICBXZWJLaXRXZWJWaWV3QmFzZSogd2ViVmlld0Jhc2UgPSBXRUJLSVRfV0VCX1ZJRVdfQkFT
RSh3ZWJWaWV3KTsKIAorICAgIC8vIEZJWE1FOiBpY29uIGRhdGFiYXNlIHByaXZhdGUgbW9kZSBp
cyBnbG9iYWwsIG5vdCBwZXIgcGFnZSwgc28gd2hpbGUgdGhlcmUgYXJlCisgICAgLy8gcGFnZXMg
aW4gcHJpdmF0ZSBtb2RlIHdlIG5lZWQgdG8gZW5hYmxlIHRoZSBwcml2YXRlIG1vZGUgaW4gdGhl
IGljb24gZGF0YWJhc2UuCisgICAgd2Via2l0V2ViQ29udGV4dEVuYWJsZUljb25EYXRhYmFzZVBy
aXZhdGVCcm93c2luZ0lmTmVlZGVkKGNvbnRleHQsIHdlYlZpZXcpOworCiAgICAgYXV0byBwYWdl
Q29uZmlndXJhdGlvbiA9IEFQSTo6UGFnZUNvbmZpZ3VyYXRpb246OmNyZWF0ZSgpOwogICAgIHBh
Z2VDb25maWd1cmF0aW9uLT5zZXRQcm9jZXNzUG9vbChjb250ZXh0LT5wcml2LT5wcm9jZXNzUG9v
bC5nZXQoKSk7CiAgICAgcGFnZUNvbmZpZ3VyYXRpb24tPnNldFByZWZlcmVuY2VzKHdlYmtpdFNl
dHRpbmdzR2V0UHJlZmVyZW5jZXMod2Via2l0X3dlYl92aWV3X2dldF9zZXR0aW5ncyh3ZWJWaWV3
KSkpOwpAQCAtMTQ3Nyw2ICsxNTEwLDcgQEAgdm9pZCB3ZWJraXRXZWJDb250ZXh0Q3JlYXRlUGFn
ZUZvcldlYlZpZXcoV2ViS2l0V2ViQ29udGV4dCogY29udGV4dCwgV2ViS2l0V2ViVmkKIAogdm9p
ZCB3ZWJraXRXZWJDb250ZXh0V2ViVmlld0Rlc3Ryb3llZChXZWJLaXRXZWJDb250ZXh0KiBjb250
ZXh0LCBXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3KQogeworICAgIHdlYmtpdFdlYkNvbnRleHREaXNh
YmxlSWNvbkRhdGFiYXNlUHJpdmF0ZUJyb3dzaW5nSWZOZWVkZWQoY29udGV4dCwgd2ViVmlldyk7
CiAgICAgV2ViUGFnZVByb3h5KiBwYWdlID0gd2Via2l0V2ViVmlld0Jhc2VHZXRQYWdlKFdFQktJ
VF9XRUJfVklFV19CQVNFKHdlYlZpZXcpKTsKICAgICBjb250ZXh0LT5wcml2LT53ZWJWaWV3cy5y
ZW1vdmUocGFnZS0+cGFnZUlEKCkpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3LmNwcAppbmRleCA1ZGZjOTlhYWUyNi4uNGNmMGRmNDM5
NDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdl
YlZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdl
YlZpZXcuY3BwCkBAIC03NzgsOSArNzc4LDEyIEBAIHN0YXRpYyB2b2lkIHdlYmtpdFdlYlZpZXdE
aXNwb3NlKEdPYmplY3QqIG9iamVjdCkKICAgICBpZiAod2ViVmlldy0+cHJpdi0+bG9hZE9ic2Vy
dmVyKSB7CiAgICAgICAgIGdldFBhZ2Uod2ViVmlldyktPnBhZ2VMb2FkU3RhdGUoKS5yZW1vdmVP
YnNlcnZlcigqd2ViVmlldy0+cHJpdi0+bG9hZE9ic2VydmVyKTsKICAgICAgICAgd2ViVmlldy0+
cHJpdi0+bG9hZE9ic2VydmVyLnJlc2V0KCk7Ci0gICAgfQogCi0gICAgd2Via2l0V2ViQ29udGV4
dFdlYlZpZXdEZXN0cm95ZWQod2ViVmlldy0+cHJpdi0+Y29udGV4dC5nZXQoKSwgd2ViVmlldyk7
CisgICAgICAgIC8vIFdlIG5vdGlmeSB0aGUgY29udGV4dCBoZXJlIHRvIGVuc3VyZSBpdCdzIGNh
bGxlZCBvbmx5IG9uY2UuIElkZWFsbHkgd2Ugc2hvdWxkCisgICAgICAgIC8vIGNhbGwgdGhpcyBp
biBmaW5hbGl6ZSwgbm90IGRpc3Bvc2UsIGJ1dCBmaW5hbGl6ZSBpcyB1c2VkIGludGVybmFsbHkg
YW5kIHdlIGRvbid0CisgICAgICAgIC8vIGhhdmUgYWNjZXNzIHRvIHRoZSBpbnN0YW5jZSBwb2lu
dGVyIGZyb20gdGhlIHByaXZhdGUgc3RydWN0IGRlc3RydWN0b3IuCisgICAgICAgIHdlYmtpdFdl
YkNvbnRleHRXZWJWaWV3RGVzdHJveWVkKHdlYlZpZXctPnByaXYtPmNvbnRleHQuZ2V0KCksIHdl
YlZpZXcpOworICAgIH0KIAogICAgIEdfT0JKRUNUX0NMQVNTKHdlYmtpdF93ZWJfdmlld19wYXJl
bnRfY2xhc3MpLT5kaXNwb3NlKG9iamVjdCk7CiB9CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VM
b2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZDlhYTljY2Y5NTUuLmY2NTY2YjQxYjhlIDEwMDY0
NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEs
MTkgQEAKIDIwMTctMDEtMjUgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEu
Y29tPgogCisgICAgICAgIFtHVEtdIEljb24gRGF0YWJhc2Ugc2hvdWxkIGJlIGluIHByaXZhdGUg
YnJvd3NpbmcgbW9kZSBmb3IgZXBoZW1lcmFsIHdlYiB2aWV3cworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3NDE0CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgdGVzdCBjYXNlIHRvIGNoZWNrIGVw
aGVtZXJhbCB3ZWIgdmlld3MgZG9uJ3Qgd3JpdGUgZmF2aWNvbnMgdG8gdGhlIGRhdGFiYXNlLgor
CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyR3RrL1Rlc3RXZWJLaXRGYXZp
Y29uRGF0YWJhc2UuY3BwOgorICAgICAgICAoZXBoZW1lcmFsVmlld0xvYWRDaGFuZ2VkKToKKyAg
ICAgICAgKHRlc3RQcml2YXRlQnJvd3NpbmcpOgorICAgICAgICAodGVzdEZhdmljb25EYXRhYmFz
ZSk6CisKKzIwMTctMDEtMjUgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEu
Y29tPgorCiAgICAgICAgIFtHVEtdIEFkZCBhIHByaXZhdGUgYnJvd3NpbmcgbW9kZSB0byBNaW5p
QnJvd3NlcgogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTY3NDEzCiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mkd0
ay9UZXN0V2ViS2l0RmF2aWNvbkRhdGFiYXNlLmNwcCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0Mkd0ay9UZXN0V2ViS2l0RmF2aWNvbkRhdGFiYXNlLmNwcAppbmRleCA4ZDViZTky
NTA1OC4uNDBhMGI4YjcyNzUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0Mkd0ay9UZXN0V2ViS2l0RmF2aWNvbkRhdGFiYXNlLmNwcAorKysgYi9Ub29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDJHdGsvVGVzdFdlYktpdEZhdmljb25EYXRhYmFzZS5jcHAK
QEAgLTE1Miw2ICsxNTIsMzAgQEAgc3RhdGljIHZvaWQgdGVzdENsZWFyRGF0YWJhc2UoRmF2aWNv
bkRhdGFiYXNlVGVzdCogdGVzdCkKICAgICBnX2Fzc2VydCghaWNvblVSSSk7CiB9CiAKK3N0YXRp
YyB2b2lkIGVwaGVtZXJhbFZpZXdMb2FkQ2hhbmdlZChXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3LCBX
ZWJLaXRMb2FkRXZlbnQgbG9hZEV2ZW50LCBXZWJWaWV3VGVzdCogdGVzdCkKK3sKKyAgICBpZiAo
bG9hZEV2ZW50ICE9IFdFQktJVF9MT0FEX0ZJTklTSEVEKQorICAgICAgICByZXR1cm47CisgICAg
Z19zaWduYWxfaGFuZGxlcnNfZGlzY29ubmVjdF9ieV9mdW5jKHdlYlZpZXcsIHJlaW50ZXJwcmV0
X2Nhc3Q8dm9pZCo+KGVwaGVtZXJhbFZpZXdMb2FkQ2hhbmdlZCksIHRlc3QpOworICAgIHRlc3Qt
PnF1aXRNYWluTG9vcCgpOworfQorCitzdGF0aWMgdm9pZCB0ZXN0UHJpdmF0ZUJyb3dzaW5nKEZh
dmljb25EYXRhYmFzZVRlc3QqIHRlc3QpCit7CisgICAgR1JlZlB0cjxXZWJLaXRXZWJWaWV3PiB3
ZWJWaWV3ID0gV0VCS0lUX1dFQl9WSUVXKGdfb2JqZWN0X25ldyhXRUJLSVRfVFlQRV9XRUJfVklF
VywKKyAgICAgICAgIndlYi1jb250ZXh0IiwgdGVzdC0+bV93ZWJDb250ZXh0LmdldCgpLAorICAg
ICAgICAiaXMtZXBoZW1lcmFsIiwgVFJVRSwKKyAgICAgICAgbnVsbHB0cikpOworICAgIGdfc2ln
bmFsX2Nvbm5lY3Qod2ViVmlldy5nZXQoKSwgImxvYWQtY2hhbmdlZCIsIEdfQ0FMTEJBQ0soZXBo
ZW1lcmFsVmlld0xvYWRDaGFuZ2VkKSwgdGVzdCk7CisgICAgd2Via2l0X3dlYl92aWV3X2xvYWRf
dXJpKHdlYlZpZXcuZ2V0KCksIGtTZXJ2ZXItPmdldFVSSUZvclBhdGgoIi9mb28iKS5kYXRhKCkp
OworICAgIGdfbWFpbl9sb29wX3J1bih0ZXN0LT5tX21haW5Mb29wKTsKKworICAgIC8vIEFuIGVw
aGVtZXJhbCB3ZWIgdmlldyBzaG91bGQgbnRvIHdyaXRlIHRvIHRoZSBkYXRhYmFzZS4KKyAgICB0
ZXN0LT5nZXRGYXZpY29uRm9yUGFnZVVSSUFuZFdhaXRVbnRpbFJlYWR5KGtTZXJ2ZXItPmdldFVS
SUZvclBhdGgoIi9mb28iKS5kYXRhKCkpOworICAgIGdfYXNzZXJ0KCF0ZXN0LT5tX2Zhdmljb24p
OworICAgIGdfYXNzZXJ0KHRlc3QtPm1fZXJyb3IpOworfQorCiBzdGF0aWMgdm9pZCB0ZXN0R2V0
RmF2aWNvbihGYXZpY29uRGF0YWJhc2VUZXN0KiB0ZXN0KQogewogICAgIC8vIFdlIG5lZWQgdG8g
bG9hZCB0aGUgcGFnZSBmaXJzdCB0byBlbnN1cmUgdGhlIGljb24gZGF0YSB3aWxsIGJlCkBAIC0y
MjgsNiArMjUyLDcgQEAgc3RhdGljIHZvaWQgdGVzdEZhdmljb25EYXRhYmFzZShGYXZpY29uRGF0
YWJhc2VUZXN0KiB0ZXN0LCBnY29uc3Rwb2ludGVyKQogICAgIC8vIFNlZSBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTExNDM0LgogICAgIHRlc3ROb3RJbml0aWFsaXpl
ZCh0ZXN0KTsKICAgICB0ZXN0U2V0RGlyZWN0b3J5KHRlc3QpOworICAgIHRlc3RQcml2YXRlQnJv
d3NpbmcodGVzdCk7CiAgICAgdGVzdEdldEZhdmljb24odGVzdCk7CiAgICAgdGVzdEdldEZhdmlj
b25VUkkodGVzdCk7CiAgICAgdGVzdFdlYlZpZXdGYXZpY29uKHRlc3QpOwo=
</data>
<flag name="review"
          id="321630"
          type_id="1"
          status="+"
          setter="mcatanzaro"
    />
          </attachment>
      

    </bug>

</bugzilla>