<?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>170825</bug_id>
          
          <creation_ts>2017-04-13 13:42:16 -0700</creation_ts>
          <short_desc>WebAssembly: limit slow memories</short_desc>
          <delta_ts>2017-04-19 12:38:57 -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>JavaScriptCore</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>170628</dependson>
          <blocked>159775</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="JF Bastien">jfbastien</reporter>
          <assigned_to name="JF Bastien">jfbastien</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>jfbastien</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1297120</commentid>
    <comment_count>0</comment_count>
    <who name="JF Bastien">jfbastien</who>
    <bug_when>2017-04-13 13:42:16 -0700</bug_when>
    <thetext>Bug #170628 limits the number of fast memories, partly because ASLR.

The code then falls back to slow memories. It first tries to virtually allocated any declared maximum (and in there, physically the initial), and if that fails it tries to physically allocate the initial without any extra.

This can still be used to cause a bunch of virtual allocation. We should probably impose a soft limit on slow memories as well. I think that limit should be against whole-process sum of virtually allocated slow memory (don&apos;t forget to include calls to grow!).

I&apos;m not sure what the number should be, but I&apos;ll guess something around what the maximum for fast memory virtual allocation is.

Anything exceeding that limit would cause allocation/grow to fail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1298640</commentid>
    <comment_count>1</comment_count>
      <attachid>307473</attachid>
    <who name="JF Bastien">jfbastien</who>
    <bug_when>2017-04-19 01:35:15 -0700</bug_when>
    <thetext>Created attachment 307473
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1298704</commentid>
    <comment_count>2</comment_count>
      <attachid>307473</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2017-04-19 09:49:49 -0700</bug_when>
    <thetext>Comment on attachment 307473
patch

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

r=me. I&apos;d like to at least see a test we run on Mac, and if it&apos;s flaky, we can consider what to do next. But let&apos;s land it before assuming it&apos;ll be flaky.

&gt; Source/JavaScriptCore/ChangeLog:21
&gt; +        I haven&apos;t added a test because the bots will likely be unhappy /

What about at least making it run on Mac?

&gt; Source/JavaScriptCore/wasm/WasmMemory.cpp:203
&gt; +    size_t maximum = fastMemoryAllocationSoftLimit * Memory::fastMappedBytes();

I would really add a new variable for this, even if initially it&apos;s the same value. That way we can change them independent of one another.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1298721</commentid>
    <comment_count>3</comment_count>
      <attachid>307488</attachid>
    <who name="JF Bastien">jfbastien</who>
    <bug_when>2017-04-19 10:31:31 -0700</bug_when>
    <thetext>Created attachment 307488
patch

Add test and factor out function as suggested.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1298723</commentid>
    <comment_count>4</comment_count>
      <attachid>307488</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-04-19 10:33:30 -0700</bug_when>
    <thetext>Comment on attachment 307488
patch

Rejecting attachment 307488 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-03&apos;, &apos;apply-attachment&apos;, &apos;--no-update&apos;, &apos;--non-interactive&apos;, 307488, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Last 500 characters of output:
 succeeded at 1 with fuzz 3.
patching file JSTests/wasm.yaml
Hunk #1 FAILED at 1.
Hunk #2 succeeded at 31 (offset 2 lines).
1 out of 2 hunks FAILED -- saving rejects to file JSTests/wasm.yaml.rej
patching file JSTests/wasm/stress/oom.js
patching file Source/JavaScriptCore/ChangeLog
Hunk #1 succeeded at 1 with fuzz 3.
patching file Source/JavaScriptCore/wasm/WasmMemory.cpp

Failed to run &quot;[u&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Full output: http://webkit-queues.webkit.org/results/3564516</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1298726</commentid>
    <comment_count>5</comment_count>
      <attachid>307489</attachid>
    <who name="JF Bastien">jfbastien</who>
    <bug_when>2017-04-19 10:39:01 -0700</bug_when>
    <thetext>Created attachment 307489
patch

Rebase. I self-merge-conflicted.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1298758</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-04-19 11:45:41 -0700</bug_when>
    <thetext>The commit-queue encountered the following flaky tests while processing attachment 307489:

The commit-queue is continuing to process your patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1298761</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-04-19 11:45:49 -0700</bug_when>
    <thetext>The commit-queue encountered the following flaky tests while processing attachment 307489:

media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-buttons-styles.html bug 168317 (author: graouts@apple.com)
The commit-queue is continuing to process your patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1298779</commentid>
    <comment_count>8</comment_count>
      <attachid>307489</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-04-19 12:38:55 -0700</bug_when>
    <thetext>Comment on attachment 307489
patch

Clearing flags on attachment: 307489

Committed r215525: &lt;http://trac.webkit.org/changeset/215525&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1298780</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-04-19 12:38:57 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>307473</attachid>
            <date>2017-04-19 01:35:15 -0700</date>
            <delta_ts>2017-04-19 10:31:31 -0700</delta_ts>
            <desc>patch</desc>
            <filename>0001-limit-slow-mem.patch</filename>
            <type>text/plain</type>
            <size>4000</size>
            <attacher name="JF Bastien">jfbastien</attacher>
            
              <data encoding="base64">RnJvbSBkNjM2NGFkNmU0OTMwYjAwMzA4Mjg5YTAyY2JlYTg0MmQxNmE2YzNkIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBKRiBCYXN0aWVuIDxqZmJhc3RpZW5AYXBwbGUuY29tPgpEYXRl
OiBXZWQsIDE5IEFwciAyMDE3IDAxOjM0OjQyIC0wNzAwClN1YmplY3Q6IFtQQVRDSF0gbGltaXQt
c2xvdy1tZW0KCi0tLQogU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyAgICAgICAgICAg
fCAyNiArKysrKysrKysrKysrKysrKysrKysrKysrKwogU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vV2FzbU1lbW9yeS5jcHAgfCAyMCArKysrKysrKysrKysrKysrKysrKwogMiBmaWxlcyBjaGFu
Z2VkLCA0NiBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0NoYW5nZUxvZyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKaW5kZXggZjQ2YWNm
My4uM2IwYWFjNiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIw
MTctMDQtMTkgIEpGIEJhc3RpZW4gIDxqZmJhc3RpZW5AYXBwbGUuY29tPgorCisgICAgICAgIFdl
YkFzc2VtYmx5OiBsaW1pdCBzbG93IG1lbW9yaWVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzA4MjUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBXZSBsaW1pdHMgdGhlIG51bWJlciBvZiBmYXN0IG1lbW9y
aWVzLCBwYXJ0bHkgYmVjYXVzZSBBU0xSLiBUaGUKKyAgICAgICAgY29kZSB0aGVuIGZhbGxzIGJh
Y2sgdG8gc2xvdyBtZW1vcmllcy4gSXQgZmlyc3QgdHJpZXMgdG8gdmlydHVhbGx5CisgICAgICAg
IGFsbG9jYXRlZCBhbnkgZGVjbGFyZWQgbWF4aW11bSAoYW5kIGluIHRoZXJlLCBwaHlzaWNhbGx5
IHRoZQorICAgICAgICBpbml0aWFsKSwgYW5kIGlmIHRoYXQgZmFpbHMgaXQgdHJpZXMgdG8gcGh5
c2ljYWxseSBhbGxvY2F0ZSB0aGUKKyAgICAgICAgaW5pdGlhbCB3aXRob3V0IGFueSBleHRyYS4K
KworICAgICAgICBUaGlzIGNhbiBzdGlsbCBiZSB1c2VkIHRvIGNhdXNlIGEgYnVuY2ggb2Ygdmly
dHVhbAorICAgICAgICBhbGxvY2F0aW9uLiBUaGlzIHBhdGNoIGltcG9zZXMgc29mdCBsaW1pdCBv
biBzbG93IG1lbW9yaWVzIGFzCisgICAgICAgIHdlbGwuIFRoZSB0b3RhbCB2aXJ0dWFsIG1heGlt
dW0gZm9yIHNsb3cgbWVtb3JpZXMgaXMgc2V0IGF0IHRoZQorICAgICAgICBzYW1lICh0aGVvcmV0
aWNhbCkgdmFsdWUgYXMgdGhhdCBmb3IgZmFzdCBtZW1vcmllcy4KKworICAgICAgICBBbnl0aGlu
ZyBleGNlZWRpbmcgdGhhdCBsaW1pdCBjYXVzZXMgYWxsb2NhdGlvbi9ncm93IHRvIGZhaWwuCisK
KyAgICAgICAgSSBoYXZlbid0IGFkZGVkIGEgdGVzdCBiZWNhdXNlIHRoZSBib3RzIHdpbGwgbGlr
ZWx5IGJlIHVuaGFwcHkgLworICAgICAgICBmbGFreSBpZiB0aGUgdGVzdCBpbnN0ZWFkIGdldHMg
T09NLWtpbGxlZC4gTG9jYWwgdGVzdGluZyBzaG93cworICAgICAgICB0aGF0IHRoaXMgd29ya3Mu
CisKKyAgICAgICAgKiB3YXNtL1dhc21NZW1vcnkuY3BwOgorCiAyMDE3LTA0LTE4ICBNYXJrIExh
bSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICByMjExNjcwIGJyb2tlIGRvdWJsZSB0
byBpbnQgY29udmVyc2lvbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L1dhc21NZW1vcnkuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbU1lbW9yeS5j
cHAKaW5kZXggOWU4ZDZlMC4uMTRmYmRlMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vV2FzbU1lbW9yeS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
V2FzbU1lbW9yeS5jcHAKQEAgLTkzLDYgKzkzLDcgQEAgc3RkOjphdG9taWM8dm9pZCo+IGZhc3RN
ZW1vcnlDYWNoZVtmYXN0TWVtb3J5Q2FjaGVIYXJkTGltaXRdID0geyBBVE9NSUNfVkFSX0lOSVQK
IHN0ZDo6YXRvbWljPHZvaWQqPiBjdXJyZW50bHlBY3RpdmVGYXN0TWVtb3JpZXNbZmFzdE1lbW9y
eUFsbG9jYXRpb25Tb2Z0TGltaXRdID0geyBBVE9NSUNfVkFSX0lOSVQobnVsbHB0cikgfTsKIHN0
ZDo6YXRvbWljPHNpemVfdD4gY3VycmVudGx5QWxsb2NhdGVkRmFzdE1lbW9yaWVzID0gQVRPTUlD
X1ZBUl9JTklUKDApOwogc3RkOjphdG9taWM8c2l6ZV90PiBvYnNlcnZlZE1heGltdW1GYXN0TWVt
b3J5ID0gQVRPTUlDX1ZBUl9JTklUKDApOworc3RkOjphdG9taWM8c2l6ZV90PiBjdXJyZW50U2xv
d01lbW9yeUNhcGFjaXR5ID0gQVRPTUlDX1ZBUl9JTklUKDApOwogCiB2b2lkKiB0cnlHZXRDYWNo
ZWRGYXN0TWVtb3J5KCkKIHsKQEAgLTE5NCw5ICsxOTUsMjcgQEAgdm9pZCogdHJ5R2V0RmFzdE1l
bW9yeShWTSYgdm0pCiAgICAgcmV0dXJuIG1lbW9yeTsKIH0KIAorYm9vbCBzbG93TWVtb3J5Q2Fw
YWNpdHlTb2Z0TWF4aW11bUV4Y2VlZGVkKCkKK3sKKyAgICAvLyBUaGUgbGltaXQgb24gc2xvdyBt
ZW1vcnkgY2FwYWNpdHkgaXMgYXJiaXRyYXJ5LiBJdHMgcHVycG9zZSBpcyB0byBsaW1pdAorICAg
IC8vIHZpcnR1YWwgbWVtb3J5IGFsbG9jYXRpb24uIFdlIGNob29zZSB0byBzZXQgdGhlIGxpbWl0
IGF0IHRoZSBzYW1lIHZpcnR1YWwKKyAgICAvLyBtZW1vcnkgbGltaXQgaW1wb3NlZCBvbiBmYXN0
IG1lbW9yaWVzLgorICAgIHNpemVfdCBtYXhpbXVtID0gZmFzdE1lbW9yeUFsbG9jYXRpb25Tb2Z0
TGltaXQgKiBNZW1vcnk6OmZhc3RNYXBwZWRCeXRlcygpOworICAgIHNpemVfdCBjdXJyZW50Q2Fw
YWNpdHkgPSBjdXJyZW50U2xvd01lbW9yeUNhcGFjaXR5LmxvYWQoc3RkOjptZW1vcnlfb3JkZXJf
YWNxdWlyZSk7CisgICAgaWYgKFVOTElLRUxZKGN1cnJlbnRDYXBhY2l0eSA+IG1heGltdW0pKSB7
CisgICAgICAgIGRhdGFMb2dMbklmKHZlcmJvc2UsICJTbG93IG1lbW9yeSBjYXBhY2l0eSBsaW1p
dCByZWFjaGVkIik7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyAgICByZXR1cm4gZmFs
c2U7Cit9CisKIHZvaWQqIHRyeUdldFNsb3dNZW1vcnkoc2l6ZV90IGJ5dGVzKQogeworICAgIGlm
IChzbG93TWVtb3J5Q2FwYWNpdHlTb2Z0TWF4aW11bUV4Y2VlZGVkKCkpCisgICAgICAgIHJldHVy
biBudWxscHRyOwogICAgIHZvaWQqIG1lbW9yeSA9IG1tYXBCeXRlcyhieXRlcyk7CisgICAgaWYg
KG1lbW9yeSkKKyAgICAgICAgY3VycmVudFNsb3dNZW1vcnlDYXBhY2l0eS5mZXRjaF9hZGQoYnl0
ZXMsIHN0ZDo6bWVtb3J5X29yZGVyX2FjcV9yZWwpOwogICAgIGRhdGFMb2dMbklmKG1lbW9yeSAm
JiB2ZXJib3NlLCAiT2J0YWluZWQgc2xvdyBtZW1vcnkgIiwgUmF3UG9pbnRlcihtZW1vcnkpLCAi
IHdpdGggY2FwYWNpdHkgIiwgYnl0ZXMpOwogICAgIGRhdGFMb2dMbklmKCFtZW1vcnkgJiYgdmVy
Ym9zZSwgIkZhaWxlZCBvYnRhaW5pbmcgc2xvdyBtZW1vcnkgd2l0aCBjYXBhY2l0eSAiLCBieXRl
cyk7CiAgICAgcmV0dXJuIG1lbW9yeTsKQEAgLTIyOCw2ICsyNDcsNyBAQCB2b2lkIHJlbGlucXVp
c2hNZW1vcnkodm9pZCogbWVtb3J5LCBzaXplX3Qgd3JpdGFibGVTaXplLCBzaXplX3QgbWFwcGVk
Q2FwYWNpdHksCiAgICAgY2FzZSBNZW1vcnlNb2RlOjpCb3VuZHNDaGVja2luZzoKICAgICAgICAg
ZGF0YUxvZ0xuSWYodmVyYm9zZSwgInJlbGlucXVpc2hGYXN0TWVtb3J5IGZyZWVpbmcgc2xvdyBt
ZW1vcnkgIiwgUmF3UG9pbnRlcihtZW1vcnkpKTsKICAgICAgICAgbXVubWFwQnl0ZXMobWVtb3J5
LCBtYXBwZWRDYXBhY2l0eSk7CisgICAgICAgIGN1cnJlbnRTbG93TWVtb3J5Q2FwYWNpdHkuZmV0
Y2hfc3ViKG1hcHBlZENhcGFjaXR5LCBzdGQ6Om1lbW9yeV9vcmRlcl9hY3FfcmVsKTsKICAgICAg
ICAgcmV0dXJuOwogCiAgICAgY2FzZSBNZW1vcnlNb2RlOjpOdW1iZXJPZk1lbW9yeU1vZGVzOgot
LSAKMi45LjMKCg==
</data>
<flag name="review"
          id="328751"
          type_id="1"
          status="+"
          setter="saam"
    />
    <flag name="commit-queue"
          id="328752"
          type_id="3"
          status="-"
          setter="saam"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>307488</attachid>
            <date>2017-04-19 10:31:31 -0700</date>
            <delta_ts>2017-04-19 10:39:01 -0700</delta_ts>
            <desc>patch</desc>
            <filename>0001-oom.patch</filename>
            <type>text/plain</type>
            <size>6332</size>
            <attacher name="JF Bastien">jfbastien</attacher>
            
              <data encoding="base64">RnJvbSAzMTAyOWFmZjMwZTBiMTZjMWVkMWNkYTlhYWI5N2UyZTZmOTdmMjE0IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBKRiBCYXN0aWVuIDxqZmJhc3RpZW5AYXBwbGUuY29tPgpEYXRl
OiBXZWQsIDE5IEFwciAyMDE3IDEwOjI2OjAwIC0wNzAwClN1YmplY3Q6IFtQQVRDSF0gb29tCgot
LS0KIEpTVGVzdHMvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgIHwgMTIgKysrKysr
KysrKysrCiBKU1Rlc3RzL3dhc20ueWFtbCAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsr
Ky0KIEpTVGVzdHMvd2FzbS9zdHJlc3Mvb29tLmpzICAgICAgICAgICAgICAgIHwgMjIgKysrKysr
KysrKysrKysrKysrKysrKwogU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyAgICAgICAg
ICAgfCAyMiArKysrKysrKysrKysrKysrKysrKysrCiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9XYXNtTWVtb3J5LmNwcCB8IDI1ICsrKysrKysrKysrKysrKysrKysrKysrKysKIDUgZmlsZXMg
Y2hhbmdlZCwgODQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAw
NjQ0IEpTVGVzdHMvd2FzbS9zdHJlc3Mvb29tLmpzCgpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9DaGFu
Z2VMb2cgYi9KU1Rlc3RzL0NoYW5nZUxvZwppbmRleCBlY2RlMjk0Li4xOTVlNzk2IDEwMDY0NAot
LS0gYS9KU1Rlc3RzL0NoYW5nZUxvZworKysgYi9KU1Rlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDE1IEBACisyMDE3LTA0LTE5ICBKRiBCYXN0aWVuICA8amZiYXN0aWVuQGFwcGxlLmNvbT4KKwor
ICAgICAgICBXZWJBc3NlbWJseTogbGltaXQgc2xvdyBtZW1vcmllcworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTcwODI1CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgU2FhbSBCYXJhdGkuCisKKyAgICAgICAgKiB3YXNtLnlhbWw6CisgICAgICAgICogd2Fz
bS9zdHJlc3Mvb29tLmpzOiBBZGRlZC4KKyAgICAgICAgKHRyeS50cnVlLldlYkFzc2VtYmx5TWVt
b3J5TW9kZSk6CisgICAgICAgIChjYXRjaCk6CisKIDIwMTctMDQtMTggIE1hcmsgTGFtICA8bWFy
ay5sYW1AYXBwbGUuY29tPgogCiAgICAgICAgIHIyMTE2NzAgYnJva2UgZG91YmxlIHRvIGludCBj
b252ZXJzaW9uLgpkaWZmIC0tZ2l0IGEvSlNUZXN0cy93YXNtLnlhbWwgYi9KU1Rlc3RzL3dhc20u
eWFtbAppbmRleCA2YmY3ZDA1Li4wZWM2YjE1IDEwMDY0NAotLS0gYS9KU1Rlc3RzL3dhc20ueWFt
bAorKysgYi9KU1Rlc3RzL3dhc20ueWFtbApAQCAtMSw0ICsxLDQgQEAKLSMgQ29weXJpZ2h0IChD
KSAyMDE2IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyMgQ29weXJpZ2h0IChDKSAy
MDE2LTIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogIwogIyBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
ICMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCkBAIC0yOSw2ICsyOSw4IEBACiAgIGNtZDogcnVuV2ViQXNzZW1ibHkgdW5s
ZXNzIHBhcnNlUnVuQ29tbWFuZHMKIC0gcGF0aDogd2FzbS9mdXp6CiAgIGNtZDogcnVuV2ViQXNz
ZW1ibHkgdW5sZXNzIHBhcnNlUnVuQ29tbWFuZHMKKy0gcGF0aDogd2FzbS9zdHJlc3MKKyAgY21k
OiBydW5XZWJBc3NlbWJseSB1bmxlc3MgcGFyc2VSdW5Db21tYW5kcwogCiAtIHBhdGg6IHdhc20v
c3BlYy10ZXN0cy9hZGRyZXNzLndhc3QuanMKICAgY21kOiBydW5XZWJBc3NlbWJseVNwZWNUZXN0
IDpub3JtYWwKZGlmZiAtLWdpdCBhL0pTVGVzdHMvd2FzbS9zdHJlc3Mvb29tLmpzIGIvSlNUZXN0
cy93YXNtL3N0cmVzcy9vb20uanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4u
OGE2YzFmZAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvd2FzbS9zdHJlc3Mvb29tLmpzCkBA
IC0wLDAgKzEsMjIgQEAKK2NvbnN0IHZlcmJvc2UgPSB0cnVlOworCisvLyBVc2UgYSBmdWxsIDRH
aUIgc28gdGhhdCBleGhhdXN0aW9uIGlzIGxpa2VseSB0byBvY2N1ciBmYXN0ZXIuIFdlJ3JlIG5v
dAorLy8gZ3VhcmFudGVlZCB0aGF0IHdlJ2xsIGdldCB0aGF0IG11Y2ggdmlydHVhbGx5IGFsbG9j
YXRlZCB0byB0aGUgbWVtb3J5IHNvIHdlCisvLyBjYW4ndCBhY3R1YWxseSBjaGVjayB0aGF0IGV4
aGF1c3Rpb24gb2NjdXJzIGF0IGEgcGFydGljdWxhciBudW1iZXIgb2YKKy8vIG1lbW9yaWVzLgor
Y29uc3QgbWF4aW11bVBhZ2VzID0gNjU1MzY7CisKK2xldCBtZW1vcmllcyA9IFtdOwordHJ5IHsK
KyAgICB3aGlsZSAodHJ1ZSkgeworICAgICAgICBsZXQgbSA9IG5ldyBXZWJBc3NlbWJseS5NZW1v
cnkoeyBpbml0aWFsOiA2NCwgbWF4aW11bTogbWF4aW11bVBhZ2VzIH0pOworICAgICAgICBtZW1v
cmllcy5wdXNoKG0pOworICAgICAgICBpZiAodmVyYm9zZSkKKyAgICAgICAgICAgIHByaW50KGAk
e1dlYkFzc2VtYmx5TWVtb3J5TW9kZShtKX0gJHttZW1vcmllcy5sZW5ndGh9YCk7CisgICAgfQor
fSBjYXRjaCAoZSkgeworICAgIGlmICh2ZXJib3NlKQorICAgICAgICBwcmludChgQ2F1Z2h0OiAk
e2V9YCk7CisgICAgaWYgKGUubWVzc2FnZSAhPT0gIk91dCBvZiBtZW1vcnkiKQorICAgICAgICB0
aHJvdyBuZXcgRXJyb3IoYEV4cGVjdGVkIGFuIG91dCBvZiBtZW1vcnkgZXJyb3IsIGdvdCAke2V9
IG9mIHR5cGUgJHt0eXBlb2YgZX1gKTsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IDY1
MDMwNzguLjFkMGFlNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VM
b2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBA
CisyMDE3LTA0LTE5ICBKRiBCYXN0aWVuICA8amZiYXN0aWVuQGFwcGxlLmNvbT4KKworICAgICAg
ICBXZWJBc3NlbWJseTogbGltaXQgc2xvdyBtZW1vcmllcworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTcwODI1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
U2FhbSBCYXJhdGkuCisKKyAgICAgICAgV2UgbGltaXRzIHRoZSBudW1iZXIgb2YgZmFzdCBtZW1v
cmllcywgcGFydGx5IGJlY2F1c2UgQVNMUi4gVGhlCisgICAgICAgIGNvZGUgdGhlbiBmYWxscyBi
YWNrIHRvIHNsb3cgbWVtb3JpZXMuIEl0IGZpcnN0IHRyaWVzIHRvIHZpcnR1YWxseQorICAgICAg
ICBhbGxvY2F0ZWQgYW55IGRlY2xhcmVkIG1heGltdW0gKGFuZCBpbiB0aGVyZSwgcGh5c2ljYWxs
eSB0aGUKKyAgICAgICAgaW5pdGlhbCksIGFuZCBpZiB0aGF0IGZhaWxzIGl0IHRyaWVzIHRvIHBo
eXNpY2FsbHkgYWxsb2NhdGUgdGhlCisgICAgICAgIGluaXRpYWwgd2l0aG91dCBhbnkgZXh0cmEu
CisKKyAgICAgICAgVGhpcyBjYW4gc3RpbGwgYmUgdXNlZCB0byBjYXVzZSBhIGJ1bmNoIG9mIHZp
cnR1YWwKKyAgICAgICAgYWxsb2NhdGlvbi4gVGhpcyBwYXRjaCBpbXBvc2VzIHNvZnQgbGltaXQg
b24gc2xvdyBtZW1vcmllcyBhcworICAgICAgICB3ZWxsLiBUaGUgdG90YWwgdmlydHVhbCBtYXhp
bXVtIGZvciBzbG93IG1lbW9yaWVzIGlzIHNldCBhdCB0aGUKKyAgICAgICAgc2FtZSAodGhlb3Jl
dGljYWwpIHZhbHVlIGFzIHRoYXQgZm9yIGZhc3QgbWVtb3JpZXMuCisKKyAgICAgICAgQW55dGhp
bmcgZXhjZWVkaW5nIHRoYXQgbGltaXQgY2F1c2VzIGFsbG9jYXRpb24vZ3JvdyB0byBmYWlsLgor
CisgICAgICAgICogd2FzbS9XYXNtTWVtb3J5LmNwcDoKKwogMjAxNy0wNC0xOSAgWXVzdWtlIFN1
enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNvbT4KIAogICAgICAgICByMjExNjcwIGJyb2tlIGRv
dWJsZSB0byBpbnQgY29udmVyc2lvbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL1dhc21NZW1vcnkuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbU1l
bW9yeS5jcHAKaW5kZXggOWU4ZDZlMC4uNjEwNzQzZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3dhc20vV2FzbU1lbW9yeS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vV2FzbU1lbW9yeS5jcHAKQEAgLTkzLDYgKzkzLDEyIEBAIHN0ZDo6YXRvbWljPHZvaWQq
PiBmYXN0TWVtb3J5Q2FjaGVbZmFzdE1lbW9yeUNhY2hlSGFyZExpbWl0XSA9IHsgQVRPTUlDX1ZB
Ul9JTklUCiBzdGQ6OmF0b21pYzx2b2lkKj4gY3VycmVudGx5QWN0aXZlRmFzdE1lbW9yaWVzW2Zh
c3RNZW1vcnlBbGxvY2F0aW9uU29mdExpbWl0XSA9IHsgQVRPTUlDX1ZBUl9JTklUKG51bGxwdHIp
IH07CiBzdGQ6OmF0b21pYzxzaXplX3Q+IGN1cnJlbnRseUFsbG9jYXRlZEZhc3RNZW1vcmllcyA9
IEFUT01JQ19WQVJfSU5JVCgwKTsKIHN0ZDo6YXRvbWljPHNpemVfdD4gb2JzZXJ2ZWRNYXhpbXVt
RmFzdE1lbW9yeSA9IEFUT01JQ19WQVJfSU5JVCgwKTsKK3N0ZDo6YXRvbWljPHNpemVfdD4gY3Vy
cmVudFNsb3dNZW1vcnlDYXBhY2l0eSA9IEFUT01JQ19WQVJfSU5JVCgwKTsKKworc2l6ZV90IGZh
c3RNZW1vcnlBbGxvY2F0ZWRCeXRlc1NvZnRMaW1pdCgpCit7CisgICAgcmV0dXJuIGZhc3RNZW1v
cnlBbGxvY2F0aW9uU29mdExpbWl0ICogTWVtb3J5OjpmYXN0TWFwcGVkQnl0ZXMoKTsKK30KIAog
dm9pZCogdHJ5R2V0Q2FjaGVkRmFzdE1lbW9yeSgpCiB7CkBAIC0xOTQsOSArMjAwLDI3IEBAIHZv
aWQqIHRyeUdldEZhc3RNZW1vcnkoVk0mIHZtKQogICAgIHJldHVybiBtZW1vcnk7CiB9CiAKK2Jv
b2wgc2xvd01lbW9yeUNhcGFjaXR5U29mdE1heGltdW1FeGNlZWRlZCgpCit7CisgICAgLy8gVGhl
IGxpbWl0IG9uIHNsb3cgbWVtb3J5IGNhcGFjaXR5IGlzIGFyYml0cmFyeS4gSXRzIHB1cnBvc2Ug
aXMgdG8gbGltaXQKKyAgICAvLyB2aXJ0dWFsIG1lbW9yeSBhbGxvY2F0aW9uLiBXZSBjaG9vc2Ug
dG8gc2V0IHRoZSBsaW1pdCBhdCB0aGUgc2FtZSB2aXJ0dWFsCisgICAgLy8gbWVtb3J5IGxpbWl0
IGltcG9zZWQgb24gZmFzdCBtZW1vcmllcy4KKyAgICBzaXplX3QgbWF4aW11bSA9IGZhc3RNZW1v
cnlBbGxvY2F0ZWRCeXRlc1NvZnRMaW1pdCgpOworICAgIHNpemVfdCBjdXJyZW50Q2FwYWNpdHkg
PSBjdXJyZW50U2xvd01lbW9yeUNhcGFjaXR5LmxvYWQoc3RkOjptZW1vcnlfb3JkZXJfYWNxdWly
ZSk7CisgICAgaWYgKFVOTElLRUxZKGN1cnJlbnRDYXBhY2l0eSA+IG1heGltdW0pKSB7CisgICAg
ICAgIGRhdGFMb2dMbklmKHZlcmJvc2UsICJTbG93IG1lbW9yeSBjYXBhY2l0eSBsaW1pdCByZWFj
aGVkIik7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyAgICByZXR1cm4gZmFsc2U7Cit9
CisKIHZvaWQqIHRyeUdldFNsb3dNZW1vcnkoc2l6ZV90IGJ5dGVzKQogeworICAgIGlmIChzbG93
TWVtb3J5Q2FwYWNpdHlTb2Z0TWF4aW11bUV4Y2VlZGVkKCkpCisgICAgICAgIHJldHVybiBudWxs
cHRyOwogICAgIHZvaWQqIG1lbW9yeSA9IG1tYXBCeXRlcyhieXRlcyk7CisgICAgaWYgKG1lbW9y
eSkKKyAgICAgICAgY3VycmVudFNsb3dNZW1vcnlDYXBhY2l0eS5mZXRjaF9hZGQoYnl0ZXMsIHN0
ZDo6bWVtb3J5X29yZGVyX2FjcV9yZWwpOwogICAgIGRhdGFMb2dMbklmKG1lbW9yeSAmJiB2ZXJi
b3NlLCAiT2J0YWluZWQgc2xvdyBtZW1vcnkgIiwgUmF3UG9pbnRlcihtZW1vcnkpLCAiIHdpdGgg
Y2FwYWNpdHkgIiwgYnl0ZXMpOwogICAgIGRhdGFMb2dMbklmKCFtZW1vcnkgJiYgdmVyYm9zZSwg
IkZhaWxlZCBvYnRhaW5pbmcgc2xvdyBtZW1vcnkgd2l0aCBjYXBhY2l0eSAiLCBieXRlcyk7CiAg
ICAgcmV0dXJuIG1lbW9yeTsKQEAgLTIyOCw2ICsyNTIsNyBAQCB2b2lkIHJlbGlucXVpc2hNZW1v
cnkodm9pZCogbWVtb3J5LCBzaXplX3Qgd3JpdGFibGVTaXplLCBzaXplX3QgbWFwcGVkQ2FwYWNp
dHksCiAgICAgY2FzZSBNZW1vcnlNb2RlOjpCb3VuZHNDaGVja2luZzoKICAgICAgICAgZGF0YUxv
Z0xuSWYodmVyYm9zZSwgInJlbGlucXVpc2hGYXN0TWVtb3J5IGZyZWVpbmcgc2xvdyBtZW1vcnkg
IiwgUmF3UG9pbnRlcihtZW1vcnkpKTsKICAgICAgICAgbXVubWFwQnl0ZXMobWVtb3J5LCBtYXBw
ZWRDYXBhY2l0eSk7CisgICAgICAgIGN1cnJlbnRTbG93TWVtb3J5Q2FwYWNpdHkuZmV0Y2hfc3Vi
KG1hcHBlZENhcGFjaXR5LCBzdGQ6Om1lbW9yeV9vcmRlcl9hY3FfcmVsKTsKICAgICAgICAgcmV0
dXJuOwogCiAgICAgY2FzZSBNZW1vcnlNb2RlOjpOdW1iZXJPZk1lbW9yeU1vZGVzOgotLSAKMi4x
MC4xCgo=
</data>
<flag name="commit-queue"
          id="328769"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>307489</attachid>
            <date>2017-04-19 10:39:01 -0700</date>
            <delta_ts>2017-04-19 12:38:55 -0700</delta_ts>
            <desc>patch</desc>
            <filename>0001-oom.patch</filename>
            <type>text/plain</type>
            <size>6209</size>
            <attacher name="JF Bastien">jfbastien</attacher>
            
              <data encoding="base64">RnJvbSA3M2VjZGQyZjQzZDMwMjRkY2JhZmU5OWM0NWZiZmM2ODlhYjEzOTZiIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBKRiBCYXN0aWVuIDxqZmJhc3RpZW5AYXBwbGUuY29tPgpEYXRl
OiBXZWQsIDE5IEFwciAyMDE3IDEwOjI2OjAwIC0wNzAwClN1YmplY3Q6IFtQQVRDSF0gb29tCgot
LS0KIEpTVGVzdHMvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgIHwgMTIgKysrKysr
KysrKysrCiBKU1Rlc3RzL3dhc20ueWFtbCAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICsr
CiBKU1Rlc3RzL3dhc20vc3RyZXNzL29vbS5qcyAgICAgICAgICAgICAgICB8IDIyICsrKysrKysr
KysrKysrKysrKysrKysKIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgICAgICAgICAg
IHwgMjIgKysrKysrKysrKysrKysrKysrKysrKwogU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
V2FzbU1lbW9yeS5jcHAgfCAyNSArKysrKysrKysrKysrKysrKysrKysrKysrCiA1IGZpbGVzIGNo
YW5nZWQsIDgzIGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEwMDY0NCBKU1Rlc3RzL3dhc20v
c3RyZXNzL29vbS5qcwoKZGlmZiAtLWdpdCBhL0pTVGVzdHMvQ2hhbmdlTG9nIGIvSlNUZXN0cy9D
aGFuZ2VMb2cKaW5kZXggNDBlMzA3YS4uZDgzMjIzOCAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFu
Z2VMb2cKKysrIGIvSlNUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsNSArMSwxNyBAQAogMjAxNy0wNC0x
OSAgSkYgQmFzdGllbiAgPGpmYmFzdGllbkBhcHBsZS5jb20+CiAKKyAgICAgICAgV2ViQXNzZW1i
bHk6IGxpbWl0IHNsb3cgbWVtb3JpZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE3MDgyNQorCisgICAgICAgIFJldmlld2VkIGJ5IFNhYW0gQmFyYXRp
LgorCisgICAgICAgICogd2FzbS55YW1sOgorICAgICAgICAqIHdhc20vc3RyZXNzL29vbS5qczog
QWRkZWQuCisgICAgICAgICh0cnkudHJ1ZS5XZWJBc3NlbWJseU1lbW9yeU1vZGUpOgorICAgICAg
ICAoY2F0Y2gpOgorCisyMDE3LTA0LTE5ICBKRiBCYXN0aWVuICA8amZiYXN0aWVuQGFwcGxlLmNv
bT4KKwogICAgICAgICBXZWJBc3NlbWJseTogZG9uJ3QgZXhwb3NlIGFueSBXZWJBc3NlbWJseSBK
UyBvYmplY3QgaWYgSklUIGlzIG9mZgogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTcwNzgyCiAKZGlmZiAtLWdpdCBhL0pTVGVzdHMvd2FzbS55YW1sIGIv
SlNUZXN0cy93YXNtLnlhbWwKaW5kZXggNWJjN2ZmMy4uNjQ4OGY2ZCAxMDA2NDQKLS0tIGEvSlNU
ZXN0cy93YXNtLnlhbWwKKysrIGIvSlNUZXN0cy93YXNtLnlhbWwKQEAgLTMxLDYgKzMxLDggQEAK
ICAgY21kOiBydW5XZWJBc3NlbWJseSB1bmxlc3MgcGFyc2VSdW5Db21tYW5kcwogLSBwYXRoOiB3
YXNtL2Z1enoKICAgY21kOiBydW5XZWJBc3NlbWJseSB1bmxlc3MgcGFyc2VSdW5Db21tYW5kcwor
LSBwYXRoOiB3YXNtL3N0cmVzcworICBjbWQ6IHJ1bldlYkFzc2VtYmx5IHVubGVzcyBwYXJzZVJ1
bkNvbW1hbmRzCiAKIC0gcGF0aDogd2FzbS9zcGVjLXRlc3RzL2FkZHJlc3Mud2FzdC5qcwogICBj
bWQ6IHJ1bldlYkFzc2VtYmx5U3BlY1Rlc3QgOm5vcm1hbApkaWZmIC0tZ2l0IGEvSlNUZXN0cy93
YXNtL3N0cmVzcy9vb20uanMgYi9KU1Rlc3RzL3dhc20vc3RyZXNzL29vbS5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44YTZjMWZkCi0tLSAvZGV2L251bGwKKysrIGIvSlNU
ZXN0cy93YXNtL3N0cmVzcy9vb20uanMKQEAgLTAsMCArMSwyMiBAQAorY29uc3QgdmVyYm9zZSA9
IHRydWU7CisKKy8vIFVzZSBhIGZ1bGwgNEdpQiBzbyB0aGF0IGV4aGF1c3Rpb24gaXMgbGlrZWx5
IHRvIG9jY3VyIGZhc3Rlci4gV2UncmUgbm90CisvLyBndWFyYW50ZWVkIHRoYXQgd2UnbGwgZ2V0
IHRoYXQgbXVjaCB2aXJ0dWFsbHkgYWxsb2NhdGVkIHRvIHRoZSBtZW1vcnkgc28gd2UKKy8vIGNh
bid0IGFjdHVhbGx5IGNoZWNrIHRoYXQgZXhoYXVzdGlvbiBvY2N1cnMgYXQgYSBwYXJ0aWN1bGFy
IG51bWJlciBvZgorLy8gbWVtb3JpZXMuCitjb25zdCBtYXhpbXVtUGFnZXMgPSA2NTUzNjsKKwor
bGV0IG1lbW9yaWVzID0gW107Cit0cnkgeworICAgIHdoaWxlICh0cnVlKSB7CisgICAgICAgIGxl
dCBtID0gbmV3IFdlYkFzc2VtYmx5Lk1lbW9yeSh7IGluaXRpYWw6IDY0LCBtYXhpbXVtOiBtYXhp
bXVtUGFnZXMgfSk7CisgICAgICAgIG1lbW9yaWVzLnB1c2gobSk7CisgICAgICAgIGlmICh2ZXJi
b3NlKQorICAgICAgICAgICAgcHJpbnQoYCR7V2ViQXNzZW1ibHlNZW1vcnlNb2RlKG0pfSAke21l
bW9yaWVzLmxlbmd0aH1gKTsKKyAgICB9Cit9IGNhdGNoIChlKSB7CisgICAgaWYgKHZlcmJvc2Up
CisgICAgICAgIHByaW50KGBDYXVnaHQ6ICR7ZX1gKTsKKyAgICBpZiAoZS5tZXNzYWdlICE9PSAi
T3V0IG9mIG1lbW9yeSIpCisgICAgICAgIHRocm93IG5ldyBFcnJvcihgRXhwZWN0ZWQgYW4gb3V0
IG9mIG1lbW9yeSBlcnJvciwgZ290ICR7ZX0gb2YgdHlwZSAke3R5cGVvZiBlfWApOworfQpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9DaGFuZ2VMb2cKaW5kZXggNjMyOGE5Yi4uYzEwZTk1ZCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
Q2hhbmdlTG9nCkBAIC0xLDUgKzEsMjcgQEAKIDIwMTctMDQtMTkgIEpGIEJhc3RpZW4gIDxqZmJh
c3RpZW5AYXBwbGUuY29tPgogCisgICAgICAgIFdlYkFzc2VtYmx5OiBsaW1pdCBzbG93IG1lbW9y
aWVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzA4
MjUKKworICAgICAgICBSZXZpZXdlZCBieSBTYWFtIEJhcmF0aS4KKworICAgICAgICBXZSBsaW1p
dHMgdGhlIG51bWJlciBvZiBmYXN0IG1lbW9yaWVzLCBwYXJ0bHkgYmVjYXVzZSBBU0xSLiBUaGUK
KyAgICAgICAgY29kZSB0aGVuIGZhbGxzIGJhY2sgdG8gc2xvdyBtZW1vcmllcy4gSXQgZmlyc3Qg
dHJpZXMgdG8gdmlydHVhbGx5CisgICAgICAgIGFsbG9jYXRlZCBhbnkgZGVjbGFyZWQgbWF4aW11
bSAoYW5kIGluIHRoZXJlLCBwaHlzaWNhbGx5IHRoZQorICAgICAgICBpbml0aWFsKSwgYW5kIGlm
IHRoYXQgZmFpbHMgaXQgdHJpZXMgdG8gcGh5c2ljYWxseSBhbGxvY2F0ZSB0aGUKKyAgICAgICAg
aW5pdGlhbCB3aXRob3V0IGFueSBleHRyYS4KKworICAgICAgICBUaGlzIGNhbiBzdGlsbCBiZSB1
c2VkIHRvIGNhdXNlIGEgYnVuY2ggb2YgdmlydHVhbAorICAgICAgICBhbGxvY2F0aW9uLiBUaGlz
IHBhdGNoIGltcG9zZXMgc29mdCBsaW1pdCBvbiBzbG93IG1lbW9yaWVzIGFzCisgICAgICAgIHdl
bGwuIFRoZSB0b3RhbCB2aXJ0dWFsIG1heGltdW0gZm9yIHNsb3cgbWVtb3JpZXMgaXMgc2V0IGF0
IHRoZQorICAgICAgICBzYW1lICh0aGVvcmV0aWNhbCkgdmFsdWUgYXMgdGhhdCBmb3IgZmFzdCBt
ZW1vcmllcy4KKworICAgICAgICBBbnl0aGluZyBleGNlZWRpbmcgdGhhdCBsaW1pdCBjYXVzZXMg
YWxsb2NhdGlvbi9ncm93IHRvIGZhaWwuCisKKyAgICAgICAgKiB3YXNtL1dhc21NZW1vcnkuY3Bw
OgorCisyMDE3LTA0LTE5ICBKRiBCYXN0aWVuICA8amZiYXN0aWVuQGFwcGxlLmNvbT4KKwogICAg
ICAgICBXZWJBc3NlbWJseTogZG9uJ3QgZXhwb3NlIGFueSBXZWJBc3NlbWJseSBKUyBvYmplY3Qg
aWYgSklUIGlzIG9mZgogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTcwNzgyCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dh
c21NZW1vcnkuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbU1lbW9yeS5jcHAK
aW5kZXggOWU4ZDZlMC4uNjEwNzQzZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vV2FzbU1lbW9yeS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2Fz
bU1lbW9yeS5jcHAKQEAgLTkzLDYgKzkzLDEyIEBAIHN0ZDo6YXRvbWljPHZvaWQqPiBmYXN0TWVt
b3J5Q2FjaGVbZmFzdE1lbW9yeUNhY2hlSGFyZExpbWl0XSA9IHsgQVRPTUlDX1ZBUl9JTklUCiBz
dGQ6OmF0b21pYzx2b2lkKj4gY3VycmVudGx5QWN0aXZlRmFzdE1lbW9yaWVzW2Zhc3RNZW1vcnlB
bGxvY2F0aW9uU29mdExpbWl0XSA9IHsgQVRPTUlDX1ZBUl9JTklUKG51bGxwdHIpIH07CiBzdGQ6
OmF0b21pYzxzaXplX3Q+IGN1cnJlbnRseUFsbG9jYXRlZEZhc3RNZW1vcmllcyA9IEFUT01JQ19W
QVJfSU5JVCgwKTsKIHN0ZDo6YXRvbWljPHNpemVfdD4gb2JzZXJ2ZWRNYXhpbXVtRmFzdE1lbW9y
eSA9IEFUT01JQ19WQVJfSU5JVCgwKTsKK3N0ZDo6YXRvbWljPHNpemVfdD4gY3VycmVudFNsb3dN
ZW1vcnlDYXBhY2l0eSA9IEFUT01JQ19WQVJfSU5JVCgwKTsKKworc2l6ZV90IGZhc3RNZW1vcnlB
bGxvY2F0ZWRCeXRlc1NvZnRMaW1pdCgpCit7CisgICAgcmV0dXJuIGZhc3RNZW1vcnlBbGxvY2F0
aW9uU29mdExpbWl0ICogTWVtb3J5OjpmYXN0TWFwcGVkQnl0ZXMoKTsKK30KIAogdm9pZCogdHJ5
R2V0Q2FjaGVkRmFzdE1lbW9yeSgpCiB7CkBAIC0xOTQsOSArMjAwLDI3IEBAIHZvaWQqIHRyeUdl
dEZhc3RNZW1vcnkoVk0mIHZtKQogICAgIHJldHVybiBtZW1vcnk7CiB9CiAKK2Jvb2wgc2xvd01l
bW9yeUNhcGFjaXR5U29mdE1heGltdW1FeGNlZWRlZCgpCit7CisgICAgLy8gVGhlIGxpbWl0IG9u
IHNsb3cgbWVtb3J5IGNhcGFjaXR5IGlzIGFyYml0cmFyeS4gSXRzIHB1cnBvc2UgaXMgdG8gbGlt
aXQKKyAgICAvLyB2aXJ0dWFsIG1lbW9yeSBhbGxvY2F0aW9uLiBXZSBjaG9vc2UgdG8gc2V0IHRo
ZSBsaW1pdCBhdCB0aGUgc2FtZSB2aXJ0dWFsCisgICAgLy8gbWVtb3J5IGxpbWl0IGltcG9zZWQg
b24gZmFzdCBtZW1vcmllcy4KKyAgICBzaXplX3QgbWF4aW11bSA9IGZhc3RNZW1vcnlBbGxvY2F0
ZWRCeXRlc1NvZnRMaW1pdCgpOworICAgIHNpemVfdCBjdXJyZW50Q2FwYWNpdHkgPSBjdXJyZW50
U2xvd01lbW9yeUNhcGFjaXR5LmxvYWQoc3RkOjptZW1vcnlfb3JkZXJfYWNxdWlyZSk7CisgICAg
aWYgKFVOTElLRUxZKGN1cnJlbnRDYXBhY2l0eSA+IG1heGltdW0pKSB7CisgICAgICAgIGRhdGFM
b2dMbklmKHZlcmJvc2UsICJTbG93IG1lbW9yeSBjYXBhY2l0eSBsaW1pdCByZWFjaGVkIik7Cisg
ICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyAgICByZXR1cm4gZmFsc2U7Cit9CisKIHZvaWQq
IHRyeUdldFNsb3dNZW1vcnkoc2l6ZV90IGJ5dGVzKQogeworICAgIGlmIChzbG93TWVtb3J5Q2Fw
YWNpdHlTb2Z0TWF4aW11bUV4Y2VlZGVkKCkpCisgICAgICAgIHJldHVybiBudWxscHRyOwogICAg
IHZvaWQqIG1lbW9yeSA9IG1tYXBCeXRlcyhieXRlcyk7CisgICAgaWYgKG1lbW9yeSkKKyAgICAg
ICAgY3VycmVudFNsb3dNZW1vcnlDYXBhY2l0eS5mZXRjaF9hZGQoYnl0ZXMsIHN0ZDo6bWVtb3J5
X29yZGVyX2FjcV9yZWwpOwogICAgIGRhdGFMb2dMbklmKG1lbW9yeSAmJiB2ZXJib3NlLCAiT2J0
YWluZWQgc2xvdyBtZW1vcnkgIiwgUmF3UG9pbnRlcihtZW1vcnkpLCAiIHdpdGggY2FwYWNpdHkg
IiwgYnl0ZXMpOwogICAgIGRhdGFMb2dMbklmKCFtZW1vcnkgJiYgdmVyYm9zZSwgIkZhaWxlZCBv
YnRhaW5pbmcgc2xvdyBtZW1vcnkgd2l0aCBjYXBhY2l0eSAiLCBieXRlcyk7CiAgICAgcmV0dXJu
IG1lbW9yeTsKQEAgLTIyOCw2ICsyNTIsNyBAQCB2b2lkIHJlbGlucXVpc2hNZW1vcnkodm9pZCog
bWVtb3J5LCBzaXplX3Qgd3JpdGFibGVTaXplLCBzaXplX3QgbWFwcGVkQ2FwYWNpdHksCiAgICAg
Y2FzZSBNZW1vcnlNb2RlOjpCb3VuZHNDaGVja2luZzoKICAgICAgICAgZGF0YUxvZ0xuSWYodmVy
Ym9zZSwgInJlbGlucXVpc2hGYXN0TWVtb3J5IGZyZWVpbmcgc2xvdyBtZW1vcnkgIiwgUmF3UG9p
bnRlcihtZW1vcnkpKTsKICAgICAgICAgbXVubWFwQnl0ZXMobWVtb3J5LCBtYXBwZWRDYXBhY2l0
eSk7CisgICAgICAgIGN1cnJlbnRTbG93TWVtb3J5Q2FwYWNpdHkuZmV0Y2hfc3ViKG1hcHBlZENh
cGFjaXR5LCBzdGQ6Om1lbW9yeV9vcmRlcl9hY3FfcmVsKTsKICAgICAgICAgcmV0dXJuOwogCiAg
ICAgY2FzZSBNZW1vcnlNb2RlOjpOdW1iZXJPZk1lbW9yeU1vZGVzOgotLSAKMi4xMC4xCgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>