<?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>221224</bug_id>
          
          <creation_ts>2021-02-01 13:40:35 -0800</creation_ts>
          <short_desc>[WPE][GTK] BubblewrapLauncher should create flatpak-info keyfile only once</short_desc>
          <delta_ts>2021-02-15 09:07:56 -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 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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Michael Catanzaro">mcatanzaro</reporter>
          <assigned_to name="Michael Catanzaro">mcatanzaro</assigned_to>
          <cc>aperez</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>mcatanzaro</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1724395</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-02-01 13:40:35 -0800</bug_when>
    <thetext>BubblewrapLauncher should create its flatpak-info keyfile only once, because its contents will never change. Makes more sense to cache this tiny string in memory than to recompute it every time a subprocess is launched.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1724401</commentid>
    <comment_count>1</comment_count>
      <attachid>418918</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-02-01 13:54:13 -0800</bug_when>
    <thetext>Created attachment 418918
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725759</commentid>
    <comment_count>2</comment_count>
      <attachid>418918</attachid>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2021-02-04 12:57:38 -0800</bug_when>
    <thetext>Comment on attachment 418918
Patch

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

&gt; Source/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp:697
&gt; +    static GUniquePtr&lt;char&gt; data;

Shouldn&apos;t this be better be NeverDestroyed&lt;CString&gt; instead?
Or even MainThreadNeverDestroyed&lt;CString&gt; ;-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725777</commentid>
    <comment_count>3</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-02-04 13:42:03 -0800</bug_when>
    <thetext>NeverDestroyed is required for static objects in cross-platform code to ensure we don&apos;t run destructors, because the order the destructors execute is undefined on Windows. Historically, I don&apos;t think I&apos;ve been using it in our platform-specific code since this problem just doesn&apos;t exist on Linux. I guess that&apos;s maybe not a great idea, though, since it could cause trouble if the code is eventually ever ported to Windows. (On the other hand, we can be fairly confident BubblewrapLauncher.cpp cannot possibly ever work on Windows, so shrug.)

Anyway, I&apos;ll try changing it to NeverDestroyed&lt;CString&gt;.

MainThreadNeverDestroyed is only needed if we have to assert that the object is never accessed on another thread, so normal NeverDestroyed is fine here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725806</commentid>
    <comment_count>4</comment_count>
      <attachid>418918</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-02-04 14:30:52 -0800</bug_when>
    <thetext>Comment on attachment 418918
Patch

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

&gt;&gt; Source/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp:697
&gt;&gt; +    static GUniquePtr&lt;char&gt; data;
&gt; 
&gt; Shouldn&apos;t this be better be NeverDestroyed&lt;CString&gt; instead?
&gt; Or even MainThreadNeverDestroyed&lt;CString&gt; ;-)

Hm, CString doesn&apos;t work well here. I need the GUniquePtr&lt;char&gt; to hold ownership of the result of g_key_file_to_data(). Creating a CString from it would require an extra copy, and a second variable, and wouldn&apos;t accomplish anything.

So the good options here are either:

static NeverDestroyed&lt;char*&gt; data;

Or:

static GUniquePtr&lt;char&gt; data; (what I have already)

Or, perhaps overkill:

static NeverDestroyed&lt;GUniquePtr&lt;char&gt;&gt; data;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1726831</commentid>
    <comment_count>5</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-02-08 15:08:16 -0800</bug_when>
    <thetext>Ping Adrian. I have a merge conflict now between this and bug #219010.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728253</commentid>
    <comment_count>6</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2021-02-11 13:04:31 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #4)
&gt; Comment on attachment 418918 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=418918&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp:697
&gt; &gt;&gt; +    static GUniquePtr&lt;char&gt; data;
&gt; &gt; 
&gt; &gt; Shouldn&apos;t this be better be NeverDestroyed&lt;CString&gt; instead?
&gt; &gt; Or even MainThreadNeverDestroyed&lt;CString&gt; ;-)
&gt; 
&gt; Hm, CString doesn&apos;t work well here. I need the GUniquePtr&lt;char&gt; to hold
&gt; ownership of the result of g_key_file_to_data(). Creating a CString from it
&gt; would require an extra copy, and a second variable, and wouldn&apos;t accomplish
&gt; anything.
&gt; 
&gt; So the good options here are either:
&gt; 
&gt; static NeverDestroyed&lt;char*&gt; data;
&gt; 
&gt; Or:
&gt; 
&gt; static GUniquePtr&lt;char&gt; data; (what I have already)
&gt; 
&gt; Or, perhaps overkill:
&gt; 
&gt; static NeverDestroyed&lt;GUniquePtr&lt;char&gt;&gt; data;

I would go with this option, there are similar uses around the codebase
e.g. NeverDestroyed&lt;GRefPtr&lt;…&gt;&gt; and NeverDestroyed&lt;Ref&lt;…&gt; :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1728350</commentid>
    <comment_count>7</comment_count>
      <attachid>420064</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-02-11 16:32:44 -0800</bug_when>
    <thetext>Created attachment 420064
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729161</commentid>
    <comment_count>8</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-02-15 07:58:47 -0800</bug_when>
    <thetext>Ping Adrian :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729178</commentid>
    <comment_count>9</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-02-15 09:07:53 -0800</bug_when>
    <thetext>Committed r272854: &lt;https://commits.webkit.org/r272854&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 420064.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>418918</attachid>
            <date>2021-02-01 13:54:13 -0800</date>
            <delta_ts>2021-02-11 16:32:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221224-20210201155412.patch</filename>
            <type>text/plain</type>
            <size>3395</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyMTQyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDJjYWQ3OGYxZTZlZjQ4OTlk
NmZlMzA0N2U5MzkzMmRjZWI5M2IxZTIuLjBiZTViOGNmZjAxNjQ1NjlkMjgzNGNkZmVmMGQ3OWQw
MjM1Mzk0NDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjEtMDItMDEgIE1pY2hhZWwg
Q2F0YW56YXJvICA8bWNhdGFuemFyb0Bnbm9tZS5vcmc+CisKKyAgICAgICAgW1dQRV1bR1RLXSBC
dWJibGV3cmFwTGF1bmNoZXIgc2hvdWxkIGNyZWF0ZSBmbGF0cGFrLWluZm8ga2V5ZmlsZSBvbmx5
IG9uY2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIy
MTIyNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEJ1
YmJsZXdyYXBMYXVuY2hlciBzaG91bGQgY3JlYXRlIGl0cyBmbGF0cGFrLWluZm8ga2V5ZmlsZSBv
bmx5IG9uY2UsIGJlY2F1c2UgaXRzIGNvbnRlbnRzCisgICAgICAgIHdpbGwgbmV2ZXIgY2hhbmdl
LiBNYWtlcyBtb3JlIHNlbnNlIHRvIGNhY2hlIHRoaXMgdGlueSBzdHJpbmcgaW4gbWVtb3J5IHRo
YW4gdG8gcmVjb21wdXRlIGl0CisgICAgICAgIGV2ZXJ5IHRpbWUgYSBzdWJwcm9jZXNzIGlzIGxh
dW5jaGVkLgorCisgICAgICAgIFdoZW4gd29ya2luZyBvbiB0aGlzLCBJIG5vdGljZWQgYSBxdWly
ayBpbiB0aGUgZG9jdW1lbnRhdGlvbiBvZiBnX2tleV9maWxlX3RvX2RhdGE6IGFsdGhvdWdoCisg
ICAgICAgIHRoZSBmdW5jdGlvbiBoYXMgYSBHRXJyb3IgcGFyYW1ldGVyLCBpdCBpcyBsZWdhY3kg
YW5kIHRoZSBmdW5jdGlvbiBpcyBhY3R1YWxseSBndWFyYW50ZWVkIHRvCisgICAgICAgIHN1Y2Nl
ZWQuIFNvIGlja3kgdGhvdWdoIGl0IHNlZW1zLCBJJ3ZlIHJlbW92ZWQgdGhlIGVycm9yIGNoZWNr
aW5nIGZvciB0aGF0LCBhcyByZWNvbW1lbmRlZAorICAgICAgICBieSBpdHMgZG9jdW1lbnRhdGlv
bi4KKworICAgICAgICAqIFVJUHJvY2Vzcy9MYXVuY2hlci9nbGliL0J1YmJsZXdyYXBMYXVuY2hl
ci5jcHA6CisgICAgICAgIChXZWJLaXQ6OmNyZWF0ZUZsYXRwYWtJbmZvKToKKwogMjAyMS0wMi0w
MSAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAg
W1NPVVBdIEFkZCBzdXBwb3J0IGZvciBkYXRhIFVSTHMgaW4gdGhlIG5ldHdvcmsgcHJvY2Vzcwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTGF1bmNoZXIvZ2xpYi9CdWJibGV3
cmFwTGF1bmNoZXIuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTGF1bmNoZXIvZ2xpYi9C
dWJibGV3cmFwTGF1bmNoZXIuY3BwCmluZGV4IDY5YjRkYzZhNmEwYmNkOTRiYWY2ZmE1ZDNkMmIy
MzEwYzQwY2JkZDAuLjA1NzNhOTJiNWMyNGY4MjNhY2QwYTIxOWMzZjY4MjUzMzQ5ZmYxYjYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0xhdW5jaGVyL2dsaWIvQnViYmxld3Jh
cExhdW5jaGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9MYXVuY2hlci9nbGli
L0J1YmJsZXdyYXBMYXVuY2hlci5jcHAKQEAgLTY5NCwyMyArNjk0LDIxIEBAIHN0YXRpYyBpbnQg
c2V0dXBTZWNjb21wKCkKIAogc3RhdGljIGludCBjcmVhdGVGbGF0cGFrSW5mbygpCiB7Ci0gICAg
R1VuaXF1ZVB0cjxHS2V5RmlsZT4ga2V5RmlsZShnX2tleV9maWxlX25ldygpKTsKLQotICAgIC8v
IHhkZy1kZXNrdG9wLXBvcnRhbCByZWxhdGVzIHlvdXIgbmFtZSB0byBjZXJ0YWluIHBlcm1pc3Np
b25zIHNvIHdlIHdhbnQKLSAgICAvLyB0aGVtIHRvIGJlIGFwcGxpY2F0aW9uIHVuaXF1ZSB3aGlj
aCBpcyBiZXN0IGRvbmUgdmlhIEdBcHBsaWNhdGlvbi4KLSAgICBHQXBwbGljYXRpb24qIGFwcCA9
IGdfYXBwbGljYXRpb25fZ2V0X2RlZmF1bHQoKTsKLSAgICBpZiAoIWFwcCkgewotICAgICAgICBn
X3dhcm5pbmcoIkdBcHBsaWNhdGlvbiBpcyByZXF1aXJlZCBmb3IgeGRnLWRlc2t0b3AtcG9ydGFs
IGFjY2VzcyBpbiB0aGUgV2ViS2l0IHNhbmRib3guIEFjdGlvbnMgdGhhdCByZXF1aXJlIHhkZy1k
ZXNrdG9wLXBvcnRhbCB3aWxsIGJlIGJyb2tlbi4iKTsKLSAgICAgICAgcmV0dXJuIC0xOwotICAg
IH0KLSAgICBnX2tleV9maWxlX3NldF9zdHJpbmcoa2V5RmlsZS5nZXQoKSwgIkFwcGxpY2F0aW9u
IiwgIm5hbWUiLCBnX2FwcGxpY2F0aW9uX2dldF9hcHBsaWNhdGlvbl9pZChhcHApKTsKKyAgICBz
dGF0aWMgR1VuaXF1ZVB0cjxjaGFyPiBkYXRhOworICAgIHN0YXRpYyBzaXplX3Qgc2l6ZTsKKwor
ICAgIGlmICghZGF0YSkgeworICAgICAgICAvLyB4ZGctZGVza3RvcC1wb3J0YWwgcmVsYXRlcyB5
b3VyIG5hbWUgdG8gY2VydGFpbiBwZXJtaXNzaW9ucyBzbyB3ZSB3YW50CisgICAgICAgIC8vIHRo
ZW0gdG8gYmUgYXBwbGljYXRpb24gdW5pcXVlIHdoaWNoIGlzIGJlc3QgZG9uZSB2aWEgR0FwcGxp
Y2F0aW9uLgorICAgICAgICBHQXBwbGljYXRpb24qIGFwcCA9IGdfYXBwbGljYXRpb25fZ2V0X2Rl
ZmF1bHQoKTsKKyAgICAgICAgaWYgKCFhcHApIHsKKyAgICAgICAgICAgIGdfd2FybmluZygiR0Fw
cGxpY2F0aW9uIGlzIHJlcXVpcmVkIGZvciB4ZGctZGVza3RvcC1wb3J0YWwgYWNjZXNzIGluIHRo
ZSBXZWJLaXQgc2FuZGJveC4gQWN0aW9ucyB0aGF0IHJlcXVpcmUgeGRnLWRlc2t0b3AtcG9ydGFs
IHdpbGwgYmUgYnJva2VuLiIpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CiAK
LSAgICBzaXplX3Qgc2l6ZTsKLSAgICBHVW5pcXVlT3V0UHRyPEdFcnJvcj4gZXJyb3I7Ci0gICAg
R1VuaXF1ZVB0cjxjaGFyPiBkYXRhKGdfa2V5X2ZpbGVfdG9fZGF0YShrZXlGaWxlLmdldCgpLCAm
c2l6ZSwgJmVycm9yLm91dFB0cigpKSk7Ci0gICAgaWYgKGVycm9yLmdldCgpKSB7Ci0gICAgICAg
IGdfd2FybmluZygiJXMiLCBlcnJvci0+bWVzc2FnZSk7Ci0gICAgICAgIHJldHVybiAtMTsKKyAg
ICAgICAgR1VuaXF1ZVB0cjxHS2V5RmlsZT4ga2V5RmlsZShnX2tleV9maWxlX25ldygpKTsKKyAg
ICAgICAgZ19rZXlfZmlsZV9zZXRfc3RyaW5nKGtleUZpbGUuZ2V0KCksICJBcHBsaWNhdGlvbiIs
ICJuYW1lIiwgZ19hcHBsaWNhdGlvbl9nZXRfYXBwbGljYXRpb25faWQoYXBwKSk7CisgICAgICAg
IGRhdGEucmVzZXQoZ19rZXlfZmlsZV90b19kYXRhKGtleUZpbGUuZ2V0KCksICZzaXplLCBudWxs
cHRyKSk7CiAgICAgfQogCiAgICAgcmV0dXJuIGNyZWF0ZVNlYWxlZE1lbUZkV2l0aERhdGEoImZs
YXRwYWstaW5mbyIsIGRhdGEuZ2V0KCksIHNpemUpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420064</attachid>
            <date>2021-02-11 16:32:44 -0800</date>
            <delta_ts>2021-02-15 09:07:54 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221224-20210211183243.patch</filename>
            <type>text/plain</type>
            <size>3619</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyNjMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDM2YWJmOGI2NzNkZTFiNjk4
MTM5YTIwYWZiMTQ4ZDg1ZjIwOWEzYzguLjU3NDk2ZDlkNWIyNGVkMjQ3OTFiYzcxNjFhZWMwNmM0
YzQ3MzAwODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjEtMDItMTEgIE1pY2hhZWwg
Q2F0YW56YXJvICA8bWNhdGFuemFyb0Bnbm9tZS5vcmc+CisKKyAgICAgICAgW1dQRV1bR1RLXSBC
dWJibGV3cmFwTGF1bmNoZXIgc2hvdWxkIGNyZWF0ZSBmbGF0cGFrLWluZm8ga2V5ZmlsZSBvbmx5
IG9uY2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIy
MTIyNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEJ1
YmJsZXdyYXBMYXVuY2hlciBzaG91bGQgY3JlYXRlIGl0cyBmbGF0cGFrLWluZm8ga2V5ZmlsZSBv
bmx5IG9uY2UsIGJlY2F1c2UgaXRzIGNvbnRlbnRzCisgICAgICAgIHdpbGwgbmV2ZXIgY2hhbmdl
LiBNYWtlcyBtb3JlIHNlbnNlIHRvIGNhY2hlIHRoaXMgdGlueSBzdHJpbmcgaW4gbWVtb3J5IHRo
YW4gdG8gcmVjb21wdXRlIGl0CisgICAgICAgIGV2ZXJ5IHRpbWUgYSBzdWJwcm9jZXNzIGlzIGxh
dW5jaGVkLgorCisgICAgICAgIFdoZW4gd29ya2luZyBvbiB0aGlzLCBJIG5vdGljZWQgYSBxdWly
ayBpbiB0aGUgZG9jdW1lbnRhdGlvbiBvZiBnX2tleV9maWxlX3RvX2RhdGE6IGFsdGhvdWdoCisg
ICAgICAgIHRoZSBmdW5jdGlvbiBoYXMgYSBHRXJyb3IgcGFyYW1ldGVyLCBpdCBpcyBsZWdhY3kg
YW5kIHRoZSBmdW5jdGlvbiBpcyBhY3R1YWxseSBndWFyYW50ZWVkIHRvCisgICAgICAgIHN1Y2Nl
ZWQuIFNvIGlja3kgdGhvdWdoIGl0IHNlZW1zLCBJJ3ZlIHJlbW92ZWQgdGhlIGVycm9yIGNoZWNr
aW5nIGZvciB0aGF0LCBhcyByZWNvbW1lbmRlZAorICAgICAgICBieSBpdHMgZG9jdW1lbnRhdGlv
bi4KKworICAgICAgICAqIFVJUHJvY2Vzcy9MYXVuY2hlci9nbGliL0J1YmJsZXdyYXBMYXVuY2hl
ci5jcHA6CisgICAgICAgIChXZWJLaXQ6OmNyZWF0ZUZsYXRwYWtJbmZvKToKKwogMjAyMS0wMi0w
OSAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdl
ZCwgYnVpbGQgZml4IGFmdGVyIHIyNzI2MzAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0xhdW5jaGVyL2dsaWIvQnViYmxld3JhcExhdW5jaGVyLmNwcCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0xhdW5jaGVyL2dsaWIvQnViYmxld3JhcExhdW5jaGVyLmNwcAppbmRleCA2
OWI0ZGM2YTZhMGJjZDk0YmFmNmZhNWQzZDJiMjMxMGM0MGNiZGQwLi4zMDE4YjVhMWJkYjEzZTBm
MzNiNDhlOTQzOGEwNWI0ZmYxNTg5ZTYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9MYXVuY2hlci9nbGliL0J1YmJsZXdyYXBMYXVuY2hlci5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvTGF1bmNoZXIvZ2xpYi9CdWJibGV3cmFwTGF1bmNoZXIuY3BwCkBAIC02
OTQsMjYgKzY5NCwyNCBAQCBzdGF0aWMgaW50IHNldHVwU2VjY29tcCgpCiAKIHN0YXRpYyBpbnQg
Y3JlYXRlRmxhdHBha0luZm8oKQogewotICAgIEdVbmlxdWVQdHI8R0tleUZpbGU+IGtleUZpbGUo
Z19rZXlfZmlsZV9uZXcoKSk7Ci0KLSAgICAvLyB4ZGctZGVza3RvcC1wb3J0YWwgcmVsYXRlcyB5
b3VyIG5hbWUgdG8gY2VydGFpbiBwZXJtaXNzaW9ucyBzbyB3ZSB3YW50Ci0gICAgLy8gdGhlbSB0
byBiZSBhcHBsaWNhdGlvbiB1bmlxdWUgd2hpY2ggaXMgYmVzdCBkb25lIHZpYSBHQXBwbGljYXRp
b24uCi0gICAgR0FwcGxpY2F0aW9uKiBhcHAgPSBnX2FwcGxpY2F0aW9uX2dldF9kZWZhdWx0KCk7
Ci0gICAgaWYgKCFhcHApIHsKLSAgICAgICAgZ193YXJuaW5nKCJHQXBwbGljYXRpb24gaXMgcmVx
dWlyZWQgZm9yIHhkZy1kZXNrdG9wLXBvcnRhbCBhY2Nlc3MgaW4gdGhlIFdlYktpdCBzYW5kYm94
LiBBY3Rpb25zIHRoYXQgcmVxdWlyZSB4ZGctZGVza3RvcC1wb3J0YWwgd2lsbCBiZSBicm9rZW4u
Iik7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9Ci0gICAgZ19rZXlfZmlsZV9zZXRfc3RyaW5n
KGtleUZpbGUuZ2V0KCksICJBcHBsaWNhdGlvbiIsICJuYW1lIiwgZ19hcHBsaWNhdGlvbl9nZXRf
YXBwbGljYXRpb25faWQoYXBwKSk7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEdVbmlxdWVQ
dHI8Y2hhcj4+IGRhdGE7CisgICAgc3RhdGljIHNpemVfdCBzaXplOworCisgICAgaWYgKCFkYXRh
LmdldCgpKSB7CisgICAgICAgIC8vIHhkZy1kZXNrdG9wLXBvcnRhbCByZWxhdGVzIHlvdXIgbmFt
ZSB0byBjZXJ0YWluIHBlcm1pc3Npb25zIHNvIHdlIHdhbnQKKyAgICAgICAgLy8gdGhlbSB0byBi
ZSBhcHBsaWNhdGlvbiB1bmlxdWUgd2hpY2ggaXMgYmVzdCBkb25lIHZpYSBHQXBwbGljYXRpb24u
CisgICAgICAgIEdBcHBsaWNhdGlvbiogYXBwID0gZ19hcHBsaWNhdGlvbl9nZXRfZGVmYXVsdCgp
OworICAgICAgICBpZiAoIWFwcCkgeworICAgICAgICAgICAgZ193YXJuaW5nKCJHQXBwbGljYXRp
b24gaXMgcmVxdWlyZWQgZm9yIHhkZy1kZXNrdG9wLXBvcnRhbCBhY2Nlc3MgaW4gdGhlIFdlYktp
dCBzYW5kYm94LiBBY3Rpb25zIHRoYXQgcmVxdWlyZSB4ZGctZGVza3RvcC1wb3J0YWwgd2lsbCBi
ZSBicm9rZW4uIik7CisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIH0KIAotICAgIHNp
emVfdCBzaXplOwotICAgIEdVbmlxdWVPdXRQdHI8R0Vycm9yPiBlcnJvcjsKLSAgICBHVW5pcXVl
UHRyPGNoYXI+IGRhdGEoZ19rZXlfZmlsZV90b19kYXRhKGtleUZpbGUuZ2V0KCksICZzaXplLCAm
ZXJyb3Iub3V0UHRyKCkpKTsKLSAgICBpZiAoZXJyb3IuZ2V0KCkpIHsKLSAgICAgICAgZ193YXJu
aW5nKCIlcyIsIGVycm9yLT5tZXNzYWdlKTsKLSAgICAgICAgcmV0dXJuIC0xOworICAgICAgICBH
VW5pcXVlUHRyPEdLZXlGaWxlPiBrZXlGaWxlKGdfa2V5X2ZpbGVfbmV3KCkpOworICAgICAgICBn
X2tleV9maWxlX3NldF9zdHJpbmcoa2V5RmlsZS5nZXQoKSwgIkFwcGxpY2F0aW9uIiwgIm5hbWUi
LCBnX2FwcGxpY2F0aW9uX2dldF9hcHBsaWNhdGlvbl9pZChhcHApKTsKKyAgICAgICAgZGF0YS0+
cmVzZXQoZ19rZXlfZmlsZV90b19kYXRhKGtleUZpbGUuZ2V0KCksICZzaXplLCBudWxscHRyKSk7
CiAgICAgfQogCi0gICAgcmV0dXJuIGNyZWF0ZVNlYWxlZE1lbUZkV2l0aERhdGEoImZsYXRwYWst
aW5mbyIsIGRhdGEuZ2V0KCksIHNpemUpOworICAgIHJldHVybiBjcmVhdGVTZWFsZWRNZW1GZFdp
dGhEYXRhKCJmbGF0cGFrLWluZm8iLCBkYXRhLT5nZXQoKSwgc2l6ZSk7CiB9CiAKIEdSZWZQdHI8
R1N1YnByb2Nlc3M+IGJ1YmJsZXdyYXBTcGF3bihHU3VicHJvY2Vzc0xhdW5jaGVyKiBsYXVuY2hl
ciwgY29uc3QgUHJvY2Vzc0xhdW5jaGVyOjpMYXVuY2hPcHRpb25zJiBsYXVuY2hPcHRpb25zLCBj
aGFyKiogYXJndiwgR0Vycm9yICoqZXJyb3IpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>