<?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>169278</bug_id>
          
          <creation_ts>2017-03-07 06:25:59 -0800</creation_ts>
          <short_desc>[GTK] Use GtkFileChooserNative for open/save dialogs</short_desc>
          <delta_ts>2026-01-05 02:04:26 -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>Other</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Adrian Perez">aperez</reporter>
          <assigned_to name="Adrian Perez">aperez</assigned_to>
          <cc>berto</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>gustavo</cc>
    
    <cc>ie2kl43y</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>mrobinson</cc>
    
    <cc>tpopela</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1284285</commentid>
    <comment_count>0</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2017-03-07 06:25:59 -0800</bug_when>
    <thetext>Starting with GTK+ 3.20 there is a new GtkFileChooserNative file chooser
dialog implementation:

  https://developer.gnome.org/gtk3/stable/gtk3-GtkFileChooserNative.html

It would be interesting to use it if possible, when building with GTK+ 3.20+
because it allows for a few niceties which better integrate applications
using WebKitGTK+ into the running environment:

 - When an application is running on a desktop environment which does not
   use GTK+, the desktop environment could set up things to use its native
   open/save dialogs (e.g. the Epiphany running on KDE could use Qt dialogs).

 - When an application is running inside a sandboxed environment (for example
   with Flatpak — http://flatpak.org), “portals” may be used automatically
   to allow for selection of files from outside of the sandboxed environment.

 - Using platform-specific open/save dialogs where available (e.g. in Mac OS;
   at the moment it is not possible to build a recent WebKitGTK+ for Windows,
   but the code would be ready to use Windows systems dialogs if somebody
   would add the other missing pieces).

Note that GtkFileChooserNative has a few shortcomings when compared to
GtkFileChooserDialog, so part of the work is to evaluate whether the current
uses of the latter can be replaced with GtkFileChooserNative.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1284291</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-03-07 06:37:30 -0800</bug_when>
    <thetext>Looks pretty easy, just need to update webkitWebViewRunFileChooser in WebKitWebView.cpp.

Looks like it has no support for MIME types filter, though? That&apos;s a shame.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1284295</commentid>
    <comment_count>2</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2017-03-07 07:00:29 -0800</bug_when>
    <thetext>(In reply to comment #1)
&gt; Looks pretty easy, just need to update webkitWebViewRunFileChooser in
&gt; WebKitWebView.cpp.
&gt; 
&gt; Looks like it has no support for MIME types filter, though? That&apos;s a shame.

I am already making a test build with locally with the needed changes
applied; I will attach it to the bug soon.

Regarding the filters, from the documentation (linked in the bug
description) my interpretation is that:

 - MIME-type based filters are supported by the Flatpak portal chooser
   implementation. We are only using this kind of filter in WebKitGTK+
   (good!).

 - No filters at all are supported in the Windows implementation. When
   using filters GtkFileChooserNative automatically falls-back to using
   GtkFileChooserDialog. Not like we care right now, as we are lacking
   in the Windows support department, but if somebody made WebKitGTK+
   work in Windows, it seems reasonable to use GtkFileChooserNative and
   let it trigger the fall-back code path when needed.

TL;DR: We will be fine as we are only using MIME-type based filters.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1284307</commentid>
    <comment_count>3</comment_count>
      <attachid>303653</attachid>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2017-03-07 08:10:45 -0800</bug_when>
    <thetext>Created attachment 303653
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1284308</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-03-07 08:12:28 -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>1284419</commentid>
    <comment_count>5</comment_count>
      <attachid>303653</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-03-07 11:01:16 -0800</bug_when>
    <thetext>Comment on attachment 303653
Patch

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

LGTM. Carlos Garcia will want to review it as well.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp:569
&gt; +    // XXX: Using a filter based on MIME types does not work in Windows. If such a filter is
&gt; +    //      set, GtkFileChooserNative automatically falls-back to using GtkFileChooserDialog.

That&apos;s not our problem. We don&apos;t even support Windows. You can remove this comment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1284421</commentid>
    <comment_count>6</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-03-07 11:01:37 -0800</bug_when>
    <thetext>Note: this is required for our goal to release Flatpaks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1284884</commentid>
    <comment_count>7</comment_count>
      <attachid>303817</attachid>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2017-03-08 09:53:22 -0800</bug_when>
    <thetext>Created attachment 303817
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1284885</commentid>
    <comment_count>8</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2017-03-08 09:54:10 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; Comment on attachment 303653 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=303653&amp;action=review
&gt; 
&gt; LGTM. Carlos Garcia will want to review it as well.
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp:569
&gt; &gt; +    // XXX: Using a filter based on MIME types does not work in Windows. If such a filter is
&gt; &gt; +    //      set, GtkFileChooserNative automatically falls-back to using GtkFileChooserDialog.
&gt; 
&gt; That&apos;s not our problem. We don&apos;t even support Windows. You can remove this
&gt; comment.

Comment removed. It should be good to go now :-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1285287</commentid>
    <comment_count>9</comment_count>
      <attachid>303817</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-03-09 05:42:42 -0800</bug_when>
    <thetext>Comment on attachment 303817
Patch

Clearing flags on attachment: 303817

Committed r213637: &lt;http://trac.webkit.org/changeset/213637&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1285288</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-03-09 05:42:46 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>303653</attachid>
            <date>2017-03-07 08:10:45 -0800</date>
            <delta_ts>2017-03-08 09:53:14 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-169278-20170307181043.patch</filename>
            <type>text/plain</type>
            <size>4729</size>
            <attacher name="Adrian Perez">aperez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEzNTEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNTM1NDMzMjUwOWU4ODNh
MTA0MmQ4ZTFkYzI5Y2JkZjhlZGMzYTlhYS4uMjZlOWVmYmFjNGNmNGM4N2JlOTkwMzVmZmVlODZk
YWYzY2E3ZTcwZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE3LTAzLTA3ICBBZHJp
YW4gUGVyZXogZGUgQ2FzdHJvICA8YXBlcmV6QGlnYWxpYS5jb20+CisKKyAgICAgICAgW0dUS10g
VXNlIEd0a0ZpbGVDaG9vc2VyTmF0aXZlIGZvciBvcGVuL3NhdmUgZGlhbG9ncworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY5Mjc4CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2hlbiBidWlsZGluZyB3aXRo
IEdUSysgMy4yMC4wIG9yIG5ld2VyLCB1c2UgR3RrRmlsZUNob29zZXJOYXRpdmUgaW5zdGVhZCBv
ZiBHdGtGaWxlQ2hvb3NlckRpYWxvZyB0byBhbGxvdyBmb3IKKyAgICAgICAgYmV0dGVyIGludGVn
cmF0aW9uIHdpdGggdGhlIHJ1bnRpbWUgZW52aXJvbm1lbnQgYW5kIHVzZSBuYXRpdmUgb3Blbi9z
YXZlIGRpYWxvZ3MuIFRoaXMgYWxzbyBtYWtlcyBXZWJLaXRHVEsrIHVzZQorICAgICAgICBwb3J0
YWwtYmFzZWQgbG9hZC9zYXZlIGRpYWxvZ3Mgd2hlbiBydW5uaW5nIGluc2lkZSB0aGUgRmxhdHBh
ayBzYW5kYm94LgorCisgICAgICAgIFRoZSBleGlzdGluZyBHdGtGaWxlQ2hvb3NlckRpYWxvZyBp
bXBsZW1lbnRhdGlvbiB3aWxsIHN0aWxsIGJlIHVzZWQgd2hlbiBidWlsZGluZyBhZ2FpbnN0IG9s
ZGVyIHZlcnNpb25zIG9mCisgICAgICAgIEdUSyssIHNvIHRoaXMgY2hhbmdlIGRvZXMgbm90IHJl
cXVpcmUgYSBuZXcgdmVyc2lvbiBvZiB0aGUgdG9vbGtpdC4KKworICAgICAgICAqIFVJUHJvY2Vz
cy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuY3BwOgorICAgICAgICAoZmlsZUNob29zZXJEaWFsb2dS
ZXNwb25zZUNhbGxiYWNrKToKKyAgICAgICAgKHdlYmtpdFdlYlZpZXdSdW5GaWxlQ2hvb3Nlcik6
CisKIDIwMTctMDMtMDYgIEFha2FzaCBKYWluICA8YWFrYXNoX2phaW5AYXBwbGUuY29tPgogCiAg
ICAgICAgIEVuYWJsZSBTVVBQT1JUU19URVhUX0JBU0VEX0FQSSBpbiBXZWJLaXQyIGZvciBpT1MK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZp
ZXcuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5j
cHAKaW5kZXggMDZkMGY5ZWIwMzYyZGRkZTdjMGFjMDcwNzUxODIyODExYzNkNWFkNC4uMWZhMTJk
ODVhNGU2MDY0NWUyOGY1ZWNlYjFiMjdjMDBmODU3ZjdjYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5jcHAKKysrIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5jcHAKQEAgLTUzNiwxMSArNTM2
LDExIEBAIHN0YXRpYyBnYm9vbGVhbiB3ZWJraXRXZWJWaWV3QXV0aGVudGljYXRlKFdlYktpdFdl
YlZpZXcqIHdlYlZpZXcsIFdlYktpdEF1dGhlbnRpCiAgICAgcmV0dXJuIFRSVUU7CiB9CiAKLXN0
YXRpYyB2b2lkIGZpbGVDaG9vc2VyRGlhbG9nUmVzcG9uc2VDYWxsYmFjayhHdGtEaWFsb2cqIGRp
YWxvZywgZ2ludCByZXNwb25zZUlELCBXZWJLaXRGaWxlQ2hvb3NlclJlcXVlc3QqIHJlcXVlc3Qp
CitzdGF0aWMgdm9pZCBmaWxlQ2hvb3NlckRpYWxvZ1Jlc3BvbnNlQ2FsbGJhY2soR3RrRmlsZUNo
b29zZXIqIGRpYWxvZywgZ2ludCByZXNwb25zZUlELCBXZWJLaXRGaWxlQ2hvb3NlclJlcXVlc3Qq
IHJlcXVlc3QpCiB7CiAgICAgR1JlZlB0cjxXZWJLaXRGaWxlQ2hvb3NlclJlcXVlc3Q+IGFkb3B0
ZWRSZXF1ZXN0ID0gYWRvcHRHUmVmKHJlcXVlc3QpOwogICAgIGlmIChyZXNwb25zZUlEID09IEdU
S19SRVNQT05TRV9BQ0NFUFQpIHsKLSAgICAgICAgR1VuaXF1ZVB0cjxHU0xpc3Q+IGZpbGVzTGlz
dChndGtfZmlsZV9jaG9vc2VyX2dldF9maWxlbmFtZXMoR1RLX0ZJTEVfQ0hPT1NFUihkaWFsb2cp
KSk7CisgICAgICAgIEdVbmlxdWVQdHI8R1NMaXN0PiBmaWxlc0xpc3QoZ3RrX2ZpbGVfY2hvb3Nl
cl9nZXRfZmlsZW5hbWVzKGRpYWxvZykpOwogICAgICAgICBHUmVmUHRyPEdQdHJBcnJheT4gZmls
ZXNBcnJheSA9IGFkb3B0R1JlZihnX3B0cl9hcnJheV9uZXcoKSk7CiAgICAgICAgIGZvciAoR1NM
aXN0KiBmaWxlID0gZmlsZXNMaXN0LmdldCgpOyBmaWxlOyBmaWxlID0gZ19zbGlzdF9uZXh0KGZp
bGUpKQogICAgICAgICAgICAgZ19wdHJfYXJyYXlfYWRkKGZpbGVzQXJyYXkuZ2V0KCksIGZpbGUt
PmRhdGEpOwpAQCAtNTQ5LDcgKzU0OSwxMSBAQCBzdGF0aWMgdm9pZCBmaWxlQ2hvb3NlckRpYWxv
Z1Jlc3BvbnNlQ2FsbGJhY2soR3RrRGlhbG9nKiBkaWFsb2csIGdpbnQgcmVzcG9uc2VJRAogICAg
IH0gZWxzZQogICAgICAgICB3ZWJraXRfZmlsZV9jaG9vc2VyX3JlcXVlc3RfY2FuY2VsKGFkb3B0
ZWRSZXF1ZXN0LmdldCgpKTsKIAorI2lmIEdUS19DSEVDS19WRVJTSU9OKDMsIDIwLCAwKQorICAg
IGdfb2JqZWN0X3VucmVmKGRpYWxvZyk7CisjZWxzZQogICAgIGd0a193aWRnZXRfZGVzdHJveShH
VEtfV0lER0VUKGRpYWxvZykpOworI2VuZGlmCiB9CiAKIHN0YXRpYyBnYm9vbGVhbiB3ZWJraXRX
ZWJWaWV3UnVuRmlsZUNob29zZXIoV2ViS2l0V2ViVmlldyogd2ViVmlldywgV2ViS2l0RmlsZUNo
b29zZXJSZXF1ZXN0KiByZXF1ZXN0KQpAQCAtNTU5LDEyICs1NjMsMjAgQEAgc3RhdGljIGdib29s
ZWFuIHdlYmtpdFdlYlZpZXdSdW5GaWxlQ2hvb3NlcihXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3LCBX
ZWJLaXRGaWxlQ2gKICAgICAgICAgdG9wbGV2ZWwgPSAwOwogCiAgICAgZ2Jvb2xlYW4gYWxsb3dz
TXVsdGlwbGVTZWxlY3Rpb24gPSB3ZWJraXRfZmlsZV9jaG9vc2VyX3JlcXVlc3RfZ2V0X3NlbGVj
dF9tdWx0aXBsZShyZXF1ZXN0KTsKKworI2lmIEdUS19DSEVDS19WRVJTSU9OKDMsIDIwLCAwKQor
ICAgIC8vIFhYWDogVXNpbmcgYSBmaWx0ZXIgYmFzZWQgb24gTUlNRSB0eXBlcyBkb2VzIG5vdCB3
b3JrIGluIFdpbmRvd3MuIElmIHN1Y2ggYSBmaWx0ZXIgaXMKKyAgICAvLyAgICAgIHNldCwgR3Rr
RmlsZUNob29zZXJOYXRpdmUgYXV0b21hdGljYWxseSBmYWxscy1iYWNrIHRvIHVzaW5nIEd0a0Zp
bGVDaG9vc2VyRGlhbG9nLgorICAgIEd0a0ZpbGVDaG9vc2VyTmF0aXZlKiBkaWFsb2cgPSBndGtf
ZmlsZV9jaG9vc2VyX25hdGl2ZV9uZXcoYWxsb3dzTXVsdGlwbGVTZWxlY3Rpb24gPyBfKCJTZWxl
Y3QgRmlsZXMiKSA6IF8oIlNlbGVjdCBGaWxlIiksCisgICAgICAgIHRvcGxldmVsID8gR1RLX1dJ
TkRPVyh0b3BsZXZlbCkgOiBudWxscHRyLCBHVEtfRklMRV9DSE9PU0VSX0FDVElPTl9PUEVOLCBu
dWxscHRyLCBudWxscHRyKTsKKyNlbHNlCiAgICAgR3RrV2lkZ2V0KiBkaWFsb2cgPSBndGtfZmls
ZV9jaG9vc2VyX2RpYWxvZ19uZXcoYWxsb3dzTXVsdGlwbGVTZWxlY3Rpb24gPyBfKCJTZWxlY3Qg
RmlsZXMiKSA6IF8oIlNlbGVjdCBGaWxlIiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdG9wbGV2ZWwgPyBHVEtfV0lORE9XKHRvcGxldmVsKSA6
IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R1RLX0ZJTEVfQ0hPT1NFUl9BQ1RJT05fT1BFTiwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBHVEtfU1RPQ0tfQ0FOQ0VMLCBHVEtfUkVTUE9OU0Vf
Q0FOQ0VMLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEdUS19TVE9DS19PUEVOLCBHVEtfUkVTUE9OU0VfQUNDRVBULAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOworI2VuZGlmCiAKICAg
ICBpZiAoR3RrRmlsZUZpbHRlciogZmlsdGVyID0gd2Via2l0X2ZpbGVfY2hvb3Nlcl9yZXF1ZXN0
X2dldF9taW1lX3R5cGVzX2ZpbHRlcihyZXF1ZXN0KSkKICAgICAgICAgZ3RrX2ZpbGVfY2hvb3Nl
cl9zZXRfZmlsdGVyKEdUS19GSUxFX0NIT09TRVIoZGlhbG9nKSwgZmlsdGVyKTsKQEAgLTU3NCw3
ICs1ODYsMTIgQEAgc3RhdGljIGdib29sZWFuIHdlYmtpdFdlYlZpZXdSdW5GaWxlQ2hvb3NlcihX
ZWJLaXRXZWJWaWV3KiB3ZWJWaWV3LCBXZWJLaXRGaWxlQ2gKICAgICAgICAgZ3RrX2ZpbGVfY2hv
b3Nlcl9zZWxlY3RfZmlsZW5hbWUoR1RLX0ZJTEVfQ0hPT1NFUihkaWFsb2cpLCBzZWxlY3RlZEZp
bGVzWzBdKTsKIAogICAgIGdfc2lnbmFsX2Nvbm5lY3QoZGlhbG9nLCAicmVzcG9uc2UiLCBHX0NB
TExCQUNLKGZpbGVDaG9vc2VyRGlhbG9nUmVzcG9uc2VDYWxsYmFjayksIGdfb2JqZWN0X3JlZihy
ZXF1ZXN0KSk7CisKKyNpZiBHVEtfQ0hFQ0tfVkVSU0lPTigzLCAyMCwgMCkKKyAgICBndGtfbmF0
aXZlX2RpYWxvZ19zaG93KEdUS19OQVRJVkVfRElBTE9HKGRpYWxvZykpOworI2Vsc2UKICAgICBn
dGtfd2lkZ2V0X3Nob3coZGlhbG9nKTsKKyNlbmRpZgogCiAgICAgcmV0dXJuIFRSVUU7CiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>303817</attachid>
            <date>2017-03-08 09:53:22 -0800</date>
            <delta_ts>2017-03-09 05:42:42 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-169278-20170308195320.patch</filename>
            <type>text/plain</type>
            <size>4564</size>
            <attacher name="Adrian Perez">aperez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEzNTc3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNTZjODRmYzg3NzI0ZjI4
ZWY0MmU0YjU3OWIxNjcxNmM5MDExZDI4MC4uMzlhZGUyY2JiMzM4N2RkNGQ1N2M0YWMzNmNkZjE5
ZjhjMzU2YzI5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE3LTAzLTA4ICBBZHJp
YW4gUGVyZXogZGUgQ2FzdHJvICA8YXBlcmV6QGlnYWxpYS5jb20+CisKKyAgICAgICAgW0dUS10g
VXNlIEd0a0ZpbGVDaG9vc2VyTmF0aXZlIGZvciBvcGVuL3NhdmUgZGlhbG9ncworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY5Mjc4CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2hlbiBidWlsZGluZyB3aXRo
IEdUSysgMy4yMC4wIG9yIG5ld2VyLCB1c2UgR3RrRmlsZUNob29zZXJOYXRpdmUgaW5zdGVhZCBv
ZiBHdGtGaWxlQ2hvb3NlckRpYWxvZyB0byBhbGxvdyBmb3IKKyAgICAgICAgYmV0dGVyIGludGVn
cmF0aW9uIHdpdGggdGhlIHJ1bnRpbWUgZW52aXJvbm1lbnQgYW5kIHVzZSBuYXRpdmUgb3Blbi9z
YXZlIGRpYWxvZ3MuIFRoaXMgYWxzbyBtYWtlcyBXZWJLaXRHVEsrIHVzZQorICAgICAgICBwb3J0
YWwtYmFzZWQgbG9hZC9zYXZlIGRpYWxvZ3Mgd2hlbiBydW5uaW5nIGluc2lkZSB0aGUgRmxhdHBh
ayBzYW5kYm94LgorCisgICAgICAgIFRoZSBleGlzdGluZyBHdGtGaWxlQ2hvb3NlckRpYWxvZyBp
bXBsZW1lbnRhdGlvbiB3aWxsIHN0aWxsIGJlIHVzZWQgd2hlbiBidWlsZGluZyBhZ2FpbnN0IG9s
ZGVyIHZlcnNpb25zIG9mCisgICAgICAgIEdUSyssIHNvIHRoaXMgY2hhbmdlIGRvZXMgbm90IHJl
cXVpcmUgYSBuZXcgdmVyc2lvbiBvZiB0aGUgdG9vbGtpdC4KKworICAgICAgICAqIFVJUHJvY2Vz
cy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuY3BwOgorICAgICAgICAoZmlsZUNob29zZXJEaWFsb2dS
ZXNwb25zZUNhbGxiYWNrKToKKyAgICAgICAgKHdlYmtpdFdlYlZpZXdSdW5GaWxlQ2hvb3Nlcik6
CisKIDIwMTctMDMtMDggIFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgogCiAg
ICAgICAgIFtXSzJdIEd1YXJkIEdMaWItc3BlY2lmaWMgY29kZSBpbiBNb2R1bGUsIENvbm5lY3Rp
b24gZmlsZXMgd2l0aCBVU0UoR0xJQikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9ndGsvV2ViS2l0V2ViVmlldy5jcHAKaW5kZXggMDZkMGY5ZWIwMzYyZGRkZTdjMGFjMDcw
NzUxODIyODExYzNkNWFkNC4uOTllMjk4YTgyNjczYTYxYTBiY2QzODQxMGExOGM3MmYyZWY5YWI0
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2Vi
Vmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2Vi
Vmlldy5jcHAKQEAgLTUzNiwxMSArNTM2LDExIEBAIHN0YXRpYyBnYm9vbGVhbiB3ZWJraXRXZWJW
aWV3QXV0aGVudGljYXRlKFdlYktpdFdlYlZpZXcqIHdlYlZpZXcsIFdlYktpdEF1dGhlbnRpCiAg
ICAgcmV0dXJuIFRSVUU7CiB9CiAKLXN0YXRpYyB2b2lkIGZpbGVDaG9vc2VyRGlhbG9nUmVzcG9u
c2VDYWxsYmFjayhHdGtEaWFsb2cqIGRpYWxvZywgZ2ludCByZXNwb25zZUlELCBXZWJLaXRGaWxl
Q2hvb3NlclJlcXVlc3QqIHJlcXVlc3QpCitzdGF0aWMgdm9pZCBmaWxlQ2hvb3NlckRpYWxvZ1Jl
c3BvbnNlQ2FsbGJhY2soR3RrRmlsZUNob29zZXIqIGRpYWxvZywgZ2ludCByZXNwb25zZUlELCBX
ZWJLaXRGaWxlQ2hvb3NlclJlcXVlc3QqIHJlcXVlc3QpCiB7CiAgICAgR1JlZlB0cjxXZWJLaXRG
aWxlQ2hvb3NlclJlcXVlc3Q+IGFkb3B0ZWRSZXF1ZXN0ID0gYWRvcHRHUmVmKHJlcXVlc3QpOwog
ICAgIGlmIChyZXNwb25zZUlEID09IEdUS19SRVNQT05TRV9BQ0NFUFQpIHsKLSAgICAgICAgR1Vu
aXF1ZVB0cjxHU0xpc3Q+IGZpbGVzTGlzdChndGtfZmlsZV9jaG9vc2VyX2dldF9maWxlbmFtZXMo
R1RLX0ZJTEVfQ0hPT1NFUihkaWFsb2cpKSk7CisgICAgICAgIEdVbmlxdWVQdHI8R1NMaXN0PiBm
aWxlc0xpc3QoZ3RrX2ZpbGVfY2hvb3Nlcl9nZXRfZmlsZW5hbWVzKGRpYWxvZykpOwogICAgICAg
ICBHUmVmUHRyPEdQdHJBcnJheT4gZmlsZXNBcnJheSA9IGFkb3B0R1JlZihnX3B0cl9hcnJheV9u
ZXcoKSk7CiAgICAgICAgIGZvciAoR1NMaXN0KiBmaWxlID0gZmlsZXNMaXN0LmdldCgpOyBmaWxl
OyBmaWxlID0gZ19zbGlzdF9uZXh0KGZpbGUpKQogICAgICAgICAgICAgZ19wdHJfYXJyYXlfYWRk
KGZpbGVzQXJyYXkuZ2V0KCksIGZpbGUtPmRhdGEpOwpAQCAtNTQ5LDcgKzU0OSwxMSBAQCBzdGF0
aWMgdm9pZCBmaWxlQ2hvb3NlckRpYWxvZ1Jlc3BvbnNlQ2FsbGJhY2soR3RrRGlhbG9nKiBkaWFs
b2csIGdpbnQgcmVzcG9uc2VJRAogICAgIH0gZWxzZQogICAgICAgICB3ZWJraXRfZmlsZV9jaG9v
c2VyX3JlcXVlc3RfY2FuY2VsKGFkb3B0ZWRSZXF1ZXN0LmdldCgpKTsKIAorI2lmIEdUS19DSEVD
S19WRVJTSU9OKDMsIDIwLCAwKQorICAgIGdfb2JqZWN0X3VucmVmKGRpYWxvZyk7CisjZWxzZQog
ICAgIGd0a193aWRnZXRfZGVzdHJveShHVEtfV0lER0VUKGRpYWxvZykpOworI2VuZGlmCiB9CiAK
IHN0YXRpYyBnYm9vbGVhbiB3ZWJraXRXZWJWaWV3UnVuRmlsZUNob29zZXIoV2ViS2l0V2ViVmll
dyogd2ViVmlldywgV2ViS2l0RmlsZUNob29zZXJSZXF1ZXN0KiByZXF1ZXN0KQpAQCAtNTU5LDEy
ICs1NjMsMTggQEAgc3RhdGljIGdib29sZWFuIHdlYmtpdFdlYlZpZXdSdW5GaWxlQ2hvb3NlcihX
ZWJLaXRXZWJWaWV3KiB3ZWJWaWV3LCBXZWJLaXRGaWxlQ2gKICAgICAgICAgdG9wbGV2ZWwgPSAw
OwogCiAgICAgZ2Jvb2xlYW4gYWxsb3dzTXVsdGlwbGVTZWxlY3Rpb24gPSB3ZWJraXRfZmlsZV9j
aG9vc2VyX3JlcXVlc3RfZ2V0X3NlbGVjdF9tdWx0aXBsZShyZXF1ZXN0KTsKKworI2lmIEdUS19D
SEVDS19WRVJTSU9OKDMsIDIwLCAwKQorICAgIEd0a0ZpbGVDaG9vc2VyTmF0aXZlKiBkaWFsb2cg
PSBndGtfZmlsZV9jaG9vc2VyX25hdGl2ZV9uZXcoYWxsb3dzTXVsdGlwbGVTZWxlY3Rpb24gPyBf
KCJTZWxlY3QgRmlsZXMiKSA6IF8oIlNlbGVjdCBGaWxlIiksCisgICAgICAgIHRvcGxldmVsID8g
R1RLX1dJTkRPVyh0b3BsZXZlbCkgOiBudWxscHRyLCBHVEtfRklMRV9DSE9PU0VSX0FDVElPTl9P
UEVOLCBudWxscHRyLCBudWxscHRyKTsKKyNlbHNlCiAgICAgR3RrV2lkZ2V0KiBkaWFsb2cgPSBn
dGtfZmlsZV9jaG9vc2VyX2RpYWxvZ19uZXcoYWxsb3dzTXVsdGlwbGVTZWxlY3Rpb24gPyBfKCJT
ZWxlY3QgRmlsZXMiKSA6IF8oIlNlbGVjdCBGaWxlIiksCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wbGV2ZWwgPyBHVEtfV0lORE9XKHRvcGxl
dmVsKSA6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgR1RLX0ZJTEVfQ0hPT1NFUl9BQ1RJT05fT1BFTiwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHVEtfU1RPQ0tfQ0FOQ0VMLCBHVEtfUkVT
UE9OU0VfQ0FOQ0VMLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdUS19TVE9DS19PUEVOLCBHVEtfUkVTUE9OU0VfQUNDRVBULAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOworI2VuZGlm
CiAKICAgICBpZiAoR3RrRmlsZUZpbHRlciogZmlsdGVyID0gd2Via2l0X2ZpbGVfY2hvb3Nlcl9y
ZXF1ZXN0X2dldF9taW1lX3R5cGVzX2ZpbHRlcihyZXF1ZXN0KSkKICAgICAgICAgZ3RrX2ZpbGVf
Y2hvb3Nlcl9zZXRfZmlsdGVyKEdUS19GSUxFX0NIT09TRVIoZGlhbG9nKSwgZmlsdGVyKTsKQEAg
LTU3NCw3ICs1ODQsMTIgQEAgc3RhdGljIGdib29sZWFuIHdlYmtpdFdlYlZpZXdSdW5GaWxlQ2hv
b3NlcihXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3LCBXZWJLaXRGaWxlQ2gKICAgICAgICAgZ3RrX2Zp
bGVfY2hvb3Nlcl9zZWxlY3RfZmlsZW5hbWUoR1RLX0ZJTEVfQ0hPT1NFUihkaWFsb2cpLCBzZWxl
Y3RlZEZpbGVzWzBdKTsKIAogICAgIGdfc2lnbmFsX2Nvbm5lY3QoZGlhbG9nLCAicmVzcG9uc2Ui
LCBHX0NBTExCQUNLKGZpbGVDaG9vc2VyRGlhbG9nUmVzcG9uc2VDYWxsYmFjayksIGdfb2JqZWN0
X3JlZihyZXF1ZXN0KSk7CisKKyNpZiBHVEtfQ0hFQ0tfVkVSU0lPTigzLCAyMCwgMCkKKyAgICBn
dGtfbmF0aXZlX2RpYWxvZ19zaG93KEdUS19OQVRJVkVfRElBTE9HKGRpYWxvZykpOworI2Vsc2UK
ICAgICBndGtfd2lkZ2V0X3Nob3coZGlhbG9nKTsKKyNlbmRpZgogCiAgICAgcmV0dXJuIFRSVUU7
CiB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>