<?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>187636</bug_id>
          
          <creation_ts>2018-07-13 01:16:54 -0700</creation_ts>
          <short_desc>[GStreamer][MSE] Add GstFlowCombiner to handle non-linked inactive branches</short_desc>
          <delta_ts>2018-07-13 03:48:26 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Xabier Rodríguez Calvar">calvaris</reporter>
          <assigned_to name="Xabier Rodríguez Calvar">calvaris</assigned_to>
          <cc>cgarcia</cc>
    
    <cc>eocanha</cc>
    
    <cc>pnormand</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1441821</commentid>
    <comment_count>0</comment_count>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2018-07-13 01:16:54 -0700</bug_when>
    <thetext>[GStreamer][MSE] Add GstFlowCombiner to handle non-linked inactive branches</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1441823</commentid>
    <comment_count>1</comment_count>
      <attachid>344930</attachid>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2018-07-13 01:21:50 -0700</bug_when>
    <thetext>Created attachment 344930
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1441824</commentid>
    <comment_count>2</comment_count>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2018-07-13 01:42:03 -0700</bug_when>
    <thetext>This patch looks good to me. It&apos;s going to be very helpful to support more than one audio streams.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1441825</commentid>
    <comment_count>3</comment_count>
      <attachid>344930</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2018-07-13 01:53:13 -0700</bug_when>
    <thetext>Comment on attachment 344930
Patch

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

&gt; Source/WebCore/platform/graphics/gstreamer/GUniquePtrGStreamer.h:36
&gt; +// GstFlowCombiner becomes reference counted in 1.12.

What does this comment mean? It&apos;s confusing, if it&apos;s ref counted, why we define a GUniquePtr?

&gt; Source/WebCore/platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp:255
&gt; +    return gst_flow_combiner_update_pad_flow(self.get()-&gt;priv-&gt;flowCombiner.get(), pad, gst_proxy_pad_chain_default(pad, GST_OBJECT(self.get()), buffer));

self.get()-&gt;priv -&gt; self-&gt;priv

&gt; Source/WebCore/platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp:482
&gt; -    GUniquePtr&lt;gchar&gt; padName(g_strdup_printf(&quot;src_%u&quot;, padId));
&gt; -    GstPad* ghostpad = WebCore::webkitGstGhostPadFromStaticTemplate(&amp;srcTemplate, padName.get(), sourcePad);
&gt; +    auto padName = String::format(&quot;src_%u&quot;, padId);
&gt; +    GstPad* ghostPad = WebCore::webkitGstGhostPadFromStaticTemplate(&amp;srcTemplate, padName.utf8().data(), sourcePad);

Why did you change this? We are now doing encoding conversions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1441827</commentid>
    <comment_count>4</comment_count>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2018-07-13 02:12:34 -0700</bug_when>
    <thetext>(In reply to Carlos Garcia Campos from comment #3)
&gt; &gt; Source/WebCore/platform/graphics/gstreamer/GUniquePtrGStreamer.h:36
&gt; &gt; +// GstFlowCombiner becomes reference counted in 1.12.
&gt; 
&gt; What does this comment mean? It&apos;s confusing, if it&apos;s ref counted, why we
&gt; define a GUniquePtr?

It became refcounted in 1.12 so from that moment on can can ref and unref but with previous versions of GStreamer, we have _new and _free. Since we don&apos;t need it to be refcounted for now, I thought the simplest way was implementing the non-refcounted use case.

&gt; &gt; Source/WebCore/platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp:255
&gt; &gt; +    return gst_flow_combiner_update_pad_flow(self.get()-&gt;priv-&gt;flowCombiner.get(), pad, gst_proxy_pad_chain_default(pad, GST_OBJECT(self.get()), buffer));
&gt; 
&gt; self.get()-&gt;priv -&gt; self-&gt;priv

Yes (monkey coding).

&gt; &gt; Source/WebCore/platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp:482
&gt; &gt; -    GUniquePtr&lt;gchar&gt; padName(g_strdup_printf(&quot;src_%u&quot;, padId));
&gt; &gt; -    GstPad* ghostpad = WebCore::webkitGstGhostPadFromStaticTemplate(&amp;srcTemplate, padName.get(), sourcePad);
&gt; &gt; +    auto padName = String::format(&quot;src_%u&quot;, padId);
&gt; &gt; +    GstPad* ghostPad = WebCore::webkitGstGhostPadFromStaticTemplate(&amp;srcTemplate, padName.utf8().data(), sourcePad);
&gt; 
&gt; Why did you change this? We are now doing encoding conversions.

Cause I think it was better to use WebKit API rather than GLib&apos;s if possible. I think it is better. Do you object to this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1441832</commentid>
    <comment_count>5</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2018-07-13 02:20:30 -0700</bug_when>
    <thetext>(In reply to Xabier Rodríguez Calvar from comment #4)
&gt; (In reply to Carlos Garcia Campos from comment #3)
&gt; &gt; &gt; Source/WebCore/platform/graphics/gstreamer/GUniquePtrGStreamer.h:36
&gt; &gt; &gt; +// GstFlowCombiner becomes reference counted in 1.12.
&gt; &gt; 
&gt; &gt; What does this comment mean? It&apos;s confusing, if it&apos;s ref counted, why we
&gt; &gt; define a GUniquePtr?
&gt; 
&gt; It became refcounted in 1.12 so from that moment on can can ref and unref
&gt; but with previous versions of GStreamer, we have _new and _free. Since we
&gt; don&apos;t need it to be refcounted for now, I thought the simplest way was
&gt; implementing the non-refcounted use case.

Remove the comment then, it&apos;s confusing.

&gt; &gt; &gt; Source/WebCore/platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp:255
&gt; &gt; &gt; +    return gst_flow_combiner_update_pad_flow(self.get()-&gt;priv-&gt;flowCombiner.get(), pad, gst_proxy_pad_chain_default(pad, GST_OBJECT(self.get()), buffer));
&gt; &gt; 
&gt; &gt; self.get()-&gt;priv -&gt; self-&gt;priv
&gt; 
&gt; Yes (monkey coding).
&gt; 
&gt; &gt; &gt; Source/WebCore/platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp:482
&gt; &gt; &gt; -    GUniquePtr&lt;gchar&gt; padName(g_strdup_printf(&quot;src_%u&quot;, padId));
&gt; &gt; &gt; -    GstPad* ghostpad = WebCore::webkitGstGhostPadFromStaticTemplate(&amp;srcTemplate, padName.get(), sourcePad);
&gt; &gt; &gt; +    auto padName = String::format(&quot;src_%u&quot;, padId);
&gt; &gt; &gt; +    GstPad* ghostPad = WebCore::webkitGstGhostPadFromStaticTemplate(&amp;srcTemplate, padName.utf8().data(), sourcePad);
&gt; &gt; 
&gt; &gt; Why did you change this? We are now doing encoding conversions.
&gt; 
&gt; Cause I think it was better to use WebKit API rather than GLib&apos;s if
&gt; possible. I think it is better. Do you object to this?

Yes, WTF is preferred but only when it makes sense, and it doesn&apos;t in this case. The change is unrelated to this bug too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1441834</commentid>
    <comment_count>6</comment_count>
      <attachid>344933</attachid>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2018-07-13 03:05:39 -0700</bug_when>
    <thetext>Created attachment 344933
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1441837</commentid>
    <comment_count>7</comment_count>
      <attachid>344933</attachid>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2018-07-13 03:47:16 -0700</bug_when>
    <thetext>Comment on attachment 344933
Patch

Clearing flags on attachment: 344933

Committed r233797: &lt;https://trac.webkit.org/changeset/233797&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1441838</commentid>
    <comment_count>8</comment_count>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2018-07-13 03:47:20 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1441839</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-07-13 03:48:26 -0700</bug_when>
    <thetext>&lt;rdar://problem/42160243&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>344930</attachid>
            <date>2018-07-13 01:21:50 -0700</date>
            <delta_ts>2018-07-13 03:05:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-187636-20180713102149.patch</filename>
            <type>text/plain</type>
            <size>6369</size>
            <attacher name="Xabier Rodríguez Calvar">calvaris</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMzNzYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjVhYmY3ZjdiZjZmNTUy
N2Y1N2QzYTM2YzU5Zjk2YmU5ZTE2NTcxYS4uMmZmM2UyNDVjZDI0MWJhNzIxODk4NjQ4NjljYzc5
OTI2MzkzMDUxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDE4LTA3LTEzICBYYWJp
ZXIgUm9kcmlndWV6IENhbHZhciAgPGNhbHZhcmlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgW0dT
dHJlYW1lcl1bTVNFXSBBZGQgR3N0Rmxvd0NvbWJpbmVyIHRvIGhhbmRsZSBub24tbGlua2VkIGlu
YWN0aXZlIGJyYW5jaGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xODc2MzYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBXaGVuIHdlIGhhdmUgbW9yZSB0aGFuIG9uZSBzb3VyY2UgYnVmZmVyLCBvbmx5IG9u
ZSB3aWxsIGJlCisgICAgICAgIHJlbmRlcmVkIGFuZCB0aGUgaW5hY3RpdmUgYnJhbmNoIHdpbGwg
cmVwb3J0IGxpbmtpbmcgZXJyb3JzIHRoYXQKKyAgICAgICAgd2UgaGF2ZSB0byBkZWFsIHdpdGgu
CisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvR1VuaXF1ZVB0ckdTdHJl
YW1lci5oOiBBZGRlZCBHc3RGbG93Q29tYmluZXIuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvZ3N0cmVhbWVyL21zZS9XZWJLaXRNZWRpYVNvdXJjZUdTdHJlYW1lci5jcHA6CisgICAgICAg
ICh3ZWJraXRNZWRpYVNyY0NoYWluKTogQ29tYmluZSB0aGUgZmxvdyBpbiB0aGUgZmxvdyBjb21i
aW5lci4KKyAgICAgICAgKHdlYmtpdF9tZWRpYV9zcmNfaW5pdCk6IEluaXRpYWxpemUgdGhlIGZs
b3cgY29tYmluZXIuCisgICAgICAgICh3ZWJLaXRNZWRpYVNyY0xpbmtTdHJlYW1Ub1NyY1BhZCk6
IEFkZCB0aGUgcHJveHlwYWQgdG8gdGhlCisgICAgICAgIGNvbWJpbmVyIGFuZCBzZXQgdGhlIGNo
YWluIGZ1bmN0aW9uLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2Uv
V2ViS2l0TWVkaWFTb3VyY2VHU3RyZWFtZXJQcml2YXRlLmg6CisgICAgICAgIERlY2xhcmUgdGhl
IGZsb3cgY29tYmluZXIuCisKIDIwMTgtMDctMTEgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBw
bGUuY29tPgogCiAgICAgICAgIE1lZGlhRGV2aWNlcyBzaG91bGQgZGVyaXZlIGZyb20gRXZlbnRU
YXJnZXQgaW4gaXRzIElETApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZ3N0cmVhbWVyL0dVbmlxdWVQdHJHU3RyZWFtZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9HVW5pcXVlUHRyR1N0cmVhbWVyLmgKaW5kZXggMjI5
MGFiZjgzMjE3ZTMxNWE2ODQ0OTgzNzk0ODIxMjcwMGRhZjRlZC4uYzAzMzQxYWIxNjY1YWIxNWI1
YWZkM2YxMTQzYWIwOTgwM2E2ZWRhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0dVbmlxdWVQdHJHU3RyZWFtZXIuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvR1VuaXF1ZVB0ckdTdHJlYW1lci5o
CkBAIC0yMSw2ICsyMSw3IEBACiAjZGVmaW5lIEdVbmlxdWVQdHJHU3RyZWFtZXJfaAogI2lmIFVT
RShHU1RSRUFNRVIpCiAKKyNpbmNsdWRlIDxnc3QvYmFzZS9nc3RmbG93Y29tYmluZXIuaD4KICNp
bmNsdWRlIDxnc3QvZ3N0c2VnbWVudC5oPgogI2luY2x1ZGUgPGdzdC9nc3RzdHJ1Y3R1cmUuaD4K
ICNpbmNsdWRlIDxnc3QvcGJ1dGlscy9pbnN0YWxsLXBsdWdpbnMuaD4KQEAgLTMyLDYgKzMzLDkg
QEAgV1RGX0RFRklORV9HUFRSX0RFTEVURVIoR3N0U3RydWN0dXJlLCBnc3Rfc3RydWN0dXJlX2Zy
ZWUpCiBXVEZfREVGSU5FX0dQVFJfREVMRVRFUihHc3RJbnN0YWxsUGx1Z2luc0NvbnRleHQsIGdz
dF9pbnN0YWxsX3BsdWdpbnNfY29udGV4dF9mcmVlKQogV1RGX0RFRklORV9HUFRSX0RFTEVURVIo
R3N0U2VnbWVudCwgZ3N0X3NlZ21lbnRfZnJlZSkKIAorLy8gR3N0Rmxvd0NvbWJpbmVyIGJlY29t
ZXMgcmVmZXJlbmNlIGNvdW50ZWQgaW4gMS4xMi4KK1dURl9ERUZJTkVfR1BUUl9ERUxFVEVSKEdz
dEZsb3dDb21iaW5lciwgZ3N0X2Zsb3dfY29tYmluZXJfZnJlZSkKKwogfQogCiAjZW5kaWYgLy8g
VVNFKEdTVFJFQU1FUikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9tc2UvV2ViS2l0TWVkaWFTb3VyY2VHU3RyZWFtZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9XZWJLaXRNZWRpYVNvdXJj
ZUdTdHJlYW1lci5jcHAKaW5kZXggZjYzY2VhMmJjNzk5OWUyNzI3ZjdmZjc4Mzk2MDE2NGU0ODFm
ZmYzYi4uMjY2MGM3YmMwNmIzNDc3ZGExNzg2ODA0YWIxYWJhMmJmOGUwOWNiMSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9XZWJLaXRN
ZWRpYVNvdXJjZUdTdHJlYW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZ3N0cmVhbWVyL21zZS9XZWJLaXRNZWRpYVNvdXJjZUdTdHJlYW1lci5jcHAKQEAgLTQ4
LDcgKzQ4LDYgQEAKICNpbmNsdWRlIDxnc3QvdmlkZW8vdmlkZW8uaD4KICNpbmNsdWRlIDx3dGYv
Q29uZGl0aW9uLmg+CiAjaW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4KLSNpbmNsdWRlIDx3dGYv
Z2xpYi9HVW5pcXVlUHRyLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogCiBHU1Rf
REVCVUdfQ0FURUdPUllfU1RBVElDKHdlYmtpdF9tZWRpYV9zcmNfZGVidWcpOwpAQCAtMjQ5LDYg
KzI0OCwxMyBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfbWVkaWFfc3JjX2NsYXNzX2luaXQoV2ViS2l0
TWVkaWFTcmNDbGFzcyoga2xhc3MpCiAgICAgZ190eXBlX2NsYXNzX2FkZF9wcml2YXRlKGtsYXNz
LCBzaXplb2YoV2ViS2l0TWVkaWFTcmNQcml2YXRlKSk7CiB9CiAKK3N0YXRpYyBHc3RGbG93UmV0
dXJuIHdlYmtpdE1lZGlhU3JjQ2hhaW4oR3N0UGFkKiBwYWQsIEdzdE9iamVjdCogcGFyZW50LCBH
c3RCdWZmZXIqIGJ1ZmZlcikKK3sKKyAgICBHUmVmUHRyPFdlYktpdE1lZGlhU3JjPiBzZWxmID0g
YWRvcHRHUmVmKFdFQktJVF9NRURJQV9TUkMoZ3N0X29iamVjdF9nZXRfcGFyZW50KHBhcmVudCkp
KTsKKworICAgIHJldHVybiBnc3RfZmxvd19jb21iaW5lcl91cGRhdGVfcGFkX2Zsb3coc2VsZi5n
ZXQoKS0+cHJpdi0+Zmxvd0NvbWJpbmVyLmdldCgpLCBwYWQsIGdzdF9wcm94eV9wYWRfY2hhaW5f
ZGVmYXVsdChwYWQsIEdTVF9PQkpFQ1Qoc2VsZi5nZXQoKSksIGJ1ZmZlcikpOworfQorCiBzdGF0
aWMgdm9pZCB3ZWJraXRfbWVkaWFfc3JjX2luaXQoV2ViS2l0TWVkaWFTcmMqIHNvdXJjZSkKIHsK
ICAgICBzb3VyY2UtPnByaXYgPSBXRUJLSVRfTUVESUFfU1JDX0dFVF9QUklWQVRFKHNvdXJjZSk7
CkBAIC0yNTcsNiArMjYzLDcgQEAgc3RhdGljIHZvaWQgd2Via2l0X21lZGlhX3NyY19pbml0KFdl
YktpdE1lZGlhU3JjKiBzb3VyY2UpCiAgICAgc291cmNlLT5wcml2LT5hcHBzcmNTZWVrRGF0YUNv
dW50ID0gMDsKICAgICBzb3VyY2UtPnByaXYtPmFwcHNyY05lZWREYXRhQ291bnQgPSAwOwogICAg
IHNvdXJjZS0+cHJpdi0+YXBwc3JjU2Vla0RhdGFOZXh0QWN0aW9uID0gTm90aGluZzsKKyAgICBz
b3VyY2UtPnByaXYtPmZsb3dDb21iaW5lciA9IEdVbmlxdWVQdHI8R3N0Rmxvd0NvbWJpbmVyPihn
c3RfZmxvd19jb21iaW5lcl9uZXcoKSk7CiAKICAgICAvLyBObyBuZWVkIHRvIHJlc2V0IFN0cmVh
bS5hcHBzcmNOZWVkRGF0YUZsYWcgYmVjYXVzZSB0aGVyZSBhcmUgbm8gU3RyZWFtcyBhdCB0aGlz
IHBvaW50IHlldC4KIH0KQEAgLTQ3MSwxMyArNDc4LDE2IEBAIHZvaWQgd2ViS2l0TWVkaWFTcmNM
aW5rU3RyZWFtVG9TcmNQYWQoR3N0UGFkKiBzb3VyY2VQYWQsIFN0cmVhbSogc3RyZWFtKQogICAg
IHVuc2lnbmVkIHBhZElkID0gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEdQT0lOVEVSX1RPX0lOVChn
X29iamVjdF9nZXRfZGF0YShHX09CSkVDVChzb3VyY2VQYWQpLCAicGFkSWQiKSkpOwogICAgIEdT
VF9ERUJVR19PQkpFQ1Qoc3RyZWFtLT5wYXJlbnQsICJsaW5raW5nIHN0cmVhbSB0byBzcmMgcGFk
IChpZDogJXUpIiwgcGFkSWQpOwogCi0gICAgR1VuaXF1ZVB0cjxnY2hhcj4gcGFkTmFtZShnX3N0
cmR1cF9wcmludGYoInNyY18ldSIsIHBhZElkKSk7Ci0gICAgR3N0UGFkKiBnaG9zdHBhZCA9IFdl
YkNvcmU6OndlYmtpdEdzdEdob3N0UGFkRnJvbVN0YXRpY1RlbXBsYXRlKCZzcmNUZW1wbGF0ZSwg
cGFkTmFtZS5nZXQoKSwgc291cmNlUGFkKTsKKyAgICBhdXRvIHBhZE5hbWUgPSBTdHJpbmc6OmZv
cm1hdCgic3JjXyV1IiwgcGFkSWQpOworICAgIEdzdFBhZCogZ2hvc3RQYWQgPSBXZWJDb3JlOjp3
ZWJraXRHc3RHaG9zdFBhZEZyb21TdGF0aWNUZW1wbGF0ZSgmc3JjVGVtcGxhdGUsIHBhZE5hbWUu
dXRmOCgpLmRhdGEoKSwgc291cmNlUGFkKTsKIAotICAgIGdzdF9wYWRfc2V0X3F1ZXJ5X2Z1bmN0
aW9uKGdob3N0cGFkLCB3ZWJLaXRNZWRpYVNyY1F1ZXJ5V2l0aFBhcmVudCk7CisgICAgYXV0byBw
cm94eVBhZCA9IGFkb3B0R1JlZihHU1RfUEFEKGdzdF9wcm94eV9wYWRfZ2V0X2ludGVybmFsKEdT
VF9QUk9YWV9QQUQoZ2hvc3RQYWQpKSkpOworICAgIGdzdF9mbG93X2NvbWJpbmVyX2FkZF9wYWQo
c3RyZWFtLT5wYXJlbnQtPnByaXYtPmZsb3dDb21iaW5lci5nZXQoKSwgcHJveHlQYWQuZ2V0KCkp
OworICAgIGdzdF9wYWRfc2V0X2NoYWluX2Z1bmN0aW9uKHByb3h5UGFkLmdldCgpLCBzdGF0aWNf
Y2FzdDxHc3RQYWRDaGFpbkZ1bmN0aW9uPih3ZWJraXRNZWRpYVNyY0NoYWluKSk7CisgICAgZ3N0
X3BhZF9zZXRfcXVlcnlfZnVuY3Rpb24oZ2hvc3RQYWQsIHdlYktpdE1lZGlhU3JjUXVlcnlXaXRo
UGFyZW50KTsKIAotICAgIGdzdF9wYWRfc2V0X2FjdGl2ZShnaG9zdHBhZCwgVFJVRSk7Ci0gICAg
Z3N0X2VsZW1lbnRfYWRkX3BhZChHU1RfRUxFTUVOVChzdHJlYW0tPnBhcmVudCksIGdob3N0cGFk
KTsKKyAgICBnc3RfcGFkX3NldF9hY3RpdmUoZ2hvc3RQYWQsIFRSVUUpOworICAgIGdzdF9lbGVt
ZW50X2FkZF9wYWQoR1NUX0VMRU1FTlQoc3RyZWFtLT5wYXJlbnQpLCBnaG9zdFBhZCk7CiB9CiAK
IHZvaWQgd2ViS2l0TWVkaWFTcmNMaW5rUGFyc2VyKEdzdFBhZCogc291cmNlUGFkLCBHc3RDYXBz
KiBjYXBzLCBTdHJlYW0qIHN0cmVhbSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvV2ViS2l0TWVkaWFTb3VyY2VHU3RyZWFtZXJQcml2
YXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL1dl
YktpdE1lZGlhU291cmNlR1N0cmVhbWVyUHJpdmF0ZS5oCmluZGV4IDk4MGNlYzM1MGU5OWYwYTNk
MDY3MjcyMDU2NDViOThjYzY0Y2NhNzcuLjlkN2VhYjlmNDJkZTdkYjUwZGE4NmI4YWNlYjVmZTUx
Y2Y5N2VjZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dz
dHJlYW1lci9tc2UvV2ViS2l0TWVkaWFTb3VyY2VHU3RyZWFtZXJQcml2YXRlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9XZWJLaXRNZWRpYVNv
dXJjZUdTdHJlYW1lclByaXZhdGUuaApAQCAtMjMsNiArMjMsNyBAQAogI2lmIEVOQUJMRShWSURF
TykgJiYgVVNFKEdTVFJFQU1FUikgJiYgRU5BQkxFKE1FRElBX1NPVVJDRSkKIAogI2luY2x1ZGUg
IkF1ZGlvVHJhY2tQcml2YXRlR1N0cmVhbWVyLmgiCisjaW5jbHVkZSAiR1VuaXF1ZVB0ckdTdHJl
YW1lci5oIgogI2luY2x1ZGUgIlNvdXJjZUJ1ZmZlclByaXZhdGVHU3RyZWFtZXIuaCIKICNpbmNs
dWRlICJWaWRlb1RyYWNrUHJpdmF0ZUdTdHJlYW1lci5oIgogI2luY2x1ZGUgIldlYktpdE1lZGlh
U291cmNlR1N0cmVhbWVyLmgiCkBAIC0xMjEsNiArMTIyLDggQEAgc3RydWN0IF9XZWJLaXRNZWRp
YVNyY1ByaXZhdGUgewogCiAgICAgR1JlZlB0cjxHc3RCdXM+IGJ1czsKICAgICBXZWJDb3JlOjpN
ZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXJNU0UqIG1lZGlhUGxheWVyUHJpdmF0ZTsKKworICAg
IEdVbmlxdWVQdHI8R3N0Rmxvd0NvbWJpbmVyPiBmbG93Q29tYmluZXI7CiB9OwogCiBleHRlcm4g
Z3VpbnQgd2ViS2l0TWVkaWFTcmNTaWduYWxzW0xBU1RfU0lHTkFMXTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>344933</attachid>
            <date>2018-07-13 03:05:39 -0700</date>
            <delta_ts>2018-07-13 03:47:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-187636-20180713120537.patch</filename>
            <type>text/plain</type>
            <size>5596</size>
            <attacher name="Xabier Rodríguez Calvar">calvaris</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMzNzYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjVhYmY3ZjdiZjZmNTUy
N2Y1N2QzYTM2YzU5Zjk2YmU5ZTE2NTcxYS4uMmZmM2UyNDVjZDI0MWJhNzIxODk4NjQ4NjljYzc5
OTI2MzkzMDUxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDE4LTA3LTEzICBYYWJp
ZXIgUm9kcmlndWV6IENhbHZhciAgPGNhbHZhcmlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgW0dT
dHJlYW1lcl1bTVNFXSBBZGQgR3N0Rmxvd0NvbWJpbmVyIHRvIGhhbmRsZSBub24tbGlua2VkIGlu
YWN0aXZlIGJyYW5jaGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xODc2MzYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBXaGVuIHdlIGhhdmUgbW9yZSB0aGFuIG9uZSBzb3VyY2UgYnVmZmVyLCBvbmx5IG9u
ZSB3aWxsIGJlCisgICAgICAgIHJlbmRlcmVkIGFuZCB0aGUgaW5hY3RpdmUgYnJhbmNoIHdpbGwg
cmVwb3J0IGxpbmtpbmcgZXJyb3JzIHRoYXQKKyAgICAgICAgd2UgaGF2ZSB0byBkZWFsIHdpdGgu
CisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvR1VuaXF1ZVB0ckdTdHJl
YW1lci5oOiBBZGRlZCBHc3RGbG93Q29tYmluZXIuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvZ3N0cmVhbWVyL21zZS9XZWJLaXRNZWRpYVNvdXJjZUdTdHJlYW1lci5jcHA6CisgICAgICAg
ICh3ZWJraXRNZWRpYVNyY0NoYWluKTogQ29tYmluZSB0aGUgZmxvdyBpbiB0aGUgZmxvdyBjb21i
aW5lci4KKyAgICAgICAgKHdlYmtpdF9tZWRpYV9zcmNfaW5pdCk6IEluaXRpYWxpemUgdGhlIGZs
b3cgY29tYmluZXIuCisgICAgICAgICh3ZWJLaXRNZWRpYVNyY0xpbmtTdHJlYW1Ub1NyY1BhZCk6
IEFkZCB0aGUgcHJveHlwYWQgdG8gdGhlCisgICAgICAgIGNvbWJpbmVyIGFuZCBzZXQgdGhlIGNo
YWluIGZ1bmN0aW9uLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2Uv
V2ViS2l0TWVkaWFTb3VyY2VHU3RyZWFtZXJQcml2YXRlLmg6CisgICAgICAgIERlY2xhcmUgdGhl
IGZsb3cgY29tYmluZXIuCisKIDIwMTgtMDctMTEgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBw
bGUuY29tPgogCiAgICAgICAgIE1lZGlhRGV2aWNlcyBzaG91bGQgZGVyaXZlIGZyb20gRXZlbnRU
YXJnZXQgaW4gaXRzIElETApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZ3N0cmVhbWVyL0dVbmlxdWVQdHJHU3RyZWFtZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9HVW5pcXVlUHRyR1N0cmVhbWVyLmgKaW5kZXggMjI5
MGFiZjgzMjE3ZTMxNWE2ODQ0OTgzNzk0ODIxMjcwMGRhZjRlZC4uZDM1ODVjZTA5MmJmZjc0YmU0
NGE3NDE2MDMwY2NiZjUwMTcxZmEyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0dVbmlxdWVQdHJHU3RyZWFtZXIuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvR1VuaXF1ZVB0ckdTdHJlYW1lci5o
CkBAIC0yMSw2ICsyMSw3IEBACiAjZGVmaW5lIEdVbmlxdWVQdHJHU3RyZWFtZXJfaAogI2lmIFVT
RShHU1RSRUFNRVIpCiAKKyNpbmNsdWRlIDxnc3QvYmFzZS9nc3RmbG93Y29tYmluZXIuaD4KICNp
bmNsdWRlIDxnc3QvZ3N0c2VnbWVudC5oPgogI2luY2x1ZGUgPGdzdC9nc3RzdHJ1Y3R1cmUuaD4K
ICNpbmNsdWRlIDxnc3QvcGJ1dGlscy9pbnN0YWxsLXBsdWdpbnMuaD4KQEAgLTMxLDYgKzMyLDcg
QEAgbmFtZXNwYWNlIFdURiB7CiBXVEZfREVGSU5FX0dQVFJfREVMRVRFUihHc3RTdHJ1Y3R1cmUs
IGdzdF9zdHJ1Y3R1cmVfZnJlZSkKIFdURl9ERUZJTkVfR1BUUl9ERUxFVEVSKEdzdEluc3RhbGxQ
bHVnaW5zQ29udGV4dCwgZ3N0X2luc3RhbGxfcGx1Z2luc19jb250ZXh0X2ZyZWUpCiBXVEZfREVG
SU5FX0dQVFJfREVMRVRFUihHc3RTZWdtZW50LCBnc3Rfc2VnbWVudF9mcmVlKQorV1RGX0RFRklO
RV9HUFRSX0RFTEVURVIoR3N0Rmxvd0NvbWJpbmVyLCBnc3RfZmxvd19jb21iaW5lcl9mcmVlKQog
CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJl
YW1lci9tc2UvV2ViS2l0TWVkaWFTb3VyY2VHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9XZWJLaXRNZWRpYVNvdXJjZUdTdHJlYW1l
ci5jcHAKaW5kZXggZjYzY2VhMmJjNzk5OWUyNzI3ZjdmZjc4Mzk2MDE2NGU0ODFmZmYzYi4uZWU0
OWU1NzM0MGQwZWVmYzg5OTBkMjI0YzEwNzU4NWE1M2YzZmZjYyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9XZWJLaXRNZWRpYVNvdXJj
ZUdTdHJlYW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0
cmVhbWVyL21zZS9XZWJLaXRNZWRpYVNvdXJjZUdTdHJlYW1lci5jcHAKQEAgLTQ4LDcgKzQ4LDYg
QEAKICNpbmNsdWRlIDxnc3QvdmlkZW8vdmlkZW8uaD4KICNpbmNsdWRlIDx3dGYvQ29uZGl0aW9u
Lmg+CiAjaW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4KLSNpbmNsdWRlIDx3dGYvZ2xpYi9HVW5p
cXVlUHRyLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogCiBHU1RfREVCVUdfQ0FU
RUdPUllfU1RBVElDKHdlYmtpdF9tZWRpYV9zcmNfZGVidWcpOwpAQCAtMjQ5LDYgKzI0OCwxMyBA
QCBzdGF0aWMgdm9pZCB3ZWJraXRfbWVkaWFfc3JjX2NsYXNzX2luaXQoV2ViS2l0TWVkaWFTcmND
bGFzcyoga2xhc3MpCiAgICAgZ190eXBlX2NsYXNzX2FkZF9wcml2YXRlKGtsYXNzLCBzaXplb2Yo
V2ViS2l0TWVkaWFTcmNQcml2YXRlKSk7CiB9CiAKK3N0YXRpYyBHc3RGbG93UmV0dXJuIHdlYmtp
dE1lZGlhU3JjQ2hhaW4oR3N0UGFkKiBwYWQsIEdzdE9iamVjdCogcGFyZW50LCBHc3RCdWZmZXIq
IGJ1ZmZlcikKK3sKKyAgICBHUmVmUHRyPFdlYktpdE1lZGlhU3JjPiBzZWxmID0gYWRvcHRHUmVm
KFdFQktJVF9NRURJQV9TUkMoZ3N0X29iamVjdF9nZXRfcGFyZW50KHBhcmVudCkpKTsKKworICAg
IHJldHVybiBnc3RfZmxvd19jb21iaW5lcl91cGRhdGVfcGFkX2Zsb3coc2VsZi0+cHJpdi0+Zmxv
d0NvbWJpbmVyLmdldCgpLCBwYWQsIGdzdF9wcm94eV9wYWRfY2hhaW5fZGVmYXVsdChwYWQsIEdT
VF9PQkpFQ1Qoc2VsZi5nZXQoKSksIGJ1ZmZlcikpOworfQorCiBzdGF0aWMgdm9pZCB3ZWJraXRf
bWVkaWFfc3JjX2luaXQoV2ViS2l0TWVkaWFTcmMqIHNvdXJjZSkKIHsKICAgICBzb3VyY2UtPnBy
aXYgPSBXRUJLSVRfTUVESUFfU1JDX0dFVF9QUklWQVRFKHNvdXJjZSk7CkBAIC0yNTcsNiArMjYz
LDcgQEAgc3RhdGljIHZvaWQgd2Via2l0X21lZGlhX3NyY19pbml0KFdlYktpdE1lZGlhU3JjKiBz
b3VyY2UpCiAgICAgc291cmNlLT5wcml2LT5hcHBzcmNTZWVrRGF0YUNvdW50ID0gMDsKICAgICBz
b3VyY2UtPnByaXYtPmFwcHNyY05lZWREYXRhQ291bnQgPSAwOwogICAgIHNvdXJjZS0+cHJpdi0+
YXBwc3JjU2Vla0RhdGFOZXh0QWN0aW9uID0gTm90aGluZzsKKyAgICBzb3VyY2UtPnByaXYtPmZs
b3dDb21iaW5lciA9IEdVbmlxdWVQdHI8R3N0Rmxvd0NvbWJpbmVyPihnc3RfZmxvd19jb21iaW5l
cl9uZXcoKSk7CiAKICAgICAvLyBObyBuZWVkIHRvIHJlc2V0IFN0cmVhbS5hcHBzcmNOZWVkRGF0
YUZsYWcgYmVjYXVzZSB0aGVyZSBhcmUgbm8gU3RyZWFtcyBhdCB0aGlzIHBvaW50IHlldC4KIH0K
QEAgLTQ3NCw2ICs0ODEsOSBAQCB2b2lkIHdlYktpdE1lZGlhU3JjTGlua1N0cmVhbVRvU3JjUGFk
KEdzdFBhZCogc291cmNlUGFkLCBTdHJlYW0qIHN0cmVhbSkKICAgICBHVW5pcXVlUHRyPGdjaGFy
PiBwYWROYW1lKGdfc3RyZHVwX3ByaW50Zigic3JjXyV1IiwgcGFkSWQpKTsKICAgICBHc3RQYWQq
IGdob3N0cGFkID0gV2ViQ29yZTo6d2Via2l0R3N0R2hvc3RQYWRGcm9tU3RhdGljVGVtcGxhdGUo
JnNyY1RlbXBsYXRlLCBwYWROYW1lLmdldCgpLCBzb3VyY2VQYWQpOwogCisgICAgYXV0byBwcm94
eXBhZCA9IGFkb3B0R1JlZihHU1RfUEFEKGdzdF9wcm94eV9wYWRfZ2V0X2ludGVybmFsKEdTVF9Q
Uk9YWV9QQUQoZ2hvc3RwYWQpKSkpOworICAgIGdzdF9mbG93X2NvbWJpbmVyX2FkZF9wYWQoc3Ry
ZWFtLT5wYXJlbnQtPnByaXYtPmZsb3dDb21iaW5lci5nZXQoKSwgcHJveHlwYWQuZ2V0KCkpOwor
ICAgIGdzdF9wYWRfc2V0X2NoYWluX2Z1bmN0aW9uKHByb3h5cGFkLmdldCgpLCBzdGF0aWNfY2Fz
dDxHc3RQYWRDaGFpbkZ1bmN0aW9uPih3ZWJraXRNZWRpYVNyY0NoYWluKSk7CiAgICAgZ3N0X3Bh
ZF9zZXRfcXVlcnlfZnVuY3Rpb24oZ2hvc3RwYWQsIHdlYktpdE1lZGlhU3JjUXVlcnlXaXRoUGFy
ZW50KTsKIAogICAgIGdzdF9wYWRfc2V0X2FjdGl2ZShnaG9zdHBhZCwgVFJVRSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL1dlYktp
dE1lZGlhU291cmNlR1N0cmVhbWVyUHJpdmF0ZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9XZWJLaXRNZWRpYVNvdXJjZUdTdHJlYW1lclByaXZhdGUu
aAppbmRleCA5ODBjZWMzNTBlOTlmMGEzZDA2NzI3MjA1NjQ1Yjk4Y2M2NGNjYTc3Li45ZDdlYWI5
ZjQyZGU3ZGI1MGRhODZiOGFjZWI1ZmU1MWNmOTdlY2RmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL1dlYktpdE1lZGlhU291cmNlR1N0
cmVhbWVyUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dz
dHJlYW1lci9tc2UvV2ViS2l0TWVkaWFTb3VyY2VHU3RyZWFtZXJQcml2YXRlLmgKQEAgLTIzLDYg
KzIzLDcgQEAKICNpZiBFTkFCTEUoVklERU8pICYmIFVTRShHU1RSRUFNRVIpICYmIEVOQUJMRShN
RURJQV9TT1VSQ0UpCiAKICNpbmNsdWRlICJBdWRpb1RyYWNrUHJpdmF0ZUdTdHJlYW1lci5oIgor
I2luY2x1ZGUgIkdVbmlxdWVQdHJHU3RyZWFtZXIuaCIKICNpbmNsdWRlICJTb3VyY2VCdWZmZXJQ
cml2YXRlR1N0cmVhbWVyLmgiCiAjaW5jbHVkZSAiVmlkZW9UcmFja1ByaXZhdGVHU3RyZWFtZXIu
aCIKICNpbmNsdWRlICJXZWJLaXRNZWRpYVNvdXJjZUdTdHJlYW1lci5oIgpAQCAtMTIxLDYgKzEy
Miw4IEBAIHN0cnVjdCBfV2ViS2l0TWVkaWFTcmNQcml2YXRlIHsKIAogICAgIEdSZWZQdHI8R3N0
QnVzPiBidXM7CiAgICAgV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyTVNFKiBt
ZWRpYVBsYXllclByaXZhdGU7CisKKyAgICBHVW5pcXVlUHRyPEdzdEZsb3dDb21iaW5lcj4gZmxv
d0NvbWJpbmVyOwogfTsKIAogZXh0ZXJuIGd1aW50IHdlYktpdE1lZGlhU3JjU2lnbmFsc1tMQVNU
X1NJR05BTF07Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>