<?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>62200</bug_id>
          
          <creation_ts>2011-06-07 03:01:01 -0700</creation_ts>
          <short_desc>[GTK] Move moduleMixesGtkSymbols() from PluginPackage to PluginView</short_desc>
          <delta_ts>2011-06-07 09:35: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>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</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>
          
          <blocked>60546</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>gustavo</cc>
    
    <cc>mrobinson</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>416418</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-06-07 03:01:01 -0700</bug_when>
    <thetext>In WebKit2, PluginPackage is used by the UI process to load the plugin in order to get the plugin information, but it doesn&apos;t do any rendering, so it&apos;s safe to mix gtk+ symbols in this case because gtk is not used at all.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>416421</commentid>
    <comment_count>1</comment_count>
      <attachid>96224</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-06-07 03:09:15 -0700</bug_when>
    <thetext>Created attachment 96224
Patch

Gustavo, I changed my mind about making moduleMixesGtkSymbols() public, because the implementation is not exactly the same for wk1 and wk2, so I added PluginPackage::module() instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>416422</commentid>
    <comment_count>2</comment_count>
      <attachid>96224</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-06-07 03:14:38 -0700</bug_when>
    <thetext>Comment on attachment 96224
Patch

Removing flags, sorry, I made the patch from uncommitted changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>416424</commentid>
    <comment_count>3</comment_count>
      <attachid>96225</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-06-07 03:28:45 -0700</bug_when>
    <thetext>Created attachment 96225
Updated patch to apply to curent git master</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>416528</commentid>
    <comment_count>4</comment_count>
      <attachid>96225</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-06-07 08:49:18 -0700</bug_when>
    <thetext>Comment on attachment 96225
Updated patch to apply to curent git master

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

The bits in WebKit2 look good, but it seems we don&apos;t really need to move any WebKit1 code around for this change. Do you mind undoing that bit of the patch?

&gt; Source/WebCore/plugins/gtk/PluginPackageGtk.cpp:-169
&gt; -    if (moduleMixesGtkSymbols(m_module)) {
&gt; -        LOG(Plugins, &quot;Module &apos;%s&apos; mixes GTK+ 2 and GTK+ 3 symbols, ignoring plugin.\n&quot;, m_path.utf8().data());
&gt; -        g_module_close(m_module);
&gt; -        return false;
&gt; -    }
&gt; -

I think it still makes sense to do this check here instead of creating a dead plugin. Why not just make the moduleMixesGtkSymbols a static method on PluginView and call it here?

&gt; Source/WebCore/plugins/gtk/PluginViewGtk.cpp:813
&gt; +    gpointer symbol;

It&apos;s probably better to use void* here.

&gt; Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:138
&gt; +    return module-&gt;functionPointer&lt;gpointer&gt;(&quot;gtk_application_get_type&quot;);

Again probably better to use void* here directly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>416545</commentid>
    <comment_count>5</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-06-07 09:07:33 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 96225 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=96225&amp;action=review
&gt; 
&gt; The bits in WebKit2 look good, but it seems we don&apos;t really need to move any WebKit1 code around for this change. Do you mind undoing that bit of the patch?

We need to be able to load the plugin even if it mixes gtk symbols in webkit2. To load the plugin and get the info the ui process uses PluginPackage. The problem of mixing symbols is in the view, that uses gtk. If we leave the check in PlugionPackage the ui process won&apos;t be able to load the plugin and the plugin process will never be launched.

&gt; &gt; Source/WebCore/plugins/gtk/PluginPackageGtk.cpp:-169
&gt; &gt; -    if (moduleMixesGtkSymbols(m_module)) {
&gt; &gt; -        LOG(Plugins, &quot;Module &apos;%s&apos; mixes GTK+ 2 and GTK+ 3 symbols, ignoring plugin.\n&quot;, m_path.utf8().data());
&gt; &gt; -        g_module_close(m_module);
&gt; &gt; -        return false;
&gt; &gt; -    }
&gt; &gt; -
&gt; 
&gt; I think it still makes sense to do this check here instead of creating a dead plugin. Why not just make the moduleMixesGtkSymbols a static method on PluginView and call it here?

Because the implementations are not exactly the same, in webkit2 we don&apos;t have access to the platform module, but we have a method in Module to get a symbol from the module.

&gt; &gt; Source/WebCore/plugins/gtk/PluginViewGtk.cpp:813
&gt; &gt; +    gpointer symbol;
&gt; 
&gt; It&apos;s probably better to use void* here.

That&apos;s existing code, not mine, I&apos;ll change it anyway, gpointer is indeed void *

&gt; &gt; Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:138
&gt; &gt; +    return module-&gt;functionPointer&lt;gpointer&gt;(&quot;gtk_application_get_type&quot;);
&gt; 
&gt; Again probably better to use void* here directly.

Ok.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>416547</commentid>
    <comment_count>6</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-06-07 09:19:57 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (In reply to comment #4)
&gt; &gt; (From update of attachment 96225 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=96225&amp;action=review
&gt; &gt; 
&gt; &gt; The bits in WebKit2 look good, but it seems we don&apos;t really need to move any WebKit1 code around for this change. Do you mind undoing that bit of the patch?
&gt; 
&gt; We need to be able to load the plugin even if it mixes gtk symbols in webkit2. To load the plugin and get the info the ui process uses PluginPackage. The problem of mixing symbols is in the view, that uses gtk. If we leave the check in PlugionPackage the ui process won&apos;t be able to load the plugin and the plugin process will never be launched.

Okay. Do you mind expanding the ChangeLog to mention that PluginPackage::load is used by both WebKit1 and WebKit2, so this necessitates moving the check?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>416548</commentid>
    <comment_count>7</comment_count>
      <attachid>96225</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-06-07 09:20:15 -0700</bug_when>
    <thetext>Comment on attachment 96225
Updated patch to apply to curent git master

r=me with the aforementioned changes!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>416554</commentid>
    <comment_count>8</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-06-07 09:25:06 -0700</bug_when>
    <thetext>(In reply to comment #6) 
&gt; Okay. Do you mind expanding the ChangeLog to mention that PluginPackage::load is used by both WebKit1 and WebKit2, so this necessitates moving the check?

Sure, thanks for reviewing!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>416561</commentid>
    <comment_count>9</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-06-07 09:35:23 -0700</bug_when>
    <thetext>Committed r88244: &lt;http://trac.webkit.org/changeset/88244&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>96224</attachid>
            <date>2011-06-07 03:09:15 -0700</date>
            <delta_ts>2011-06-07 03:28:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>move-mixes-gtk-symbols.diff</filename>
            <type>text/plain</type>
            <size>7758</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmZTEyZmQwLi5mY2JkNWJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjgg
QEAKKzIwMTEtMDYtMDcgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtHVEtd
IE1vdmUgbW9kdWxlTWl4ZXNHdGtTeW1ib2xzKCkgZnJvbSBQbHVnaW5QYWNrYWdlIHRvIFBsdWdp
blZpZXcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTYy
MjAwCisKKyAgICAgICAgKiBwbHVnaW5zL1BsdWdpblBhY2thZ2UuaDoKKyAgICAgICAgKFdlYkNv
cmU6OlBsdWdpblBhY2thZ2U6Om1vZHVsZSk6IE5ldyBtZXRob2QgdG8gcmV0dXJuIHRoZQorICAg
ICAgICBwbGF0Zm9ybSBtb2R1bGUuCisgICAgICAgICogcGx1Z2lucy9ndGsvUGx1Z2luUGFja2Fn
ZUd0ay5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQbHVnaW5QYWNrYWdlOjpsb2FkKTogUmVtb3Zl
IG1vZHVsZU1peGVzR3RrU3ltYm9scygpLgorICAgICAgICAqIHBsdWdpbnMvZ3RrL1BsdWdpblZp
ZXdHdGsuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGx1Z2luVmlldzo6dXBkYXRlUGx1Z2luV2lk
Z2V0KTogQ2hlY2sgd2hldGhlciBwbHVnaW4KKyAgICAgICAgd2FzIHN1Y2Nlc3NmdWxseSBsb2Fk
ZWQgYmVmb3JlIHRyeWluZyB0byBjcmVhdGUgdGhlIGRyYXdhYmxlLgorICAgICAgICAoV2ViQ29y
ZTo6UGx1Z2luVmlldzo6cGFpbnQpOiBSZXR1cm4gZWFybHkgaWYgcGx1Z2luIGRpZG4ndCBzdGFy
dAorICAgICAgICBvciB3YXMgbm90IHN1Y2Nlc3NmdWxseSBsb2FkZWQuCisgICAgICAgIChXZWJD
b3JlOjpQbHVnaW5WaWV3OjpoYW5kbGVLZXlib2FyZEV2ZW50KTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpQbHVnaW5WaWV3OjpoYW5kbGVNb3VzZUV2ZW50KTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpQbHVnaW5WaWV3OjpoYW5kbGVGb2N1c0luRXZlbnQpOiBEaXR0by4KKyAgICAgICAg
KFdlYkNvcmU6OlBsdWdpblZpZXc6OmhhbmRsZUZvY3VzT3V0RXZlbnQpOiBEaXR0by4KKyAgICAg
ICAgKFdlYkNvcmU6Om1vZHVsZU1peGVzR3RrU3ltYm9scyk6CisgICAgICAgIChXZWJDb3JlOjpQ
bHVnaW5WaWV3OjpwbGF0Zm9ybVN0YXJ0KTogQ2hlY2sgd2hldGhlciBtb2R1bGUgaXMKKyAgICAg
ICAgbWl4aW5nIEdUSysgMiBhbmQgR1RLKyAzIHN5bWJvbHMuCisKIDIwMTEtMDYtMDMgIEhhbnMg
V2VubmJvcmcgIDxoYW5zQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBUb255
IEdlbnRpbGNvcmUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblBh
Y2thZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luUGFja2FnZS5oCmluZGV4IGY0
ZDFkYWMuLjE5ZTJhMDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2lu
UGFja2FnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luUGFja2FnZS5oCkBA
IC01OCw2ICs1OCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgY29uc3QgU3RyaW5n
JiBwYXRoKCkgY29uc3QgeyByZXR1cm4gbV9wYXRoOyB9CiAgICAgICAgIGNvbnN0IFN0cmluZyYg
ZmlsZU5hbWUoKSBjb25zdCB7IHJldHVybiBtX2ZpbGVOYW1lOyB9CiAgICAgICAgIGNvbnN0IFN0
cmluZyYgcGFyZW50RGlyZWN0b3J5KCkgY29uc3QgeyByZXR1cm4gbV9wYXJlbnREaXJlY3Rvcnk7
IH0KKyAgICAgICAgUGxhdGZvcm1Nb2R1bGUgbW9kdWxlKCkgY29uc3QgeyByZXR1cm4gbV9tb2R1
bGU7IH0KICAgICAgICAgdWludDE2X3QgTlBWZXJzaW9uKCkgY29uc3Q7CiAgICAgICAgIHRpbWVf
dCBsYXN0TW9kaWZpZWQoKSBjb25zdCB7IHJldHVybiBtX2xhc3RNb2RpZmllZDsgfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL2d0ay9QbHVnaW5QYWNrYWdlR3RrLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvZ3RrL1BsdWdpblBhY2thZ2VHdGsuY3BwCmluZGV4IDQw
MzdmNGEuLmMzNGM1NjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvZ3RrL1Bs
dWdpblBhY2thZ2VHdGsuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvZ3RrL1BsdWdp
blBhY2thZ2VHdGsuY3BwCkBAIC0xMTksMTcgKzExOSw2IEBAIHN0YXRpYyBpbnQgd2Via2l0Z3Rr
WEVycm9yKERpc3BsYXkqIHhkaXNwbGF5LCBYRXJyb3JFdmVudCogZXJyb3IpCiB9CiAjZW5kaWYK
IAotc3RhdGljIGJvb2wgbW9kdWxlTWl4ZXNHdGtTeW1ib2xzKEdNb2R1bGUqIG1vZHVsZSkKLXsK
LSAgICBncG9pbnRlciBzeW1ib2w7Ci0jaWZkZWYgR1RLX0FQSV9WRVJTSU9OXzIKLSAgICByZXR1
cm4gZ19tb2R1bGVfc3ltYm9sKG1vZHVsZSwgImd0a19hcHBsaWNhdGlvbl9nZXRfdHlwZSIsICZz
eW1ib2wpOwotI2Vsc2UKLSAgICByZXR1cm4gZ19tb2R1bGVfc3ltYm9sKG1vZHVsZSwgImd0a19v
YmplY3RfZ2V0X3R5cGUiLCAmc3ltYm9sKTsKLSNlbmRpZgotfQotCi0KIGJvb2wgUGx1Z2luUGFj
a2FnZTo6bG9hZCgpCiB7CiAgICAgaWYgKG1faXNMb2FkZWQpIHsKQEAgLTE2MCwxMyArMTQ5LDYg
QEAgYm9vbCBQbHVnaW5QYWNrYWdlOjpsb2FkKCkKICAgICAgICAgTE9HKFBsdWdpbnMsIk1vZHVs
ZSBMb2FkIEZhaWxlZCA6JXMsIEVycm9yOiVzXG4iLCAobV9wYXRoLnV0ZjgoKSkuZGF0YSgpLCBn
X21vZHVsZV9lcnJvcigpKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KLSNpZiAwCi0g
ICAgaWYgKG1vZHVsZU1peGVzR3RrU3ltYm9scyhtX21vZHVsZSkpIHsKLSAgICAgICAgTE9HKFBs
dWdpbnMsICJNb2R1bGUgJyVzJyBtaXhlcyBHVEsrIDIgYW5kIEdUSysgMyBzeW1ib2xzLCBpZ25v
cmluZyBwbHVnaW4uXG4iLCBtX3BhdGgudXRmOCgpLmRhdGEoKSk7Ci0gICAgICAgIGdfbW9kdWxl
X2Nsb3NlKG1fbW9kdWxlKTsKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIH0KLSNlbmRpZgog
ICAgIG1faXNMb2FkZWQgPSB0cnVlOwogCiAjaWYgZGVmaW5lZChYUF9VTklYKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9ndGsvUGx1Z2luVmlld0d0ay5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbHVnaW5zL2d0ay9QbHVnaW5WaWV3R3RrLmNwcAppbmRleCAyMzc4ZDI0Li44NDE0
NTA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL2d0ay9QbHVnaW5WaWV3R3Rr
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL2d0ay9QbHVnaW5WaWV3R3RrLmNwcApA
QCAtMTQxLDYgKzE0MSw5IEBAIHZvaWQgUGx1Z2luVmlldzo6dXBkYXRlUGx1Z2luV2lkZ2V0KCkK
ICAgICBpZiAobV93aW5kb3dSZWN0ID09IG9sZFdpbmRvd1JlY3QgJiYgbV9jbGlwUmVjdCA9PSBv
bGRDbGlwUmVjdCkKICAgICAgICAgcmV0dXJuOwogCisgICAgaWYgKG1fc3RhdHVzICE9IFBsdWdp
blN0YXR1c0xvYWRlZFN1Y2Nlc3NmdWxseSkKKyAgICAgICAgcmV0dXJuOworCiAjaWYgZGVmaW5l
ZChYUF9VTklYKQogICAgIGlmICghbV9pc1dpbmRvd2VkKSB7CiAgICAgICAgIERpc3BsYXkqIGRp
c3BsYXkgPSBHREtfRElTUExBWV9YRElTUExBWShnZGtfZGlzcGxheV9nZXRfZGVmYXVsdCgpKTsK
QEAgLTE3Nyw3ICsxODAsNyBAQCB2b2lkIFBsdWdpblZpZXc6OmhpZGUoKQogCiB2b2lkIFBsdWdp
blZpZXc6OnBhaW50KEdyYXBoaWNzQ29udGV4dCogY29udGV4dCwgY29uc3QgSW50UmVjdCYgcmVj
dCkKIHsKLSAgICBpZiAoIW1faXNTdGFydGVkKSB7CisgICAgaWYgKCFtX2lzU3RhcnRlZCB8fCBt
X3N0YXR1cyAhPSBQbHVnaW5TdGF0dXNMb2FkZWRTdWNjZXNzZnVsbHkpIHsKICAgICAgICAgcGFp
bnRNaXNzaW5nUGx1Z2luSWNvbihjb250ZXh0LCByZWN0KTsKICAgICAgICAgcmV0dXJuOwogICAg
IH0KQEAgLTI3MSw3ICsyNzQsNyBAQCB2b2lkIFBsdWdpblZpZXc6OmhhbmRsZUtleWJvYXJkRXZl
bnQoS2V5Ym9hcmRFdmVudCogZXZlbnQpCiB7CiAgICAgSlNDOjpKU0xvY2s6OkRyb3BBbGxMb2Nr
cyBkcm9wQWxsTG9ja3MoSlNDOjpTaWxlbmNlQXNzZXJ0aW9uc09ubHkpOwogCi0gICAgaWYgKG1f
aXNXaW5kb3dlZCkKKyAgICBpZiAoIW1faXNTdGFydGVkIHx8IG1fc3RhdHVzICE9IFBsdWdpblN0
YXR1c0xvYWRlZFN1Y2Nlc3NmdWxseSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKGV2ZW50
LT50eXBlKCkgIT0gZXZlbnROYW1lcygpLmtleWRvd25FdmVudCAmJiBldmVudC0+dHlwZSgpICE9
IGV2ZW50TmFtZXMoKS5rZXl1cEV2ZW50KQpAQCAtNDAxLDcgKzQwNCw3IEBAIHZvaWQgUGx1Z2lu
Vmlldzo6aGFuZGxlTW91c2VFdmVudChNb3VzZUV2ZW50KiBldmVudCkKIHsKICAgICBKU0M6OkpT
TG9jazo6RHJvcEFsbExvY2tzIGRyb3BBbGxMb2NrcyhKU0M6OlNpbGVuY2VBc3NlcnRpb25zT25s
eSk7CiAKLSAgICBpZiAobV9pc1dpbmRvd2VkKQorICAgIGlmICghbV9pc1N0YXJ0ZWQgfHwgbV9z
dGF0dXMgIT0gUGx1Z2luU3RhdHVzTG9hZGVkU3VjY2Vzc2Z1bGx5KQogICAgICAgICByZXR1cm47
CiAKICAgICBpZiAoZXZlbnQtPnR5cGUoKSA9PSBldmVudE5hbWVzKCkubW91c2Vkb3duRXZlbnQp
IHsKQEAgLTQzOSw2ICs0NDIsOSBAQCB2b2lkIFBsdWdpblZpZXc6OmhhbmRsZU1vdXNlRXZlbnQo
TW91c2VFdmVudCogZXZlbnQpCiAjaWYgZGVmaW5lZChYUF9VTklYKQogdm9pZCBQbHVnaW5WaWV3
OjpoYW5kbGVGb2N1c0luRXZlbnQoKQogeworICAgIGlmICghbV9pc1N0YXJ0ZWQgfHwgbV9zdGF0
dXMgIT0gUGx1Z2luU3RhdHVzTG9hZGVkU3VjY2Vzc2Z1bGx5KQorICAgICAgICByZXR1cm47CisK
ICAgICBYRXZlbnQgbnBFdmVudDsKICAgICBpbml0WEV2ZW50KCZucEV2ZW50KTsKIApAQCAtNDUy
LDYgKzQ1OCw5IEBAIHZvaWQgUGx1Z2luVmlldzo6aGFuZGxlRm9jdXNJbkV2ZW50KCkKIAogdm9p
ZCBQbHVnaW5WaWV3OjpoYW5kbGVGb2N1c091dEV2ZW50KCkKIHsKKyAgICBpZiAoIW1faXNTdGFy
dGVkIHx8IG1fc3RhdHVzICE9IFBsdWdpblN0YXR1c0xvYWRlZFN1Y2Nlc3NmdWxseSkKKyAgICAg
ICAgcmV0dXJuOworCiAgICAgWEV2ZW50IG5wRXZlbnQ7CiAgICAgaW5pdFhFdmVudCgmbnBFdmVu
dCk7CiAKQEAgLTc5OSwxMSArODA4LDI2IEBAIHZvaWQgUGx1Z2luVmlldzo6cGx1Z0FkZGVkQ2Fs
bGJhY2soR3RrU29ja2V0KiBzb2NrZXQsIFBsdWdpblZpZXcqIHZpZXcpCiAgICAgdmlldy0+dXBk
YXRlV2lkZ2V0QWxsb2NhdGlvbkFuZENsaXAoKTsKIH0KIAorc3RhdGljIGJvb2wgbW9kdWxlTWl4
ZXNHdGtTeW1ib2xzKEdNb2R1bGUqIG1vZHVsZSkKK3sKKyAgICBncG9pbnRlciBzeW1ib2w7Cisj
aWZkZWYgR1RLX0FQSV9WRVJTSU9OXzIKKyAgICByZXR1cm4gZ19tb2R1bGVfc3ltYm9sKG1vZHVs
ZSwgImd0a19hcHBsaWNhdGlvbl9nZXRfdHlwZSIsICZzeW1ib2wpOworI2Vsc2UKKyAgICByZXR1
cm4gZ19tb2R1bGVfc3ltYm9sKG1vZHVsZSwgImd0a19vYmplY3RfZ2V0X3R5cGUiLCAmc3ltYm9s
KTsKKyNlbmRpZgorfQorCiBib29sIFBsdWdpblZpZXc6OnBsYXRmb3JtU3RhcnQoKQogewogICAg
IEFTU0VSVChtX2lzU3RhcnRlZCk7CiAgICAgQVNTRVJUKG1fc3RhdHVzID09IFBsdWdpblN0YXR1
c0xvYWRlZFN1Y2Nlc3NmdWxseSk7CiAKKyAgICBpZiAobW9kdWxlTWl4ZXNHdGtTeW1ib2xzKG1f
cGx1Z2luLT5tb2R1bGUoKSkpIHsKKyAgICAgICAgTE9HKFBsdWdpbnMsICJNb2R1bGUgJyVzJyBt
aXhlcyBHVEsrIDIgYW5kIEdUSysgMyBzeW1ib2xzLCBpZ25vcmluZyBwbHVnaW4uXG4iLCBtX3Bs
dWdpbi0+cGF0aCgpLnV0ZjgoKS5kYXRhKCkpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAg
fQorCiAjaWYgZGVmaW5lZChYUF9VTklYKQogICAgIGlmIChtX3BsdWdpbi0+cGx1Z2luRnVuY3Mo
KS0+Z2V0dmFsdWUpIHsKICAgICAgICAgUGx1Z2luVmlldzo6c2V0Q3VycmVudFBsdWdpblZpZXco
dGhpcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cKaW5kZXggOWQ5NTk0MS4uNTg3Y2NjZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDE1IEBACisyMDExLTA2LTA3ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdh
bGlhLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBbR1RLXSBNb3ZlIG1vZHVsZU1peGVzR3RrU3ltYm9scygpIGZyb20gUGx1Z2luUGFja2FnZSB0
byBQbHVnaW5WaWV3CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD02MjIwMAorCisgICAgICAgICogV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL3gxMS9O
ZXRzY2FwZVBsdWdpblgxMS5jcHA6CisgICAgICAgIChXZWJLaXQ6Om1vZHVsZU1peGVzR3RrU3lt
Ym9scyk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHNjYXBlUGx1Z2luOjpwbGF0Zm9ybVBvc3RJbml0
aWFsaXplKTogQ2hlY2sgd2hldGhlcgorICAgICAgICB0aGUgbW9kdWxlIGlzIG1peGluZyBHVEsr
IDIgYW5kIEdUSysgMyBzeW1ib2xzLgorCiAyMDExLTA2LTA2ICBDYXJsb3MgR2FyY2lhIENhbXBv
cyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBbmRlcnMgQ2Fy
bHNzb24uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0
c2NhcGUveDExL05ldHNjYXBlUGx1Z2luWDExLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvUGx1Z2lucy9OZXRzY2FwZS94MTEvTmV0c2NhcGVQbHVnaW5YMTEuY3BwCmluZGV4IGIyNjNk
YzYuLjI5MjcxMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lu
cy9OZXRzY2FwZS94MTEvTmV0c2NhcGVQbHVnaW5YMTEuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS94MTEvTmV0c2NhcGVQbHVnaW5YMTEuY3BwCkBA
IC0xMzYsOCArMTM2LDI0IEBAIHN0YXRpYyBpbmxpbmUgaW50IHgxMVNjcmVlbigpCiAjZW5kaWYK
IH0KIAorI2lmIFBMQVRGT1JNKEdUSykKK3N0YXRpYyBib29sIG1vZHVsZU1peGVzR3RrU3ltYm9s
cyhNb2R1bGUqIG1vZHVsZSkKK3sKKyNpZmRlZiBHVEtfQVBJX1ZFUlNJT05fMgorICAgIHJldHVy
biBtb2R1bGUtPmZ1bmN0aW9uUG9pbnRlcjxncG9pbnRlcj4oImd0a19hcHBsaWNhdGlvbl9nZXRf
dHlwZSIpOworI2Vsc2UKKyAgICByZXR1cm4gbW9kdWxlLT5mdW5jdGlvblBvaW50ZXI8Z3BvaW50
ZXI+KCJndGtfb2JqZWN0X2dldF90eXBlIik7CisjZW5kaWYKK30KKyNlbmRpZgorCiBib29sIE5l
dHNjYXBlUGx1Z2luOjpwbGF0Zm9ybVBvc3RJbml0aWFsaXplKCkKIHsKKyNpZiBQTEFURk9STShH
VEspCisgICAgaWYgKG1vZHVsZU1peGVzR3RrU3ltYm9scyhtX3BsdWdpbk1vZHVsZS0+bW9kdWxl
KCkpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisjZW5kaWYKKwogICAgIFdpbmRvdyB3aW5kb3dJ
RCA9IDA7CiAgICAgYm9vbCBuZWVkc1hFbWJlZCA9IGZhbHNlOwogICAgIGlmIChtX2lzV2luZG93
ZWQpIHsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>96225</attachid>
            <date>2011-06-07 03:28:45 -0700</date>
            <delta_ts>2011-06-07 09:20:15 -0700</delta_ts>
            <desc>Updated patch to apply to curent git master</desc>
            <filename>move-mixes-gtk-symbols2.diff</filename>
            <type>text/plain</type>
            <size>7614</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAzMDYwYTZiLi5iMWEzOWFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjgg
QEAKKzIwMTEtMDYtMDcgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtHVEtd
IE1vdmUgbW9kdWxlTWl4ZXNHdGtTeW1ib2xzKCkgZnJvbSBQbHVnaW5QYWNrYWdlIHRvIFBsdWdp
blZpZXcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTYy
MjAwCisKKyAgICAgICAgKiBwbHVnaW5zL1BsdWdpblBhY2thZ2UuaDoKKyAgICAgICAgKFdlYkNv
cmU6OlBsdWdpblBhY2thZ2U6Om1vZHVsZSk6IE5ldyBtZXRob2QgdG8gcmV0dXJuIHRoZQorICAg
ICAgICBwbGF0Zm9ybSBtb2R1bGUuCisgICAgICAgICogcGx1Z2lucy9ndGsvUGx1Z2luUGFja2Fn
ZUd0ay5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQbHVnaW5QYWNrYWdlOjpsb2FkKTogUmVtb3Zl
IG1vZHVsZU1peGVzR3RrU3ltYm9scygpLgorICAgICAgICAqIHBsdWdpbnMvZ3RrL1BsdWdpblZp
ZXdHdGsuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGx1Z2luVmlldzo6dXBkYXRlUGx1Z2luV2lk
Z2V0KTogQ2hlY2sgd2hldGhlciBwbHVnaW4KKyAgICAgICAgd2FzIHN1Y2Nlc3NmdWxseSBsb2Fk
ZWQgYmVmb3JlIHRyeWluZyB0byBjcmVhdGUgdGhlIGRyYXdhYmxlLgorICAgICAgICAoV2ViQ29y
ZTo6UGx1Z2luVmlldzo6cGFpbnQpOiBSZXR1cm4gZWFybHkgaWYgcGx1Z2luIGRpZG4ndCBzdGFy
dAorICAgICAgICBvciB3YXMgbm90IHN1Y2Nlc3NmdWxseSBsb2FkZWQuCisgICAgICAgIChXZWJD
b3JlOjpQbHVnaW5WaWV3OjpoYW5kbGVLZXlib2FyZEV2ZW50KTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpQbHVnaW5WaWV3OjpoYW5kbGVNb3VzZUV2ZW50KTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpQbHVnaW5WaWV3OjpoYW5kbGVGb2N1c0luRXZlbnQpOiBEaXR0by4KKyAgICAgICAg
KFdlYkNvcmU6OlBsdWdpblZpZXc6OmhhbmRsZUZvY3VzT3V0RXZlbnQpOiBEaXR0by4KKyAgICAg
ICAgKFdlYkNvcmU6Om1vZHVsZU1peGVzR3RrU3ltYm9scyk6CisgICAgICAgIChXZWJDb3JlOjpQ
bHVnaW5WaWV3OjpwbGF0Zm9ybVN0YXJ0KTogQ2hlY2sgd2hldGhlciBtb2R1bGUgaXMKKyAgICAg
ICAgbWl4aW5nIEdUSysgMiBhbmQgR1RLKyAzIHN5bWJvbHMuCisKIDIwMTEtMDYtMDcgIE5hb2tp
IFRha2FubyAgPHRha2Fuby5uYW9raUBnbWFpbC5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
S2VudCBUYW11cmEuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblBh
Y2thZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luUGFja2FnZS5oCmluZGV4IGY0
ZDFkYWMuLjE5ZTJhMDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2lu
UGFja2FnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luUGFja2FnZS5oCkBA
IC01OCw2ICs1OCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgY29uc3QgU3RyaW5n
JiBwYXRoKCkgY29uc3QgeyByZXR1cm4gbV9wYXRoOyB9CiAgICAgICAgIGNvbnN0IFN0cmluZyYg
ZmlsZU5hbWUoKSBjb25zdCB7IHJldHVybiBtX2ZpbGVOYW1lOyB9CiAgICAgICAgIGNvbnN0IFN0
cmluZyYgcGFyZW50RGlyZWN0b3J5KCkgY29uc3QgeyByZXR1cm4gbV9wYXJlbnREaXJlY3Rvcnk7
IH0KKyAgICAgICAgUGxhdGZvcm1Nb2R1bGUgbW9kdWxlKCkgY29uc3QgeyByZXR1cm4gbV9tb2R1
bGU7IH0KICAgICAgICAgdWludDE2X3QgTlBWZXJzaW9uKCkgY29uc3Q7CiAgICAgICAgIHRpbWVf
dCBsYXN0TW9kaWZpZWQoKSBjb25zdCB7IHJldHVybiBtX2xhc3RNb2RpZmllZDsgfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL2d0ay9QbHVnaW5QYWNrYWdlR3RrLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvZ3RrL1BsdWdpblBhY2thZ2VHdGsuY3BwCmluZGV4IGFi
OGViNTcuLjIxZDNjOWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvZ3RrL1Bs
dWdpblBhY2thZ2VHdGsuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvZ3RrL1BsdWdp
blBhY2thZ2VHdGsuY3BwCkBAIC0xMTksMTcgKzExOSw2IEBAIHN0YXRpYyBpbnQgd2Via2l0Z3Rr
WEVycm9yKERpc3BsYXkqIHhkaXNwbGF5LCBYRXJyb3JFdmVudCogZXJyb3IpCiB9CiAjZW5kaWYK
IAotc3RhdGljIGJvb2wgbW9kdWxlTWl4ZXNHdGtTeW1ib2xzKEdNb2R1bGUqIG1vZHVsZSkKLXsK
LSAgICBncG9pbnRlciBzeW1ib2w7Ci0jaWZkZWYgR1RLX0FQSV9WRVJTSU9OXzIKLSAgICByZXR1
cm4gZ19tb2R1bGVfc3ltYm9sKG1vZHVsZSwgImd0a19hcHBsaWNhdGlvbl9nZXRfdHlwZSIsICZz
eW1ib2wpOwotI2Vsc2UKLSAgICByZXR1cm4gZ19tb2R1bGVfc3ltYm9sKG1vZHVsZSwgImd0a19v
YmplY3RfZ2V0X3R5cGUiLCAmc3ltYm9sKTsKLSNlbmRpZgotfQotCi0KIGJvb2wgUGx1Z2luUGFj
a2FnZTo6bG9hZCgpCiB7CiAgICAgaWYgKG1faXNMb2FkZWQpIHsKQEAgLTE2MSwxMiArMTUwLDYg
QEAgYm9vbCBQbHVnaW5QYWNrYWdlOjpsb2FkKCkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAg
IH0KIAotICAgIGlmIChtb2R1bGVNaXhlc0d0a1N5bWJvbHMobV9tb2R1bGUpKSB7Ci0gICAgICAg
IExPRyhQbHVnaW5zLCAiTW9kdWxlICclcycgbWl4ZXMgR1RLKyAyIGFuZCBHVEsrIDMgc3ltYm9s
cywgaWdub3JpbmcgcGx1Z2luLlxuIiwgbV9wYXRoLnV0ZjgoKS5kYXRhKCkpOwotICAgICAgICBn
X21vZHVsZV9jbG9zZShtX21vZHVsZSk7Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9Ci0K
ICAgICBtX2lzTG9hZGVkID0gdHJ1ZTsKIAogI2lmIGRlZmluZWQoWFBfVU5JWCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvZ3RrL1BsdWdpblZpZXdHdGsuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGx1Z2lucy9ndGsvUGx1Z2luVmlld0d0ay5jcHAKaW5kZXggMjM3OGQyNC4uODQx
NDUwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9ndGsvUGx1Z2luVmlld0d0
ay5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9ndGsvUGx1Z2luVmlld0d0ay5jcHAK
QEAgLTE0MSw2ICsxNDEsOSBAQCB2b2lkIFBsdWdpblZpZXc6OnVwZGF0ZVBsdWdpbldpZGdldCgp
CiAgICAgaWYgKG1fd2luZG93UmVjdCA9PSBvbGRXaW5kb3dSZWN0ICYmIG1fY2xpcFJlY3QgPT0g
b2xkQ2xpcFJlY3QpCiAgICAgICAgIHJldHVybjsKIAorICAgIGlmIChtX3N0YXR1cyAhPSBQbHVn
aW5TdGF0dXNMb2FkZWRTdWNjZXNzZnVsbHkpCisgICAgICAgIHJldHVybjsKKwogI2lmIGRlZmlu
ZWQoWFBfVU5JWCkKICAgICBpZiAoIW1faXNXaW5kb3dlZCkgewogICAgICAgICBEaXNwbGF5KiBk
aXNwbGF5ID0gR0RLX0RJU1BMQVlfWERJU1BMQVkoZ2RrX2Rpc3BsYXlfZ2V0X2RlZmF1bHQoKSk7
CkBAIC0xNzcsNyArMTgwLDcgQEAgdm9pZCBQbHVnaW5WaWV3OjpoaWRlKCkKIAogdm9pZCBQbHVn
aW5WaWV3OjpwYWludChHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IEludFJlY3QmIHJl
Y3QpCiB7Ci0gICAgaWYgKCFtX2lzU3RhcnRlZCkgeworICAgIGlmICghbV9pc1N0YXJ0ZWQgfHwg
bV9zdGF0dXMgIT0gUGx1Z2luU3RhdHVzTG9hZGVkU3VjY2Vzc2Z1bGx5KSB7CiAgICAgICAgIHBh
aW50TWlzc2luZ1BsdWdpbkljb24oY29udGV4dCwgcmVjdCk7CiAgICAgICAgIHJldHVybjsKICAg
ICB9CkBAIC0yNzEsNyArMjc0LDcgQEAgdm9pZCBQbHVnaW5WaWV3OjpoYW5kbGVLZXlib2FyZEV2
ZW50KEtleWJvYXJkRXZlbnQqIGV2ZW50KQogewogICAgIEpTQzo6SlNMb2NrOjpEcm9wQWxsTG9j
a3MgZHJvcEFsbExvY2tzKEpTQzo6U2lsZW5jZUFzc2VydGlvbnNPbmx5KTsKIAotICAgIGlmICht
X2lzV2luZG93ZWQpCisgICAgaWYgKCFtX2lzU3RhcnRlZCB8fCBtX3N0YXR1cyAhPSBQbHVnaW5T
dGF0dXNMb2FkZWRTdWNjZXNzZnVsbHkpCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmIChldmVu
dC0+dHlwZSgpICE9IGV2ZW50TmFtZXMoKS5rZXlkb3duRXZlbnQgJiYgZXZlbnQtPnR5cGUoKSAh
PSBldmVudE5hbWVzKCkua2V5dXBFdmVudCkKQEAgLTQwMSw3ICs0MDQsNyBAQCB2b2lkIFBsdWdp
blZpZXc6OmhhbmRsZU1vdXNlRXZlbnQoTW91c2VFdmVudCogZXZlbnQpCiB7CiAgICAgSlNDOjpK
U0xvY2s6OkRyb3BBbGxMb2NrcyBkcm9wQWxsTG9ja3MoSlNDOjpTaWxlbmNlQXNzZXJ0aW9uc09u
bHkpOwogCi0gICAgaWYgKG1faXNXaW5kb3dlZCkKKyAgICBpZiAoIW1faXNTdGFydGVkIHx8IG1f
c3RhdHVzICE9IFBsdWdpblN0YXR1c0xvYWRlZFN1Y2Nlc3NmdWxseSkKICAgICAgICAgcmV0dXJu
OwogCiAgICAgaWYgKGV2ZW50LT50eXBlKCkgPT0gZXZlbnROYW1lcygpLm1vdXNlZG93bkV2ZW50
KSB7CkBAIC00MzksNiArNDQyLDkgQEAgdm9pZCBQbHVnaW5WaWV3OjpoYW5kbGVNb3VzZUV2ZW50
KE1vdXNlRXZlbnQqIGV2ZW50KQogI2lmIGRlZmluZWQoWFBfVU5JWCkKIHZvaWQgUGx1Z2luVmll
dzo6aGFuZGxlRm9jdXNJbkV2ZW50KCkKIHsKKyAgICBpZiAoIW1faXNTdGFydGVkIHx8IG1fc3Rh
dHVzICE9IFBsdWdpblN0YXR1c0xvYWRlZFN1Y2Nlc3NmdWxseSkKKyAgICAgICAgcmV0dXJuOwor
CiAgICAgWEV2ZW50IG5wRXZlbnQ7CiAgICAgaW5pdFhFdmVudCgmbnBFdmVudCk7CiAKQEAgLTQ1
Miw2ICs0NTgsOSBAQCB2b2lkIFBsdWdpblZpZXc6OmhhbmRsZUZvY3VzSW5FdmVudCgpCiAKIHZv
aWQgUGx1Z2luVmlldzo6aGFuZGxlRm9jdXNPdXRFdmVudCgpCiB7CisgICAgaWYgKCFtX2lzU3Rh
cnRlZCB8fCBtX3N0YXR1cyAhPSBQbHVnaW5TdGF0dXNMb2FkZWRTdWNjZXNzZnVsbHkpCisgICAg
ICAgIHJldHVybjsKKwogICAgIFhFdmVudCBucEV2ZW50OwogICAgIGluaXRYRXZlbnQoJm5wRXZl
bnQpOwogCkBAIC03OTksMTEgKzgwOCwyNiBAQCB2b2lkIFBsdWdpblZpZXc6OnBsdWdBZGRlZENh
bGxiYWNrKEd0a1NvY2tldCogc29ja2V0LCBQbHVnaW5WaWV3KiB2aWV3KQogICAgIHZpZXctPnVw
ZGF0ZVdpZGdldEFsbG9jYXRpb25BbmRDbGlwKCk7CiB9CiAKK3N0YXRpYyBib29sIG1vZHVsZU1p
eGVzR3RrU3ltYm9scyhHTW9kdWxlKiBtb2R1bGUpCit7CisgICAgZ3BvaW50ZXIgc3ltYm9sOwor
I2lmZGVmIEdUS19BUElfVkVSU0lPTl8yCisgICAgcmV0dXJuIGdfbW9kdWxlX3N5bWJvbChtb2R1
bGUsICJndGtfYXBwbGljYXRpb25fZ2V0X3R5cGUiLCAmc3ltYm9sKTsKKyNlbHNlCisgICAgcmV0
dXJuIGdfbW9kdWxlX3N5bWJvbChtb2R1bGUsICJndGtfb2JqZWN0X2dldF90eXBlIiwgJnN5bWJv
bCk7CisjZW5kaWYKK30KKwogYm9vbCBQbHVnaW5WaWV3OjpwbGF0Zm9ybVN0YXJ0KCkKIHsKICAg
ICBBU1NFUlQobV9pc1N0YXJ0ZWQpOwogICAgIEFTU0VSVChtX3N0YXR1cyA9PSBQbHVnaW5TdGF0
dXNMb2FkZWRTdWNjZXNzZnVsbHkpOwogCisgICAgaWYgKG1vZHVsZU1peGVzR3RrU3ltYm9scyht
X3BsdWdpbi0+bW9kdWxlKCkpKSB7CisgICAgICAgIExPRyhQbHVnaW5zLCAiTW9kdWxlICclcycg
bWl4ZXMgR1RLKyAyIGFuZCBHVEsrIDMgc3ltYm9scywgaWdub3JpbmcgcGx1Z2luLlxuIiwgbV9w
bHVnaW4tPnBhdGgoKS51dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAg
IH0KKwogI2lmIGRlZmluZWQoWFBfVU5JWCkKICAgICBpZiAobV9wbHVnaW4tPnBsdWdpbkZ1bmNz
KCktPmdldHZhbHVlKSB7CiAgICAgICAgIFBsdWdpblZpZXc6OnNldEN1cnJlbnRQbHVnaW5WaWV3
KHRoaXMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dl
YktpdDIvQ2hhbmdlTG9nCmluZGV4IDE5MzZhMWEuLjk2NTgzMjEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNSBAQAorMjAxMS0wNi0wNyAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGln
YWxpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgW0dUS10gTW92ZSBtb2R1bGVNaXhlc0d0a1N5bWJvbHMoKSBmcm9tIFBsdWdpblBhY2thZ2Ug
dG8gUGx1Z2luVmlldworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NjIyMDAKKworICAgICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS94MTEv
TmV0c2NhcGVQbHVnaW5YMTEuY3BwOgorICAgICAgICAoV2ViS2l0Ojptb2R1bGVNaXhlc0d0a1N5
bWJvbHMpOgorICAgICAgICAoV2ViS2l0OjpOZXRzY2FwZVBsdWdpbjo6cGxhdGZvcm1Qb3N0SW5p
dGlhbGl6ZSk6IENoZWNrIHdoZXRoZXIKKyAgICAgICAgdGhlIG1vZHVsZSBpcyBtaXhpbmcgR1RL
KyAyIGFuZCBHVEsrIDMgc3ltYm9scy4KKwogMjAxMS0wNi0wNiAgU2hlcmlmZiBCb3QgIDx3ZWJr
aXQucmV2aWV3LmJvdEBnbWFpbC5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBv
dXQgcjg4MjIyLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5z
L05ldHNjYXBlL3gxMS9OZXRzY2FwZVBsdWdpblgxMS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUveDExL05ldHNjYXBlUGx1Z2luWDExLmNwcAppbmRleCAw
YzkzZTVlLi41Y2JlNTY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1Bs
dWdpbnMvTmV0c2NhcGUveDExL05ldHNjYXBlUGx1Z2luWDExLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUveDExL05ldHNjYXBlUGx1Z2luWDExLmNw
cApAQCAtMTMxLDggKzEzMSwyNCBAQCBzdGF0aWMgaW5saW5lIGludCB4MTFTY3JlZW4oKQogI2Vu
ZGlmCiB9CiAKKyNpZiBQTEFURk9STShHVEspCitzdGF0aWMgYm9vbCBtb2R1bGVNaXhlc0d0a1N5
bWJvbHMoTW9kdWxlKiBtb2R1bGUpCit7CisjaWZkZWYgR1RLX0FQSV9WRVJTSU9OXzIKKyAgICBy
ZXR1cm4gbW9kdWxlLT5mdW5jdGlvblBvaW50ZXI8Z3BvaW50ZXI+KCJndGtfYXBwbGljYXRpb25f
Z2V0X3R5cGUiKTsKKyNlbHNlCisgICAgcmV0dXJuIG1vZHVsZS0+ZnVuY3Rpb25Qb2ludGVyPGdw
b2ludGVyPigiZ3RrX29iamVjdF9nZXRfdHlwZSIpOworI2VuZGlmCit9CisjZW5kaWYKKwogYm9v
bCBOZXRzY2FwZVBsdWdpbjo6cGxhdGZvcm1Qb3N0SW5pdGlhbGl6ZSgpCiB7CisjaWYgUExBVEZP
Uk0oR1RLKQorICAgIGlmIChtb2R1bGVNaXhlc0d0a1N5bWJvbHMobV9wbHVnaW5Nb2R1bGUtPm1v
ZHVsZSgpKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworI2VuZGlmCisKICAgICBpZiAobV9pc1dp
bmRvd2VkKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAK
</data>
<flag name="review"
          id="89861"
          type_id="1"
          status="+"
          setter="mrobinson"
    />
          </attachment>
      

    </bug>

</bugzilla>