<?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>223787</bug_id>
          
          <creation_ts>2021-03-26 02:07:01 -0700</creation_ts>
          <short_desc>Out of memory crash with find(&apos;a&apos;.repeat(2**30))</short_desc>
          <delta_ts>2021-04-12 05:26:53 -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>HTML Editing</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="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Frédéric Wang Nélar">fred.wang</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>cgarcia</cc>
    
    <cc>darin</cc>
    
    <cc>ews-feeder</cc>
    
    <cc>fred.wang</cc>
    
    <cc>gpoo</cc>
    
    <cc>product-security</cc>
    
    <cc>rbuis</cc>
    
    <cc>svillar</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1744110</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-03-26 02:07:01 -0700</bug_when>
    <thetext>e.g.

3   0x10d6feeae WebCore::SearchBuffer::SearchBuffer(WTF::String const&amp;, WTF::OptionSet&lt;WebCore::FindOptionFlag&gt;)
4   0x10d6ec876 WebCore::forEachMatch(WebCore::SimpleRange const&amp;, WTF::String const&amp;, WTF::OptionSet&lt;WebCore::FindOptionFlag&gt;, WTF::Function&lt;bool (WebCore::CharacterRange)&gt; const&amp;)
5   0x10d6ed14e WebCore::findPlainText(WebCore::SimpleRange const&amp;, WTF::String const&amp;, WTF::OptionSet&lt;WebCore::FindOptionFlag&gt;)
6   0x10d68978b WebCore::Editor::rangeOfString(WTF::String const&amp;, WTF::Optional&lt;WebCore::SimpleRange&gt; const&amp;, WTF::OptionSet&lt;WebCore::FindOptionFlag&gt;)
7   0x10d689323 WebCore::Editor::findString(WTF::String const&amp;, WTF::OptionSet&lt;WebCore::FindOptionFlag&gt;)
8   0x10dd138c4 WebCore::DOMWindow::find(WTF::String const&amp;, bool, bool, bool, bool, bool, bool) const
9   0x10bd13b7d WebCore::jsDOMWindowInstanceFunctionFind(JSC::JSGlobalObject*, JSC::CallFrame*)
10  0x29de2f601178
11  0x53039faf1 llint_entry
12  0x53038231d vmEntryToJavaScript
13  0x530d43eeb JSC::Interpreter::executeProgram(JSC::SourceCode const&amp;, JSC::JSGlobalObject*, JSC::JSObject*)

&lt;script&gt;
  find(&apos;a&apos;.repeat(2**30));
&lt;/script&gt;

&lt;rdar://67671004&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744111</commentid>
    <comment_count>1</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-03-26 02:08:22 -0700</bug_when>
    <thetext>Darin noticed that this is because we allowing 8 times the length of the searching string at the beginning of SearchBuffer in TextIterator.cpp:

m_buffer.reserveInitialCapacity(std::max(targetLength * 8, minimumSearchBufferSize));

That&apos;s probably a bit excessive!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744218</commentid>
    <comment_count>2</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-03-26 10:02:21 -0700</bug_when>
    <thetext>There’s a reason we do this (make a large buffer), because of the effect it has on search correctness. The number may not need to be exactly &quot;8 * length&quot; but it does need to be larger than the search string, for context to be handled correctly.

The true issues here are:

1) we have no limit on the size of the search string; no reason for that: we should have one
2) we do this allocation of the search buffer in the &quot;crash if not enough memory is available&quot; mode, not in the &quot;throw an exception if not enough memory is available&quot; or &quot;fail silently if not enough memory is available&quot; modes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744223</commentid>
    <comment_count>3</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-03-26 10:14:48 -0700</bug_when>
    <thetext>I think we should fix this just by dealing with (1), add a string length limit to DOMWindow::find.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747891</commentid>
    <comment_count>4</comment_count>
      <attachid>425397</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-04-07 08:30:47 -0700</bug_when>
    <thetext>Created attachment 425397
Patch

Following suggestion of comment 3.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748125</commentid>
    <comment_count>5</comment_count>
      <attachid>425397</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-04-07 16:14:03 -0700</bug_when>
    <thetext>Comment on attachment 425397
Patch

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

&gt; Source/WebCore/page/DOMWindow.cpp:1202
&gt; +    // Limit the maximum length to prevent any out-of-memory crash in SearchBuffer::SearchBuffer.
&gt; +    constexpr size_t maximumStringLength = 517888;

Why don&apos;t we limit to std::limits&lt;uint16_t&gt;::max() or even std::limits&lt;int16_t&gt;::max()?
This magic number seems arbitrary.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748126</commentid>
    <comment_count>6</comment_count>
      <attachid>425397</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-04-07 16:14:32 -0700</bug_when>
    <thetext>Comment on attachment 425397
Patch

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

&gt; Source/WebCore/page/DOMWindow.cpp:1203
&gt; +    if (!isCurrentlyDisplayedInFrame() || string.length() &gt; maximumStringLength)

I guess another option is to truncate the first N characters.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748221</commentid>
    <comment_count>7</comment_count>
      <attachid>425397</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-04-08 00:26:11 -0700</bug_when>
    <thetext>Comment on attachment 425397
Patch

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

&gt;&gt; Source/WebCore/page/DOMWindow.cpp:1202
&gt;&gt; +    constexpr size_t maximumStringLength = 517888;
&gt; 
&gt; Why don&apos;t we limit to std::limits&lt;uint16_t&gt;::max() or even std::limits&lt;int16_t&gt;::max()?
&gt; This magic number seems arbitrary.

Right, actually I had done that initially. According to https://en.cppreference.com/w/c/types/size_t so &quot;The bit width of size_t is not less than 16&quot; so I also had thought about std::limits&lt;uint16_t&gt;::max() / 8.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748269</commentid>
    <comment_count>8</comment_count>
      <attachid>425497</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-04-08 04:38:49 -0700</bug_when>
    <thetext>Created attachment 425497
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748270</commentid>
    <comment_count>9</comment_count>
      <attachid>425397</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-04-08 04:40:06 -0700</bug_when>
    <thetext>Comment on attachment 425397
Patch

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

&gt;&gt;&gt; Source/WebCore/page/DOMWindow.cpp:1202
&gt;&gt;&gt; +    constexpr size_t maximumStringLength = 517888;
&gt;&gt; 
&gt;&gt; Why don&apos;t we limit to std::limits&lt;uint16_t&gt;::max() or even std::limits&lt;int16_t&gt;::max()?
&gt;&gt; This magic number seems arbitrary.
&gt; 
&gt; Right, actually I had done that initially. According to https://en.cppreference.com/w/c/types/size_t so &quot;The bit width of size_t is not less than 16&quot; so I also had thought about std::limits&lt;uint16_t&gt;::max() / 8.

Done.

&gt;&gt; Source/WebCore/page/DOMWindow.cpp:1203
&gt;&gt; +    if (!isCurrentlyDisplayedInFrame() || string.length() &gt; maximumStringLength)
&gt; 
&gt; I guess another option is to truncate the first N characters.

Do you want that? It looks truncate or substring would require an extra copy, but maybe I&apos;m missing how to create a string view.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748311</commentid>
    <comment_count>10</comment_count>
      <attachid>425397</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-04-08 08:58:56 -0700</bug_when>
    <thetext>Comment on attachment 425397
Patch

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

&gt;&gt;&gt;&gt; Source/WebCore/page/DOMWindow.cpp:1202
&gt;&gt;&gt;&gt; +    constexpr size_t maximumStringLength = 517888;
&gt;&gt;&gt; 
&gt;&gt;&gt; Why don&apos;t we limit to std::limits&lt;uint16_t&gt;::max() or even std::limits&lt;int16_t&gt;::max()?
&gt;&gt;&gt; This magic number seems arbitrary.
&gt;&gt; 
&gt;&gt; Right, actually I had done that initially. According to https://en.cppreference.com/w/c/types/size_t so &quot;The bit width of size_t is not less than 16&quot; so I also had thought about std::limits&lt;uint16_t&gt;::max() / 8.
&gt; 
&gt; Done.

I don’t care deeply about this, but fo me the largest 16-bit or 15-bit value is also arbitrary, and worse, implies this is about some 16-bit issues somewhere in the code. Hiding the magic number behind a formula doesn’t make it any less an arbitrary number. I would prefer a rationale comment that explains why the number is not too low. The current comment explains only why we have a limit, but a better one also says why this is a good choice for that limit.

&gt;&gt;&gt; Source/WebCore/page/DOMWindow.cpp:1203
&gt;&gt;&gt; +    if (!isCurrentlyDisplayedInFrame() || string.length() &gt; maximumStringLength)
&gt;&gt; 
&gt;&gt; I guess another option is to truncate the first N characters.
&gt; 
&gt; Do you want that? It looks truncate or substring would require an extra copy, but maybe I&apos;m missing how to create a string view.

I prefer failing. Creating a StringView is really easy but I don’t think it would enhance any user’s experience. “Searching for the wrong thing.”</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748315</commentid>
    <comment_count>11</comment_count>
      <attachid>425397</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-04-08 09:12:29 -0700</bug_when>
    <thetext>Comment on attachment 425397
Patch

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

&gt;&gt;&gt;&gt;&gt; Source/WebCore/page/DOMWindow.cpp:1202
&gt;&gt;&gt;&gt;&gt; +    constexpr size_t maximumStringLength = 517888;
&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt; Why don&apos;t we limit to std::limits&lt;uint16_t&gt;::max() or even std::limits&lt;int16_t&gt;::max()?
&gt;&gt;&gt;&gt; This magic number seems arbitrary.
&gt;&gt;&gt; 
&gt;&gt;&gt; Right, actually I had done that initially. According to https://en.cppreference.com/w/c/types/size_t so &quot;The bit width of size_t is not less than 16&quot; so I also had thought about std::limits&lt;uint16_t&gt;::max() / 8.
&gt;&gt; 
&gt;&gt; Done.
&gt; 
&gt; I don’t care deeply about this, but fo me the largest 16-bit or 15-bit value is also arbitrary, and worse, implies this is about some 16-bit issues somewhere in the code. Hiding the magic number behind a formula doesn’t make it any less an arbitrary number. I would prefer a rationale comment that explains why the number is not too low. The current comment explains only why we have a limit, but a better one also says why this is a good choice for that limit.

I agree, but I&apos;m not sure what an explanation would be... Even the min buffer size is currently 8192 which corresponds to a string of length 1024. This already looks like a quite big to me to be honest.... Maybe argue that pages are generally a few kbytes, so something like 64 * 1024 makes sense?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748318</commentid>
    <comment_count>12</comment_count>
      <attachid>425397</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-04-08 09:15:33 -0700</bug_when>
    <thetext>Comment on attachment 425397
Patch

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

&gt;&gt;&gt;&gt;&gt;&gt; Source/WebCore/page/DOMWindow.cpp:1202
&gt;&gt;&gt;&gt;&gt;&gt; +    constexpr size_t maximumStringLength = 517888;
&gt;&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt;&gt; Why don&apos;t we limit to std::limits&lt;uint16_t&gt;::max() or even std::limits&lt;int16_t&gt;::max()?
&gt;&gt;&gt;&gt;&gt; This magic number seems arbitrary.
&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt; Right, actually I had done that initially. According to https://en.cppreference.com/w/c/types/size_t so &quot;The bit width of size_t is not less than 16&quot; so I also had thought about std::limits&lt;uint16_t&gt;::max() / 8.
&gt;&gt;&gt; 
&gt;&gt;&gt; Done.
&gt;&gt; 
&gt;&gt; I don’t care deeply about this, but fo me the largest 16-bit or 15-bit value is also arbitrary, and worse, implies this is about some 16-bit issues somewhere in the code. Hiding the magic number behind a formula doesn’t make it any less an arbitrary number. I would prefer a rationale comment that explains why the number is not too low. The current comment explains only why we have a limit, but a better one also says why this is a good choice for that limit.
&gt; 
&gt; I agree, but I&apos;m not sure what an explanation would be... Even the min buffer size is currently 8192 which corresponds to a string of length 1024. This already looks like a quite big to me to be honest.... Maybe argue that pages are generally a few kbytes, so something like 64 * 1024 makes sense?

Since the search buffer allocates memory much larger than the string being searched for, can’t have too massive a limit. It doesn’t seem necessary to support searching for super giant search strings like entire webpages. Most searches are for a phrase or a paragraph not “search“ for an entire document. Thus this number seems reasonable. Something along those lines is the thinking; not sure how to write a succinct comment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748346</commentid>
    <comment_count>13</comment_count>
      <attachid>425519</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-04-08 10:36:50 -0700</bug_when>
    <thetext>Created attachment 425519
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748352</commentid>
    <comment_count>14</comment_count>
      <attachid>425519</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-04-08 10:47:44 -0700</bug_when>
    <thetext>Comment on attachment 425519
Patch for landing

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

&gt; LayoutTests/ChangeLog:11
&gt; +        * editing/find/find-long-string-crash-expected.txt: Added.
&gt; +        * editing/find/find-long-string-crash.html: Added.

Seems like eventually we should also add a test with a string of the maximum length to make sure the search works, and a string just over the maximum length to make sure it does nothing as expected.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748400</commentid>
    <comment_count>15</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-04-08 11:53:37 -0700</bug_when>
    <thetext>There is no security concern here. Moving out of the security component.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748694</commentid>
    <comment_count>16</comment_count>
      <attachid>425609</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-04-09 04:47:28 -0700</bug_when>
    <thetext>Created attachment 425609
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748695</commentid>
    <comment_count>17</comment_count>
      <attachid>425519</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-04-09 04:48:19 -0700</bug_when>
    <thetext>Comment on attachment 425519
Patch for landing

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

&gt;&gt; LayoutTests/ChangeLog:11
&gt;&gt; +        * editing/find/find-long-string-crash.html: Added.
&gt; 
&gt; Seems like eventually we should also add a test with a string of the maximum length to make sure the search works, and a string just over the maximum length to make sure it does nothing as expected.

OK, done in the last patch uploaded.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748988</commentid>
    <comment_count>18</comment_count>
      <attachid>425683</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-04-10 04:05:22 -0700</bug_when>
    <thetext>Created attachment 425683
Patch for landing

fix the path to the JS resources</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749013</commentid>
    <comment_count>19</comment_count>
      <attachid>425683</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-04-10 11:50:12 -0700</bug_when>
    <thetext>Comment on attachment 425683
Patch for landing

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

&gt; Source/WebCore/page/DOMWindow.cpp:1203
&gt; +    constexpr size_t maximumStringLength = std::numeric_limits&lt;uint16_t&gt;::max();

Small nitpick that we don’t have to fix before landing: WTF::String lengths are not size_t, they are unsigned. But the type of this constant really doesn’t matter at all. I’d suggest auto instead of size_t. Or unsigned would also be OK. No real problem using size_t, but no need for a 64-bit constant for this purpose.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749167</commentid>
    <comment_count>20</comment_count>
      <attachid>425725</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-04-12 03:14:01 -0700</bug_when>
    <thetext>Created attachment 425725
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749190</commentid>
    <comment_count>21</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-12 05:26:50 -0700</bug_when>
    <thetext>Committed r275818 (236388@main): &lt;https://commits.webkit.org/236388@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 425725.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425397</attachid>
            <date>2021-04-07 08:30:47 -0700</date>
            <delta_ts>2021-04-08 04:38:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>0001-Bug-223787-Out-of-memory-crash-with-find-a-.repeat-2.patch</filename>
            <type>text/plain</type>
            <size>4098</size>
            <attacher name="Frédéric Wang Nélar">fred.wang</attacher>
            
              <data encoding="base64">RnJvbSA1NTU1NjBiYTVkYTNiYjc4ZTU4OTIzMTJlZDljMTM5OTY5Mzk0MmQ3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/RnI9QzM9QTlkPUMzPUE5cmljPTIwV2FuZz89
IDxmd2FuZ0BpZ2FsaWEuY29tPgpEYXRlOiBXZWQsIDcgQXByIDIwMjEgMTc6Mjk6MTUgKzAyMDAK
U3ViamVjdDogW1BBVENIXSBCdWcgMjIzNzg3IC0gT3V0IG9mIG1lbW9yeSBjcmFzaCB3aXRoIGZp
bmQoJ2EnLnJlcGVhdCgyKiozMCkpCgotLS0KIExheW91dFRlc3RzL0NoYW5nZUxvZyAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgMTIgKysrKysrKysrKysrCiAuLi4vZmluZC9maW5kLWxvbmct
c3RyaW5nLWNyYXNoLWV4cGVjdGVkLnR4dCAgICB8ICAxICsKIC4uLi9lZGl0aW5nL2ZpbmQvZmlu
ZC1sb25nLXN0cmluZy1jcmFzaC5odG1sICAgIHwgIDYgKysrKysrCiBTb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICB8IDE3ICsrKysrKysrKysrKysrKysrCiBT
b3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAgICAgICAgICAgICAgICB8ICA0ICsrKy0K
IDUgZmlsZXMgY2hhbmdlZCwgMzkgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRl
IG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2VkaXRpbmcvZmluZC9maW5kLWxvbmctc3RyaW5nLWNy
YXNoLWV4cGVjdGVkLnR4dAogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2VkaXRpbmcv
ZmluZC9maW5kLWxvbmctc3RyaW5nLWNyYXNoLmh0bWwKCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYjUyNGNmZjU5NC4uMGUz
YTQzMzJjNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIxLTA0LTA3ICBGcmVkZXJpYyBXYW5n
ICA8ZnJlZC53YW5nQGZyZWUuZnI+CisKKyAgICAgICAgT3V0IG9mIG1lbW9yeSBjcmFzaCB3aXRo
IGZpbmQoJ2EnLnJlcGVhdCgyKiozMCkpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjM3ODcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBBZGQgcmVncmVzc2lvbiB0ZXN0LgorCisgICAgICAgICogZWRpdGlu
Zy9maW5kL2ZpbmQtbG9uZy1zdHJpbmctY3Jhc2gtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBlZGl0aW5nL2ZpbmQvZmluZC1sb25nLXN0cmluZy1jcmFzaC5odG1sOiBBZGRlZC4KKwog
MjAyMS0wNC0wNiAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBsZS5jb20+CiAKICAgICAg
ICAgW2lPU11bRkNSXSBVc2Ugb3BhcXVlIHN5c3RlbSBjb2xvcnMgZm9yIGNvbnRyb2wgYmFja2dy
b3VuZHMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2VkaXRpbmcvZmluZC9maW5kLWxvbmctc3Ry
aW5nLWNyYXNoLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2VkaXRpbmcvZmluZC9maW5kLWxv
bmctc3RyaW5nLWNyYXNoLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwLi42NTRkZGY3ZjE3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZWRp
dGluZy9maW5kL2ZpbmQtbG9uZy1zdHJpbmctY3Jhc2gtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEg
QEAKK1RoaXMgdGVzdCBwYXNzZXMgaWYgaXQgZG9lcyBub3QgY3Jhc2guCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9lZGl0aW5nL2ZpbmQvZmluZC1sb25nLXN0cmluZy1jcmFzaC5odG1sIGIvTGF5
b3V0VGVzdHMvZWRpdGluZy9maW5kL2ZpbmQtbG9uZy1zdHJpbmctY3Jhc2guaHRtbApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwLi5lZmVkMDU1Yzc5Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9maW5kL2ZpbmQtbG9uZy1zdHJpbmctY3Jhc2guaHRt
bApAQCAtMCwwICsxLDYgQEAKKzxwPlRoaXMgdGVzdCBwYXNzZXMgaWYgaXQgZG9lcyBub3QgY3Jh
c2guPC9wPgorPHNjcmlwdD4KKyAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgIHRlc3RSdW5u
ZXIuZHVtcEFzVGV4dCgpOworICBmaW5kKCdhJy5yZXBlYXQoMioqMzApKTsKKzwvc2NyaXB0Pgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nCmluZGV4IGUyOTFmNDllY2EuLjY3ZTIzYjM3N2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwyMCBAQAorMjAyMS0wNC0wNyAgRnLDqWTDqXJpYyBXYW5nICA8ZndhbmdAaWdhbGlhLmNvbT4K
KworICAgICAgICBPdXQgb2YgbWVtb3J5IGNyYXNoIHdpdGggZmluZCgnYScucmVwZWF0KDIqKjMw
KSkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMzc4
NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFNlYXJj
aEJ1ZmZlcjo6U2VhcmNoQnVmZmVyIGFsbG9jYXRlcyBhIGJ1ZmZlciB3aG9zZSBjYXBhY2l0eSBp
cyBhdCBsZWFzdCA4IHRpbWVzIHRoZSBzaXplIG9mCisgICAgICAgIHRoZSBzZWFyY2hlZCB0ZXh0
IGFuZCBhdCBsZWFzdCA4MTkyLiBJdCdzIHBvc3NpYmxlIHRvIGhpdCBhbiBvdXQtb2YtbWVtb3J5
IGNyYXNoIGJ5IHBhc3NpbmcKKyAgICAgICAgYSB2ZXJ5IGxvbmcgc3RyaW5nIHRvIHdpbmRvdy5m
aW5kLiBTaW5jZSB0aGVyZSBpcyBubyByZWFzb24gdG8gc2VhcmNoIGZvciBhcmJpdHJhcnkgbGFy
Z2UKKyAgICAgICAgdGV4dCwgbGltaXQgaXQgdG8gYSBtYXhpbXVtIGxlbmd0aCB0aGFuIGlzIGxh
cmdlciB0aGFuIDEwMjQgPSA4MTkyLzguCisKKyAgICAgICAgVGVzdDogZWRpdGluZy9maW5kL2Zp
bmQtbG9uZy1zdHJpbmctY3Jhc2guaHRtbAorCisgICAgICAgICogcGFnZS9ET01XaW5kb3cuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93OjpmaW5kIGNvbnN0KTogRXhpdCBlYXJseSBp
ZiB0aGUgc3RyaW5nIGxlbmd0aCBpcyBsYXJnZXIgdGhhbiBhIGxpbWl0LgorCiAyMDIxLTA0LTA2
ICBBZGl0eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXVtG
Q1JdIFVzZSBvcGFxdWUgc3lzdGVtIGNvbG9ycyBmb3IgY29udHJvbCBiYWNrZ3JvdW5kcwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9ET01XaW5kb3cuY3BwCmluZGV4IDRhZWVlZTEwZWIuLmZhZWVhZmFlZjUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0RPTVdpbmRvdy5jcHAKQEAgLTExOTgsNyArMTE5OCw5IEBAIFN0cmluZyBET01X
aW5kb3c6OnByb21wdChjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgZGVmYXVs
dFZhbHVlKQogCiBib29sIERPTVdpbmRvdzo6ZmluZChjb25zdCBTdHJpbmcmIHN0cmluZywgYm9v
bCBjYXNlU2Vuc2l0aXZlLCBib29sIGJhY2t3YXJkcywgYm9vbCB3cmFwLCBib29sIC8qd2hvbGVX
b3JkKi8sIGJvb2wgLypzZWFyY2hJbkZyYW1lcyovLCBib29sIC8qc2hvd0RpYWxvZyovKSBjb25z
dAogewotICAgIGlmICghaXNDdXJyZW50bHlEaXNwbGF5ZWRJbkZyYW1lKCkpCisgICAgLy8gTGlt
aXQgdGhlIG1heGltdW0gbGVuZ3RoIHRvIHByZXZlbnQgYW55IG91dC1vZi1tZW1vcnkgY3Jhc2gg
aW4gU2VhcmNoQnVmZmVyOjpTZWFyY2hCdWZmZXIuCisgICAgY29uc3RleHByIHNpemVfdCBtYXhp
bXVtU3RyaW5nTGVuZ3RoID0gNTE3ODg4OworICAgIGlmICghaXNDdXJyZW50bHlEaXNwbGF5ZWRJ
bkZyYW1lKCkgfHwgc3RyaW5nLmxlbmd0aCgpID4gbWF4aW11bVN0cmluZ0xlbmd0aCkKICAgICAg
ICAgcmV0dXJuIGZhbHNlOwogCiAgICAgLy8gRklYTUUgKDEzMDE2KTogU3VwcG9ydCB3aG9sZVdv
cmQsIHNlYXJjaEluRnJhbWVzIGFuZCBzaG93RGlhbG9nLiAgICAKLS0gCjIuMjUuMQoK
</data>
<flag name="review"
          id="445338"
          type_id="1"
          status="+"
          setter="rniwa"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425497</attachid>
            <date>2021-04-08 04:38:49 -0700</date>
            <delta_ts>2021-04-08 10:36:50 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>0001-Bug-223787-Out-of-memory-crash-with-find-a-.repeat-2.patch</filename>
            <type>text/plain</type>
            <size>4124</size>
            <attacher name="Frédéric Wang Nélar">fred.wang</attacher>
            
              <data encoding="base64">RnJvbSA1YTgwYjFhMzhjZTYzYzNmNDQzZDJiYmVmMTMzNTQyZDRkMmFhYmIxIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/RnI9QzM9QTlkPUMzPUE5cmljPTIwV2FuZz89
IDxmd2FuZ0BpZ2FsaWEuY29tPgpEYXRlOiBXZWQsIDcgQXByIDIwMjEgMTc6Mjk6MTUgKzAyMDAK
U3ViamVjdDogW1BBVENIXSBCdWcgMjIzNzg3IC0gT3V0IG9mIG1lbW9yeSBjcmFzaCB3aXRoIGZp
bmQoJ2EnLnJlcGVhdCgyKiozMCkpCgotLS0KIExheW91dFRlc3RzL0NoYW5nZUxvZyAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgMTIgKysrKysrKysrKysrCiAuLi4vZmluZC9maW5kLWxvbmct
c3RyaW5nLWNyYXNoLWV4cGVjdGVkLnR4dCAgICB8ICAxICsKIC4uLi9lZGl0aW5nL2ZpbmQvZmlu
ZC1sb25nLXN0cmluZy1jcmFzaC5odG1sICAgIHwgIDYgKysrKysrCiBTb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICB8IDE3ICsrKysrKysrKysrKysrKysrCiBT
b3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAgICAgICAgICAgICAgICB8ICA0ICsrKy0K
IDUgZmlsZXMgY2hhbmdlZCwgMzkgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRl
IG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2VkaXRpbmcvZmluZC9maW5kLWxvbmctc3RyaW5nLWNy
YXNoLWV4cGVjdGVkLnR4dAogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2VkaXRpbmcv
ZmluZC9maW5kLWxvbmctc3RyaW5nLWNyYXNoLmh0bWwKCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYjUyNGNmZjU5NC4uYjY3
YTBiYjFmYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIxLTA0LTA3ICBGcmVkZXJpYyBXYW5n
ICA8ZnJlZC53YW5nQGZyZWUuZnI+CisKKyAgICAgICAgT3V0IG9mIG1lbW9yeSBjcmFzaCB3aXRo
IGZpbmQoJ2EnLnJlcGVhdCgyKiozMCkpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjM3ODcKKworICAgICAgICBSZXZpZXdlZCBieSBSeW9zdWtlIE5p
d2EuCisKKyAgICAgICAgQWRkIHJlZ3Jlc3Npb24gdGVzdC4KKworICAgICAgICAqIGVkaXRpbmcv
ZmluZC9maW5kLWxvbmctc3RyaW5nLWNyYXNoLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogZWRpdGluZy9maW5kL2ZpbmQtbG9uZy1zdHJpbmctY3Jhc2guaHRtbDogQWRkZWQuCisKIDIw
MjEtMDQtMDYgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29tPgogCiAgICAgICAg
IFtpT1NdW0ZDUl0gVXNlIG9wYXF1ZSBzeXN0ZW0gY29sb3JzIGZvciBjb250cm9sIGJhY2tncm91
bmRzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL2ZpbmQvZmluZC1sb25nLXN0cmlu
Zy1jcmFzaC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL2ZpbmQvZmluZC1sb25n
LXN0cmluZy1jcmFzaC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMC4uNjU0ZGRmN2YxNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2VkaXRp
bmcvZmluZC9maW5kLWxvbmctc3RyaW5nLWNyYXNoLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBA
CitUaGlzIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXMgbm90IGNyYXNoLgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZWRpdGluZy9maW5kL2ZpbmQtbG9uZy1zdHJpbmctY3Jhc2guaHRtbCBiL0xheW91
dFRlc3RzL2VkaXRpbmcvZmluZC9maW5kLWxvbmctc3RyaW5nLWNyYXNoLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMC4uZWZlZDA1NWM3OQotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2VkaXRpbmcvZmluZC9maW5kLWxvbmctc3RyaW5nLWNyYXNoLmh0bWwK
QEAgLTAsMCArMSw2IEBACis8cD5UaGlzIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXMgbm90IGNyYXNo
LjwvcD4KKzxzY3JpcHQ+CisgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICB0ZXN0UnVubmVy
LmR1bXBBc1RleHQoKTsKKyAgZmluZCgnYScucmVwZWF0KDIqKjMwKSk7Cis8L3NjcmlwdD4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwppbmRleCBlMjkxZjQ5ZWNhLi5lNjdiMTAxYjYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MjAgQEAKKzIwMjEtMDQtMDcgIEZyw6lkw6lyaWMgV2FuZyAgPGZ3YW5nQGlnYWxpYS5jb20+CisK
KyAgICAgICAgT3V0IG9mIG1lbW9yeSBjcmFzaCB3aXRoIGZpbmQoJ2EnLnJlcGVhdCgyKiozMCkp
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM3ODcK
KworICAgICAgICBSZXZpZXdlZCBieSBSeW9zdWtlIE5pd2EuCisKKyAgICAgICAgU2VhcmNoQnVm
ZmVyOjpTZWFyY2hCdWZmZXIgYWxsb2NhdGVzIGEgYnVmZmVyIHdob3NlIGNhcGFjaXR5IGlzIGF0
IGxlYXN0IDggdGltZXMgdGhlIHNpemUgb2YKKyAgICAgICAgdGhlIHNlYXJjaGVkIHRleHQgYW5k
IGF0IGxlYXN0IDgxOTIuIEl0J3MgcG9zc2libGUgdG8gaGl0IGFuIG91dC1vZi1tZW1vcnkgY3Jh
c2ggYnkgcGFzc2luZworICAgICAgICBhIHZlcnkgbG9uZyBzdHJpbmcgdG8gd2luZG93LmZpbmQu
IFNpbmNlIHRoZXJlIGlzIG5vIHJlYXNvbiB0byBzZWFyY2ggZm9yIGFyYml0cmFyeSBsYXJnZQor
ICAgICAgICB0ZXh0LCBsaW1pdCBpdCB0byBhIG1heGltdW0gbGVuZ3RoIHRoYW4gaXMgbGFyZ2Vy
IHRoYW4gMTAyNCA9IDgxOTIvOC4KKworICAgICAgICBUZXN0OiBlZGl0aW5nL2ZpbmQvZmluZC1s
b25nLXN0cmluZy1jcmFzaC5odG1sCisKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpET01XaW5kb3c6OmZpbmQgY29uc3QpOiBFeGl0IGVhcmx5IGlmIHRo
ZSBzdHJpbmcgbGVuZ3RoIGlzIGxhcmdlciB0aGFuIGEgbGltaXQuCisKIDIwMjEtMDQtMDYgIEFk
aXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29tPgogCiAgICAgICAgIFtpT1NdW0ZDUl0g
VXNlIG9wYXF1ZSBzeXN0ZW0gY29sb3JzIGZvciBjb250cm9sIGJhY2tncm91bmRzCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0RPTVdpbmRvdy5jcHAKaW5kZXggNGFlZWVlMTBlYi4uYTgwYzI1OTkyZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvRE9NV2luZG93LmNwcApAQCAtMTE5OCw3ICsxMTk4LDkgQEAgU3RyaW5nIERPTVdpbmRv
dzo6cHJvbXB0KGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBkZWZhdWx0VmFs
dWUpCiAKIGJvb2wgRE9NV2luZG93OjpmaW5kKGNvbnN0IFN0cmluZyYgc3RyaW5nLCBib29sIGNh
c2VTZW5zaXRpdmUsIGJvb2wgYmFja3dhcmRzLCBib29sIHdyYXAsIGJvb2wgLyp3aG9sZVdvcmQq
LywgYm9vbCAvKnNlYXJjaEluRnJhbWVzKi8sIGJvb2wgLypzaG93RGlhbG9nKi8pIGNvbnN0CiB7
Ci0gICAgaWYgKCFpc0N1cnJlbnRseURpc3BsYXllZEluRnJhbWUoKSkKKyAgICAvLyBMaW1pdCB0
aGUgbWF4aW11bSBsZW5ndGggdG8gcHJldmVudCBhbnkgb3V0LW9mLW1lbW9yeSBjcmFzaCBpbiBT
ZWFyY2hCdWZmZXI6OlNlYXJjaEJ1ZmZlci4KKyAgICBjb25zdGV4cHIgc2l6ZV90IG1heGltdW1T
dHJpbmdMZW5ndGggPSBzdGQ6Om51bWVyaWNfbGltaXRzPHVpbnQxNl90Pjo6bWF4KCk7CisgICAg
aWYgKCFpc0N1cnJlbnRseURpc3BsYXllZEluRnJhbWUoKSB8fCBzdHJpbmcubGVuZ3RoKCkgPiBt
YXhpbXVtU3RyaW5nTGVuZ3RoKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICAvLyBGSVhN
RSAoMTMwMTYpOiBTdXBwb3J0IHdob2xlV29yZCwgc2VhcmNoSW5GcmFtZXMgYW5kIHNob3dEaWFs
b2cuICAgIAotLSAKMi4yNS4xCgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425519</attachid>
            <date>2021-04-08 10:36:50 -0700</date>
            <delta_ts>2021-04-09 04:47:28 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>0001-Bug-223787-Out-of-memory-crash-with-find-a-.repeat-2.patch</filename>
            <type>text/plain</type>
            <size>4230</size>
            <attacher name="Frédéric Wang Nélar">fred.wang</attacher>
            
              <data encoding="base64">RnJvbSA1Y2U4MTliYmZmMGE2Y2NiZTJjODJkYmEzNTZkYmY1MDc4NjlmYTcwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/RnI9QzM9QTlkPUMzPUE5cmljPTIwV2FuZz89
IDxmd2FuZ0BpZ2FsaWEuY29tPgpEYXRlOiBXZWQsIDcgQXByIDIwMjEgMTc6Mjk6MTUgKzAyMDAK
U3ViamVjdDogW1BBVENIXSBCdWcgMjIzNzg3IC0gT3V0IG9mIG1lbW9yeSBjcmFzaCB3aXRoIGZp
bmQoJ2EnLnJlcGVhdCgyKiozMCkpCgotLS0KIExheW91dFRlc3RzL0NoYW5nZUxvZyAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgMTIgKysrKysrKysrKysrCiAuLi4vZmluZC9maW5kLWxvbmct
c3RyaW5nLWNyYXNoLWV4cGVjdGVkLnR4dCAgICB8ICAxICsKIC4uLi9lZGl0aW5nL2ZpbmQvZmlu
ZC1sb25nLXN0cmluZy1jcmFzaC5odG1sICAgIHwgIDYgKysrKysrCiBTb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICB8IDE3ICsrKysrKysrKysrKysrKysrCiBT
b3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAgICAgICAgICAgICAgICB8ICA1ICsrKyst
CiA1IGZpbGVzIGNoYW5nZWQsIDQwIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKIGNyZWF0
ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0cy9lZGl0aW5nL2ZpbmQvZmluZC1sb25nLXN0cmluZy1j
cmFzaC1leHBlY3RlZC50eHQKIGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0cy9lZGl0aW5n
L2ZpbmQvZmluZC1sb25nLXN0cmluZy1jcmFzaC5odG1sCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGI1MjRjZmY1OTQuLmI2
N2EwYmIxZmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMS0wNC0wNyAgRnJlZGVyaWMgV2Fu
ZyAgPGZyZWQud2FuZ0BmcmVlLmZyPgorCisgICAgICAgIE91dCBvZiBtZW1vcnkgY3Jhc2ggd2l0
aCBmaW5kKCdhJy5yZXBlYXQoMioqMzApKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjIzNzg3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgUnlvc3VrZSBO
aXdhLgorCisgICAgICAgIEFkZCByZWdyZXNzaW9uIHRlc3QuCisKKyAgICAgICAgKiBlZGl0aW5n
L2ZpbmQvZmluZC1sb25nLXN0cmluZy1jcmFzaC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGVkaXRpbmcvZmluZC9maW5kLWxvbmctc3RyaW5nLWNyYXNoLmh0bWw6IEFkZGVkLgorCiAy
MDIxLTA0LTA2ICBBZGl0eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbaU9TXVtGQ1JdIFVzZSBvcGFxdWUgc3lzdGVtIGNvbG9ycyBmb3IgY29udHJvbCBiYWNrZ3Jv
dW5kcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9maW5kL2ZpbmQtbG9uZy1zdHJp
bmctY3Jhc2gtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZWRpdGluZy9maW5kL2ZpbmQtbG9u
Zy1zdHJpbmctY3Jhc2gtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAuLjY1NGRkZjdmMTcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0
aW5nL2ZpbmQvZmluZC1sb25nLXN0cmluZy1jcmFzaC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBA
QAorVGhpcyB0ZXN0IHBhc3NlcyBpZiBpdCBkb2VzIG5vdCBjcmFzaC4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2VkaXRpbmcvZmluZC9maW5kLWxvbmctc3RyaW5nLWNyYXNoLmh0bWwgYi9MYXlv
dXRUZXN0cy9lZGl0aW5nL2ZpbmQvZmluZC1sb25nLXN0cmluZy1jcmFzaC5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAuLmVmZWQwNTVjNzkKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL2ZpbmQvZmluZC1sb25nLXN0cmluZy1jcmFzaC5odG1s
CkBAIC0wLDAgKzEsNiBAQAorPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiBpdCBkb2VzIG5vdCBjcmFz
aC48L3A+Cis8c2NyaXB0PgorICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgdGVzdFJ1bm5l
ci5kdW1wQXNUZXh0KCk7CisgIGZpbmQoJ2EnLnJlcGVhdCgyKiozMCkpOworPC9zY3JpcHQ+CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cKaW5kZXggZTI5MWY0OWVjYS4uYTMxZjcyYjk4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDIwIEBACisyMDIxLTA0LTA3ICBGcsOpZMOpcmljIFdhbmcgIDxmd2FuZ0BpZ2FsaWEuY29tPgor
CisgICAgICAgIE91dCBvZiBtZW1vcnkgY3Jhc2ggd2l0aCBmaW5kKCdhJy5yZXBlYXQoMioqMzAp
KQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzNzg3
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgUnlvc3VrZSBOaXdhLgorCisgICAgICAgIFNlYXJjaEJ1
ZmZlcjo6U2VhcmNoQnVmZmVyIGFsbG9jYXRlcyBhIGJ1ZmZlciB3aG9zZSBjYXBhY2l0eSBpcyBh
dCBsZWFzdCA4IHRpbWVzIHRoZSBzaXplIG9mCisgICAgICAgIHRoZSBzZWFyY2hlZCB0ZXh0IGFu
ZCBhdCBsZWFzdCA4MTkyLiBJdCdzIHBvc3NpYmxlIHRvIGhpdCBhbiBvdXQtb2YtbWVtb3J5IGNy
YXNoIGJ5IHBhc3NpbmcKKyAgICAgICAgYSB2ZXJ5IGxvbmcgc3RyaW5nIHRvIHdpbmRvdy5maW5k
LiBTaW5jZSB0aGVyZSBpcyBubyByZWFzb24gdG8gc2VhcmNoIGZvciBhcmJpdHJhcnkgbGFyZ2UK
KyAgICAgICAgdGV4dCwgbGltaXQgaXQgdG8gYSBtYXhpbXVtIGxlbmd0aCBvZiA2NGtCLgorCisg
ICAgICAgIFRlc3Q6IGVkaXRpbmcvZmluZC9maW5kLWxvbmctc3RyaW5nLWNyYXNoLmh0bWwKKwor
ICAgICAgICAqIHBhZ2UvRE9NV2luZG93LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRPTVdpbmRv
dzo6ZmluZCBjb25zdCk6IEV4aXQgZWFybHkgaWYgdGhlIHN0cmluZyBsZW5ndGggaXMgbGFyZ2Vy
IHRoYW4gYSBsaW1pdC4KKwogMjAyMS0wNC0wNiAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBh
cHBsZS5jb20+CiAKICAgICAgICAgW2lPU11bRkNSXSBVc2Ugb3BhcXVlIHN5c3RlbSBjb2xvcnMg
Zm9yIGNvbnRyb2wgYmFja2dyb3VuZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
RE9NV2luZG93LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcAppbmRleCA0
YWVlZWUxMGViLi4xNjBiMjhkZjk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RP
TVdpbmRvdy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwCkBAIC0x
MTk4LDcgKzExOTgsMTAgQEAgU3RyaW5nIERPTVdpbmRvdzo6cHJvbXB0KGNvbnN0IFN0cmluZyYg
bWVzc2FnZSwgY29uc3QgU3RyaW5nJiBkZWZhdWx0VmFsdWUpCiAKIGJvb2wgRE9NV2luZG93Ojpm
aW5kKGNvbnN0IFN0cmluZyYgc3RyaW5nLCBib29sIGNhc2VTZW5zaXRpdmUsIGJvb2wgYmFja3dh
cmRzLCBib29sIHdyYXAsIGJvb2wgLyp3aG9sZVdvcmQqLywgYm9vbCAvKnNlYXJjaEluRnJhbWVz
Ki8sIGJvb2wgLypzaG93RGlhbG9nKi8pIGNvbnN0CiB7Ci0gICAgaWYgKCFpc0N1cnJlbnRseURp
c3BsYXllZEluRnJhbWUoKSkKKyAgICAvLyBTZWFyY2hCdWZmZXIgYWxsb2NhdGVzIG1lbW9yeSBt
dWNoIGxhcmdlciB0aGFuIHRoZSBzZWFyY2hlZCBzdHJpbmcsIHNvIGl0J3MgbmVjZXNzYXJ5IHRv
IGxpbWl0IGl0cyBsZW5ndGguCisgICAgLy8gTW9zdCBzZWFyY2hlcyBhcmUgZm9yIGEgcGhyYXNl
IG9yIGEgcGFyYWdyYXBoLCBzbyBhbiB1cHBlciBsaW1pdCBvZiA2NGtCIGlzIG1vcmUgdGhhbiBl
bm91Z2ggaW4gcHJhY3RpY2UuCisgICAgY29uc3RleHByIHNpemVfdCBtYXhpbXVtU3RyaW5nTGVu
Z3RoID0gc3RkOjpudW1lcmljX2xpbWl0czx1aW50MTZfdD46Om1heCgpOworICAgIGlmICghaXND
dXJyZW50bHlEaXNwbGF5ZWRJbkZyYW1lKCkgfHwgc3RyaW5nLmxlbmd0aCgpID4gbWF4aW11bVN0
cmluZ0xlbmd0aCkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgLy8gRklYTUUgKDEzMDE2
KTogU3VwcG9ydCB3aG9sZVdvcmQsIHNlYXJjaEluRnJhbWVzIGFuZCBzaG93RGlhbG9nLiAgICAK
LS0gCjIuMjUuMQoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425609</attachid>
            <date>2021-04-09 04:47:28 -0700</date>
            <delta_ts>2021-04-10 04:05:22 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>0001-Bug-223787-Out-of-memory-crash-with-find-a-.repeat-2.patch</filename>
            <type>text/plain</type>
            <size>6369</size>
            <attacher name="Frédéric Wang Nélar">fred.wang</attacher>
            
              <data encoding="base64">RnJvbSBkYWNlZjJiOTcyZWY0OWMwZTNlMTY2MjgzZTJkMTUyMDc0OWFjZjMzIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/RnI9QzM9QTlkPUMzPUE5cmljPTIwV2FuZz89
IDxmd2FuZ0BpZ2FsaWEuY29tPgpEYXRlOiBXZWQsIDcgQXByIDIwMjEgMTc6Mjk6MTUgKzAyMDAK
U3ViamVjdDogW1BBVENIXSBCdWcgMjIzNzg3IC0gT3V0IG9mIG1lbW9yeSBjcmFzaCB3aXRoIGZp
bmQoJ2EnLnJlcGVhdCgyKiozMCkpCgotLS0KIExheW91dFRlc3RzL0NoYW5nZUxvZyAgICAgICAg
ICAgICAgICAgICAgICAgICB8IDEyICsrKysrKwogLi4uL2ZpbmQvZmluZC1sb25nLXN0cmluZy1j
cmFzaC1leHBlY3RlZC50eHQgIHwgIDEgKwogLi4uL2ZpbmQtc2hvcnQtYW5kLWxvbmctc3RyaW5n
cy1leHBlY3RlZC50eHQgIHwgMTAgKysrKysKIC4uLi9maW5kL2ZpbmQtc2hvcnQtYW5kLWxvbmct
c3RyaW5ncy5odG1sICAgICB8IDQyICsrKysrKysrKysrKysrKysrKysKIFNvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICB8IDE3ICsrKysrKysrCiBTb3VyY2UvV2Vi
Q29yZS9wYWdlL0RPTVdpbmRvdy5jcHAgICAgICAgICAgICAgfCAgNSArKy0KIDYgZmlsZXMgY2hh
bmdlZCwgODYgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0
IExheW91dFRlc3RzL2VkaXRpbmcvZmluZC9maW5kLWxvbmctc3RyaW5nLWNyYXNoLWV4cGVjdGVk
LnR4dAogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2VkaXRpbmcvZmluZC9maW5kLXNo
b3J0LWFuZC1sb25nLXN0cmluZ3MtZXhwZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5
b3V0VGVzdHMvZWRpdGluZy9maW5kL2ZpbmQtc2hvcnQtYW5kLWxvbmctc3RyaW5ncy5odG1sCgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CmluZGV4IGI1MjRjZmY1OTQuLjhkNWQ3NDk1MjUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0No
YW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAy
MS0wNC0wNyAgRnJlZGVyaWMgV2FuZyAgPGZyZWQud2FuZ0BmcmVlLmZyPgorCisgICAgICAgIE91
dCBvZiBtZW1vcnkgY3Jhc2ggd2l0aCBmaW5kKCdhJy5yZXBlYXQoMioqMzApKQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzNzg3CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgUnlvc3VrZSBOaXdhLgorCisgICAgICAgIEFkZCByZWdyZXNzaW9uIHRlc3Qu
CisKKyAgICAgICAgKiBlZGl0aW5nL2ZpbmQvZmluZC1zaG9ydC1hbmQtbG9uZy1zdHJpbmdzLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9maW5kL2ZpbmQtc2hvcnQtYW5k
LWxvbmctc3RyaW5ncy5odG1sOiBBZGRlZC4KKwogMjAyMS0wNC0wNiAgQWRpdHlhIEtlZXJ0aGkg
IDxha2VlcnRoaUBhcHBsZS5jb20+CiAKICAgICAgICAgW2lPU11bRkNSXSBVc2Ugb3BhcXVlIHN5
c3RlbSBjb2xvcnMgZm9yIGNvbnRyb2wgYmFja2dyb3VuZHMKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2VkaXRpbmcvZmluZC9maW5kLWxvbmctc3RyaW5nLWNyYXNoLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2VkaXRpbmcvZmluZC9maW5kLWxvbmctc3RyaW5nLWNyYXNoLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwLi42NTRkZGY3ZjE3Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9maW5kL2ZpbmQtbG9uZy1zdHJpbmct
Y3Jhc2gtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1RoaXMgdGVzdCBwYXNzZXMgaWYgaXQg
ZG9lcyBub3QgY3Jhc2guCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL2ZpbmQvZmlu
ZC1zaG9ydC1hbmQtbG9uZy1zdHJpbmdzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2VkaXRp
bmcvZmluZC9maW5kLXNob3J0LWFuZC1sb25nLXN0cmluZ3MtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAuLjA0ODViY2Y4ZjMKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL2ZpbmQvZmluZC1zaG9ydC1hbmQtbG9uZy1zdHJpbmdz
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitQQVNTIHRleHRDb250ZW50LmlubmVyVGV4
dC5sZW5ndGggaXMgMioqMTYKK1BBU1Mgd2luZG93LmZpbmQoJ2InKSBpcyBmYWxzZQorUEFTUyB3
aW5kb3cuZmluZCgnYScucmVwZWF0KDIqKjUpKSBpcyB0cnVlCitQQVNTIHdpbmRvdy5maW5kKCdh
Jy5yZXBlYXQoMioqMTYgLSAxKSkgaXMgdHJ1ZQorUEFTUyB3aW5kb3cuZmluZCgnYScucmVwZWF0
KDIqKjE2KSkgaXMgZmFsc2UKK1BBU1Mgd2luZG93LmZpbmQoJ2EnLnJlcGVhdCgyKiozMCkpIGlz
IGZhbHNlCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUK
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9maW5kL2ZpbmQtc2hvcnQtYW5kLWxv
bmctc3RyaW5ncy5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9maW5kL2ZpbmQtc2hvcnQtYW5k
LWxvbmctc3RyaW5ncy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAu
LmE5NjZhNWZmOTAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL2ZpbmQv
ZmluZC1zaG9ydC1hbmQtbG9uZy1zdHJpbmdzLmh0bWwKQEAgLTAsMCArMSw0MiBAQAorPCFkb2N0
eXBlPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvanMtdGVz
dC1wcmUuanMiPjwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5PgorICAgIDxwIGlkPSJkZXNj
cmlwdGlvbiI+PC9wPgorICAgIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorICAgIDxkaXYgaWQ9
InRleHRDb250ZW50Ij48L2Rpdj4KKyAgICA8c2NyaXB0PgorICAgICAgaWYgKHdpbmRvdy50ZXN0
UnVubmVyKQorICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAvLyBQ
dXQgdGV4dCBjb250ZW50IG9uIHRoZSBwYWdlIHdpdGggMl4xNiAnYScgY2hhcmFjdGVycy4KKyAg
ICAgIHRleHRDb250ZW50LmFwcGVuZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgnYScucmVwZWF0
KDIqKjE1KSkpOworICAgICAgdGV4dENvbnRlbnQuYXBwZW5kKGRvY3VtZW50LmNyZWF0ZVRleHRO
b2RlKCdhJy5yZXBlYXQoMioqMTUpKSk7CisgICAgICBzaG91bGRCZSgidGV4dENvbnRlbnQuaW5u
ZXJUZXh0Lmxlbmd0aCIsICIyKioxNiIpOworCisgICAgICAvLyBWZXJpZnkgdGhhdCBmaW5kIGZh
aWxzIGlmIG5vIG1hdGNoIGlzIGZvdW5kLgorICAgICAgd2luZG93LmdldFNlbGVjdGlvbigpLnJl
bW92ZUFsbFJhbmdlcygpOworICAgICAgc2hvdWxkQmVGYWxzZSgid2luZG93LmZpbmQoJ2InKSIp
OworCisgICAgICAvLyBWZXJpZnkgdGhhdCBmaW5kIHN1Y2NlZWRzIGZvciBhIHNtYWxsIHN0cmlu
Zy4KKyAgICAgIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS5yZW1vdmVBbGxSYW5nZXMoKTsKKyAgICAg
IHNob3VsZEJlVHJ1ZSgid2luZG93LmZpbmQoJ2EnLnJlcGVhdCgyKio1KSkiKTsKKworICAgICAg
Ly8gVmVyaWZ5IHRoYXQgZmluZCBzdWNjZWVkcyBqdXN0IGJlbG93IHRoZSBsaW1pdC4KKyAgICAg
IHdpbmRvdy5nZXRTZWxlY3Rpb24oKS5yZW1vdmVBbGxSYW5nZXMoKTsKKyAgICAgIHNob3VsZEJl
VHJ1ZSgid2luZG93LmZpbmQoJ2EnLnJlcGVhdCgyKioxNiAtIDEpKSIpOworCisgICAgICAvLyBW
ZXJpZnkgdGhhdCBmaW5kIGZhaWxzIHdoZW4gcmVhY2hpbmcgV2ViS2l0J3MgaGFyZGNvZGVkIGxp
bWl0LgorICAgICAgd2luZG93LmdldFNlbGVjdGlvbigpLnJlbW92ZUFsbFJhbmdlcygpOworICAg
ICAgc2hvdWxkQmVGYWxzZSgid2luZG93LmZpbmQoJ2EnLnJlcGVhdCgyKioxNikpIik7CisKKyAg
ICAgIC8vIFZlcmlmeSB0aGF0IHZlcnkgbG9uZyBzdHJpbmcgZG9lcyBub3QgY2F1c2Ugb3V0LW9m
LW1lbW9yeSBjcmFzaC4KKyAgICAgIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS5yZW1vdmVBbGxSYW5n
ZXMoKTsKKyAgICAgIHNob3VsZEJlRmFsc2UoIndpbmRvdy5maW5kKCdhJy5yZXBlYXQoMioqMzAp
KSIpOworICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZCh0ZXh0Q29udGVudCk7CisgICAg
PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9InJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwv
c2NyaXB0PgorICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTI5MWY0OWVjYS4uYTMx
ZjcyYjk4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIxLTA0LTA3ICBGcsOpZMOp
cmljIFdhbmcgIDxmd2FuZ0BpZ2FsaWEuY29tPgorCisgICAgICAgIE91dCBvZiBtZW1vcnkgY3Jh
c2ggd2l0aCBmaW5kKCdhJy5yZXBlYXQoMioqMzApKQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzNzg3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgUnlv
c3VrZSBOaXdhLgorCisgICAgICAgIFNlYXJjaEJ1ZmZlcjo6U2VhcmNoQnVmZmVyIGFsbG9jYXRl
cyBhIGJ1ZmZlciB3aG9zZSBjYXBhY2l0eSBpcyBhdCBsZWFzdCA4IHRpbWVzIHRoZSBzaXplIG9m
CisgICAgICAgIHRoZSBzZWFyY2hlZCB0ZXh0IGFuZCBhdCBsZWFzdCA4MTkyLiBJdCdzIHBvc3Np
YmxlIHRvIGhpdCBhbiBvdXQtb2YtbWVtb3J5IGNyYXNoIGJ5IHBhc3NpbmcKKyAgICAgICAgYSB2
ZXJ5IGxvbmcgc3RyaW5nIHRvIHdpbmRvdy5maW5kLiBTaW5jZSB0aGVyZSBpcyBubyByZWFzb24g
dG8gc2VhcmNoIGZvciBhcmJpdHJhcnkgbGFyZ2UKKyAgICAgICAgdGV4dCwgbGltaXQgaXQgdG8g
YSBtYXhpbXVtIGxlbmd0aCBvZiA2NGtCLgorCisgICAgICAgIFRlc3Q6IGVkaXRpbmcvZmluZC9m
aW5kLWxvbmctc3RyaW5nLWNyYXNoLmh0bWwKKworICAgICAgICAqIHBhZ2UvRE9NV2luZG93LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkRPTVdpbmRvdzo6ZmluZCBjb25zdCk6IEV4aXQgZWFybHkg
aWYgdGhlIHN0cmluZyBsZW5ndGggaXMgbGFyZ2VyIHRoYW4gYSBsaW1pdC4KKwogMjAyMS0wNC0w
NiAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBsZS5jb20+CiAKICAgICAgICAgW2lPU11b
RkNSXSBVc2Ugb3BhcXVlIHN5c3RlbSBjb2xvcnMgZm9yIGNvbnRyb2wgYmFja2dyb3VuZHMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvRE9NV2luZG93LmNwcAppbmRleCA0YWVlZWUxMGViLi4xNjBiMjhkZjk1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwCkBAIC0xMTk4LDcgKzExOTgsMTAgQEAgU3RyaW5nIERP
TVdpbmRvdzo6cHJvbXB0KGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBkZWZh
dWx0VmFsdWUpCiAKIGJvb2wgRE9NV2luZG93OjpmaW5kKGNvbnN0IFN0cmluZyYgc3RyaW5nLCBi
b29sIGNhc2VTZW5zaXRpdmUsIGJvb2wgYmFja3dhcmRzLCBib29sIHdyYXAsIGJvb2wgLyp3aG9s
ZVdvcmQqLywgYm9vbCAvKnNlYXJjaEluRnJhbWVzKi8sIGJvb2wgLypzaG93RGlhbG9nKi8pIGNv
bnN0CiB7Ci0gICAgaWYgKCFpc0N1cnJlbnRseURpc3BsYXllZEluRnJhbWUoKSkKKyAgICAvLyBT
ZWFyY2hCdWZmZXIgYWxsb2NhdGVzIG1lbW9yeSBtdWNoIGxhcmdlciB0aGFuIHRoZSBzZWFyY2hl
ZCBzdHJpbmcsIHNvIGl0J3MgbmVjZXNzYXJ5IHRvIGxpbWl0IGl0cyBsZW5ndGguCisgICAgLy8g
TW9zdCBzZWFyY2hlcyBhcmUgZm9yIGEgcGhyYXNlIG9yIGEgcGFyYWdyYXBoLCBzbyBhbiB1cHBl
ciBsaW1pdCBvZiA2NGtCIGlzIG1vcmUgdGhhbiBlbm91Z2ggaW4gcHJhY3RpY2UuCisgICAgY29u
c3RleHByIHNpemVfdCBtYXhpbXVtU3RyaW5nTGVuZ3RoID0gc3RkOjpudW1lcmljX2xpbWl0czx1
aW50MTZfdD46Om1heCgpOworICAgIGlmICghaXNDdXJyZW50bHlEaXNwbGF5ZWRJbkZyYW1lKCkg
fHwgc3RyaW5nLmxlbmd0aCgpID4gbWF4aW11bVN0cmluZ0xlbmd0aCkKICAgICAgICAgcmV0dXJu
IGZhbHNlOwogCiAgICAgLy8gRklYTUUgKDEzMDE2KTogU3VwcG9ydCB3aG9sZVdvcmQsIHNlYXJj
aEluRnJhbWVzIGFuZCBzaG93RGlhbG9nLiAgICAKLS0gCjIuMjUuMQoK
</data>
<flag name="commit-queue"
          id="445611"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425683</attachid>
            <date>2021-04-10 04:05:22 -0700</date>
            <delta_ts>2021-04-12 03:14:01 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>0001-Bug-223787-Out-of-memory-crash-with-find-a-.repeat-2.patch</filename>
            <type>text/plain</type>
            <size>6381</size>
            <attacher name="Frédéric Wang Nélar">fred.wang</attacher>
            
              <data encoding="base64">RnJvbSBkYWNlZjJiOTcyZWY0OWMwZTNlMTY2MjgzZTJkMTUyMDc0OWFjZjMzIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/RnI9QzM9QTlkPUMzPUE5cmljPTIwV2FuZz89
IDxmd2FuZ0BpZ2FsaWEuY29tPgpEYXRlOiBXZWQsIDcgQXByIDIwMjEgMTc6Mjk6MTUgKzAyMDAK
U3ViamVjdDogW1BBVENIXSBCdWcgMjIzNzg3IC0gT3V0IG9mIG1lbW9yeSBjcmFzaCB3aXRoIGZp
bmQoJ2EnLnJlcGVhdCgyKiozMCkpCgotLS0KIExheW91dFRlc3RzL0NoYW5nZUxvZyAgICAgICAg
ICAgICAgICAgICAgICAgICB8IDEyICsrKysrKwogLi4uL2ZpbmQvZmluZC1sb25nLXN0cmluZy1j
cmFzaC1leHBlY3RlZC50eHQgIHwgIDEgKwogLi4uL2ZpbmQtc2hvcnQtYW5kLWxvbmctc3RyaW5n
cy1leHBlY3RlZC50eHQgIHwgMTAgKysrKysKIC4uLi9maW5kL2ZpbmQtc2hvcnQtYW5kLWxvbmct
c3RyaW5ncy5odG1sICAgICB8IDQyICsrKysrKysrKysrKysrKysrKysKIFNvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICB8IDE3ICsrKysrKysrCiBTb3VyY2UvV2Vi
Q29yZS9wYWdlL0RPTVdpbmRvdy5jcHAgICAgICAgICAgICAgfCAgNSArKy0KIDYgZmlsZXMgY2hh
bmdlZCwgODYgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0
IExheW91dFRlc3RzL2VkaXRpbmcvZmluZC9maW5kLWxvbmctc3RyaW5nLWNyYXNoLWV4cGVjdGVk
LnR4dAogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2VkaXRpbmcvZmluZC9maW5kLXNo
b3J0LWFuZC1sb25nLXN0cmluZ3MtZXhwZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5
b3V0VGVzdHMvZWRpdGluZy9maW5kL2ZpbmQtc2hvcnQtYW5kLWxvbmctc3RyaW5ncy5odG1sCgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CmluZGV4IGI1MjRjZmY1OTQuLjhkNWQ3NDk1MjUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0No
YW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAy
MS0wNC0wNyAgRnJlZGVyaWMgV2FuZyAgPGZyZWQud2FuZ0BmcmVlLmZyPgorCisgICAgICAgIE91
dCBvZiBtZW1vcnkgY3Jhc2ggd2l0aCBmaW5kKCdhJy5yZXBlYXQoMioqMzApKQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzNzg3CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgUnlvc3VrZSBOaXdhLgorCisgICAgICAgIEFkZCByZWdyZXNzaW9uIHRlc3Qu
CisKKyAgICAgICAgKiBlZGl0aW5nL2ZpbmQvZmluZC1zaG9ydC1hbmQtbG9uZy1zdHJpbmdzLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9maW5kL2ZpbmQtc2hvcnQtYW5k
LWxvbmctc3RyaW5ncy5odG1sOiBBZGRlZC4KKwogMjAyMS0wNC0wNiAgQWRpdHlhIEtlZXJ0aGkg
IDxha2VlcnRoaUBhcHBsZS5jb20+CiAKICAgICAgICAgW2lPU11bRkNSXSBVc2Ugb3BhcXVlIHN5
c3RlbSBjb2xvcnMgZm9yIGNvbnRyb2wgYmFja2dyb3VuZHMKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2VkaXRpbmcvZmluZC9maW5kLWxvbmctc3RyaW5nLWNyYXNoLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2VkaXRpbmcvZmluZC9maW5kLWxvbmctc3RyaW5nLWNyYXNoLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwLi42NTRkZGY3ZjE3Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9maW5kL2ZpbmQtbG9uZy1zdHJpbmct
Y3Jhc2gtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1RoaXMgdGVzdCBwYXNzZXMgaWYgaXQg
ZG9lcyBub3QgY3Jhc2guCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL2ZpbmQvZmlu
ZC1zaG9ydC1hbmQtbG9uZy1zdHJpbmdzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2VkaXRp
bmcvZmluZC9maW5kLXNob3J0LWFuZC1sb25nLXN0cmluZ3MtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAuLjA0ODViY2Y4ZjMKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL2ZpbmQvZmluZC1zaG9ydC1hbmQtbG9uZy1zdHJpbmdz
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitQQVNTIHRleHRDb250ZW50LmlubmVyVGV4
dC5sZW5ndGggaXMgMioqMTYKK1BBU1Mgd2luZG93LmZpbmQoJ2InKSBpcyBmYWxzZQorUEFTUyB3
aW5kb3cuZmluZCgnYScucmVwZWF0KDIqKjUpKSBpcyB0cnVlCitQQVNTIHdpbmRvdy5maW5kKCdh
Jy5yZXBlYXQoMioqMTYgLSAxKSkgaXMgdHJ1ZQorUEFTUyB3aW5kb3cuZmluZCgnYScucmVwZWF0
KDIqKjE2KSkgaXMgZmFsc2UKK1BBU1Mgd2luZG93LmZpbmQoJ2EnLnJlcGVhdCgyKiozMCkpIGlz
IGZhbHNlCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUK
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9maW5kL2ZpbmQtc2hvcnQtYW5kLWxv
bmctc3RyaW5ncy5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9maW5kL2ZpbmQtc2hvcnQtYW5k
LWxvbmctc3RyaW5ncy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAu
LmE5NjZhNWZmOTAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL2ZpbmQv
ZmluZC1zaG9ydC1hbmQtbG9uZy1zdHJpbmdzLmh0bWwKQEAgLTAsMCArMSw0MiBAQAorPCFkb2N0
eXBlPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5PgorICAgIDxwIGlk
PSJkZXNjcmlwdGlvbiI+PC9wPgorICAgIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorICAgIDxk
aXYgaWQ9InRleHRDb250ZW50Ij48L2Rpdj4KKyAgICA8c2NyaXB0PgorICAgICAgaWYgKHdpbmRv
dy50ZXN0UnVubmVyKQorICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAg
ICAvLyBQdXQgdGV4dCBjb250ZW50IG9uIHRoZSBwYWdlIHdpdGggMl4xNiAnYScgY2hhcmFjdGVy
cy4KKyAgICAgIHRleHRDb250ZW50LmFwcGVuZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgnYScu
cmVwZWF0KDIqKjE1KSkpOworICAgICAgdGV4dENvbnRlbnQuYXBwZW5kKGRvY3VtZW50LmNyZWF0
ZVRleHROb2RlKCdhJy5yZXBlYXQoMioqMTUpKSk7CisgICAgICBzaG91bGRCZSgidGV4dENvbnRl
bnQuaW5uZXJUZXh0Lmxlbmd0aCIsICIyKioxNiIpOworCisgICAgICAvLyBWZXJpZnkgdGhhdCBm
aW5kIGZhaWxzIGlmIG5vIG1hdGNoIGlzIGZvdW5kLgorICAgICAgd2luZG93LmdldFNlbGVjdGlv
bigpLnJlbW92ZUFsbFJhbmdlcygpOworICAgICAgc2hvdWxkQmVGYWxzZSgid2luZG93LmZpbmQo
J2InKSIpOworCisgICAgICAvLyBWZXJpZnkgdGhhdCBmaW5kIHN1Y2NlZWRzIGZvciBhIHNtYWxs
IHN0cmluZy4KKyAgICAgIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS5yZW1vdmVBbGxSYW5nZXMoKTsK
KyAgICAgIHNob3VsZEJlVHJ1ZSgid2luZG93LmZpbmQoJ2EnLnJlcGVhdCgyKio1KSkiKTsKKwor
ICAgICAgLy8gVmVyaWZ5IHRoYXQgZmluZCBzdWNjZWVkcyBqdXN0IGJlbG93IHRoZSBsaW1pdC4K
KyAgICAgIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS5yZW1vdmVBbGxSYW5nZXMoKTsKKyAgICAgIHNo
b3VsZEJlVHJ1ZSgid2luZG93LmZpbmQoJ2EnLnJlcGVhdCgyKioxNiAtIDEpKSIpOworCisgICAg
ICAvLyBWZXJpZnkgdGhhdCBmaW5kIGZhaWxzIHdoZW4gcmVhY2hpbmcgV2ViS2l0J3MgaGFyZGNv
ZGVkIGxpbWl0LgorICAgICAgd2luZG93LmdldFNlbGVjdGlvbigpLnJlbW92ZUFsbFJhbmdlcygp
OworICAgICAgc2hvdWxkQmVGYWxzZSgid2luZG93LmZpbmQoJ2EnLnJlcGVhdCgyKioxNikpIik7
CisKKyAgICAgIC8vIFZlcmlmeSB0aGF0IHZlcnkgbG9uZyBzdHJpbmcgZG9lcyBub3QgY2F1c2Ug
b3V0LW9mLW1lbW9yeSBjcmFzaC4KKyAgICAgIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS5yZW1vdmVB
bGxSYW5nZXMoKTsKKyAgICAgIHNob3VsZEJlRmFsc2UoIndpbmRvdy5maW5kKCdhJy5yZXBlYXQo
MioqMzApKSIpOworICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZCh0ZXh0Q29udGVudCk7
CisgICAgPC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0
LXBvc3QuanMiPjwvc2NyaXB0PgorICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTI5
MWY0OWVjYS4uYTMxZjcyYjk4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIxLTA0
LTA3ICBGcsOpZMOpcmljIFdhbmcgIDxmd2FuZ0BpZ2FsaWEuY29tPgorCisgICAgICAgIE91dCBv
ZiBtZW1vcnkgY3Jhc2ggd2l0aCBmaW5kKCdhJy5yZXBlYXQoMioqMzApKQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzNzg3CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgUnlvc3VrZSBOaXdhLgorCisgICAgICAgIFNlYXJjaEJ1ZmZlcjo6U2VhcmNoQnVm
ZmVyIGFsbG9jYXRlcyBhIGJ1ZmZlciB3aG9zZSBjYXBhY2l0eSBpcyBhdCBsZWFzdCA4IHRpbWVz
IHRoZSBzaXplIG9mCisgICAgICAgIHRoZSBzZWFyY2hlZCB0ZXh0IGFuZCBhdCBsZWFzdCA4MTky
LiBJdCdzIHBvc3NpYmxlIHRvIGhpdCBhbiBvdXQtb2YtbWVtb3J5IGNyYXNoIGJ5IHBhc3NpbmcK
KyAgICAgICAgYSB2ZXJ5IGxvbmcgc3RyaW5nIHRvIHdpbmRvdy5maW5kLiBTaW5jZSB0aGVyZSBp
cyBubyByZWFzb24gdG8gc2VhcmNoIGZvciBhcmJpdHJhcnkgbGFyZ2UKKyAgICAgICAgdGV4dCwg
bGltaXQgaXQgdG8gYSBtYXhpbXVtIGxlbmd0aCBvZiA2NGtCLgorCisgICAgICAgIFRlc3Q6IGVk
aXRpbmcvZmluZC9maW5kLWxvbmctc3RyaW5nLWNyYXNoLmh0bWwKKworICAgICAgICAqIHBhZ2Uv
RE9NV2luZG93LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRPTVdpbmRvdzo6ZmluZCBjb25zdCk6
IEV4aXQgZWFybHkgaWYgdGhlIHN0cmluZyBsZW5ndGggaXMgbGFyZ2VyIHRoYW4gYSBsaW1pdC4K
KwogMjAyMS0wNC0wNiAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBsZS5jb20+CiAKICAg
ICAgICAgW2lPU11bRkNSXSBVc2Ugb3BhcXVlIHN5c3RlbSBjb2xvcnMgZm9yIGNvbnRyb2wgYmFj
a2dyb3VuZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcAppbmRleCA0YWVlZWUxMGViLi4xNjBi
MjhkZjk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwCkBAIC0xMTk4LDcgKzExOTgsMTAg
QEAgU3RyaW5nIERPTVdpbmRvdzo6cHJvbXB0KGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgY29uc3Qg
U3RyaW5nJiBkZWZhdWx0VmFsdWUpCiAKIGJvb2wgRE9NV2luZG93OjpmaW5kKGNvbnN0IFN0cmlu
ZyYgc3RyaW5nLCBib29sIGNhc2VTZW5zaXRpdmUsIGJvb2wgYmFja3dhcmRzLCBib29sIHdyYXAs
IGJvb2wgLyp3aG9sZVdvcmQqLywgYm9vbCAvKnNlYXJjaEluRnJhbWVzKi8sIGJvb2wgLypzaG93
RGlhbG9nKi8pIGNvbnN0CiB7Ci0gICAgaWYgKCFpc0N1cnJlbnRseURpc3BsYXllZEluRnJhbWUo
KSkKKyAgICAvLyBTZWFyY2hCdWZmZXIgYWxsb2NhdGVzIG1lbW9yeSBtdWNoIGxhcmdlciB0aGFu
IHRoZSBzZWFyY2hlZCBzdHJpbmcsIHNvIGl0J3MgbmVjZXNzYXJ5IHRvIGxpbWl0IGl0cyBsZW5n
dGguCisgICAgLy8gTW9zdCBzZWFyY2hlcyBhcmUgZm9yIGEgcGhyYXNlIG9yIGEgcGFyYWdyYXBo
LCBzbyBhbiB1cHBlciBsaW1pdCBvZiA2NGtCIGlzIG1vcmUgdGhhbiBlbm91Z2ggaW4gcHJhY3Rp
Y2UuCisgICAgY29uc3RleHByIHNpemVfdCBtYXhpbXVtU3RyaW5nTGVuZ3RoID0gc3RkOjpudW1l
cmljX2xpbWl0czx1aW50MTZfdD46Om1heCgpOworICAgIGlmICghaXNDdXJyZW50bHlEaXNwbGF5
ZWRJbkZyYW1lKCkgfHwgc3RyaW5nLmxlbmd0aCgpID4gbWF4aW11bVN0cmluZ0xlbmd0aCkKICAg
ICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgLy8gRklYTUUgKDEzMDE2KTogU3VwcG9ydCB3aG9s
ZVdvcmQsIHNlYXJjaEluRnJhbWVzIGFuZCBzaG93RGlhbG9nLiAgICAKLS0gCjIuMjUuMQoK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425725</attachid>
            <date>2021-04-12 03:14:01 -0700</date>
            <delta_ts>2021-04-12 05:26:52 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>0001-Bug-223787-Out-of-memory-crash-with-find-a-.repeat-2.patch</filename>
            <type>text/plain</type>
            <size>5952</size>
            <attacher name="Frédéric Wang Nélar">fred.wang</attacher>
            
              <data encoding="base64">RnJvbSBmMzVhNTE5M2E1ZmM4YmJhOTdlMDlhOGUxMWZjZDJlZmEwOWUxNTAwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/RnI9QzM9QTlkPUMzPUE5cmljPTIwV2FuZz89
IDxmd2FuZ0BpZ2FsaWEuY29tPgpEYXRlOiBXZWQsIDcgQXByIDIwMjEgMTc6Mjk6MTUgKzAyMDAK
U3ViamVjdDogW1BBVENIXSBCdWcgMjIzNzg3IC0gT3V0IG9mIG1lbW9yeSBjcmFzaCB3aXRoIGZp
bmQoJ2EnLnJlcGVhdCgyKiozMCkpCgotLS0KIExheW91dFRlc3RzL0NoYW5nZUxvZyAgICAgICAg
ICAgICAgICAgICAgICAgICB8IDEyICsrKysrKwogLi4uL2ZpbmQtc2hvcnQtYW5kLWxvbmctc3Ry
aW5ncy1leHBlY3RlZC50eHQgIHwgMTAgKysrKysKIC4uLi9maW5kL2ZpbmQtc2hvcnQtYW5kLWxv
bmctc3RyaW5ncy5odG1sICAgICB8IDQyICsrKysrKysrKysrKysrKysrKysKIFNvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICB8IDE3ICsrKysrKysrCiBTb3VyY2Uv
V2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAgICAgICAgICAgICAgfCAgNSArKy0KIDUgZmlsZXMg
Y2hhbmdlZCwgODUgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAw
NjQ0IExheW91dFRlc3RzL2VkaXRpbmcvZmluZC9maW5kLXNob3J0LWFuZC1sb25nLXN0cmluZ3Mt
ZXhwZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvZWRpdGluZy9maW5k
L2ZpbmQtc2hvcnQtYW5kLWxvbmctc3RyaW5ncy5odG1sCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGE0OTEzMzUxYWQuLjNk
Y2VhZmVhMzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMS0wNC0xMiAgRnJlZGVyaWMgV2Fu
ZyAgPGZyZWQud2FuZ0BmcmVlLmZyPgorCisgICAgICAgIE91dCBvZiBtZW1vcnkgY3Jhc2ggd2l0
aCBmaW5kKCdhJy5yZXBlYXQoMioqMzApKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjIzNzg3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgUnlvc3VrZSBO
aXdhLgorCisgICAgICAgIEFkZCByZWdyZXNzaW9uIHRlc3QuCisKKyAgICAgICAgKiBlZGl0aW5n
L2ZpbmQvZmluZC1zaG9ydC1hbmQtbG9uZy1zdHJpbmdzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogZWRpdGluZy9maW5kL2ZpbmQtc2hvcnQtYW5kLWxvbmctc3RyaW5ncy5odG1sOiBB
ZGRlZC4KKwogMjAyMS0wNC0xMSAgQ2FtZXJvbiBNY0Nvcm1hY2sgIDxoZXljYW1AYXBwbGUuY29t
PgogCiAgICAgICAgIEZpeCBpbml0aWFsIGhvcml6b250YWwgc2Nyb2xsYmFyIHBvc2l0aW9uIHdo
ZW4gdmVydGljYWwgc2Nyb2xsYmFyIGlzIG9uIHRoZSBsZWZ0LgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZWRpdGluZy9maW5kL2ZpbmQtc2hvcnQtYW5kLWxvbmctc3RyaW5ncy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL2ZpbmQvZmluZC1zaG9ydC1hbmQtbG9uZy1zdHJpbmdz
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwLi4wNDg1
YmNmOGYzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9maW5kL2ZpbmQt
c2hvcnQtYW5kLWxvbmctc3RyaW5ncy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMCBAQAorUEFT
UyB0ZXh0Q29udGVudC5pbm5lclRleHQubGVuZ3RoIGlzIDIqKjE2CitQQVNTIHdpbmRvdy5maW5k
KCdiJykgaXMgZmFsc2UKK1BBU1Mgd2luZG93LmZpbmQoJ2EnLnJlcGVhdCgyKio1KSkgaXMgdHJ1
ZQorUEFTUyB3aW5kb3cuZmluZCgnYScucmVwZWF0KDIqKjE2IC0gMSkpIGlzIHRydWUKK1BBU1Mg
d2luZG93LmZpbmQoJ2EnLnJlcGVhdCgyKioxNikpIGlzIGZhbHNlCitQQVNTIHdpbmRvdy5maW5k
KCdhJy5yZXBlYXQoMioqMzApKSBpcyBmYWxzZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMg
dHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2VkaXRpbmcv
ZmluZC9maW5kLXNob3J0LWFuZC1sb25nLXN0cmluZ3MuaHRtbCBiL0xheW91dFRlc3RzL2VkaXRp
bmcvZmluZC9maW5kLXNob3J0LWFuZC1sb25nLXN0cmluZ3MuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwLi45ZWExZTMwMmUxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZWRpdGluZy9maW5kL2ZpbmQtc2hvcnQtYW5kLWxvbmctc3RyaW5ncy5odG1sCkBA
IC0wLDAgKzEsNDIgQEAKKzwhZG9jdHlwZT4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8c2NyaXB0
IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKyAgPC9oZWFk
PgorICA8Ym9keT4KKyAgICA8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKyAgICA8ZGl2IGlkPSJj
b25zb2xlIj48L2Rpdj4KKyAgICA8ZGl2IGlkPSJ0ZXh0Q29udGVudCI+PC9kaXY+CisgICAgPHNj
cmlwdD4KKyAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICB0ZXN0UnVubmVy
LmR1bXBBc1RleHQoKTsKKworICAgICAgLy8gUHV0IHRleHQgY29udGVudCBvbiB0aGUgcGFnZSB3
aXRoIDJeMTYgJ2EnIGNoYXJhY3RlcnMuCisgICAgICB0ZXh0Q29udGVudC5hcHBlbmQoZG9jdW1l
bnQuY3JlYXRlVGV4dE5vZGUoJ2EnLnJlcGVhdCgyKioxNSkpKTsKKyAgICAgIHRleHRDb250ZW50
LmFwcGVuZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgnYScucmVwZWF0KDIqKjE1KSkpOworICAg
ICAgc2hvdWxkQmUoInRleHRDb250ZW50LmlubmVyVGV4dC5sZW5ndGgiLCAiMioqMTYiKTsKKwor
ICAgICAgLy8gVmVyaWZ5IHRoYXQgZmluZCBmYWlscyBpZiBubyBtYXRjaCBpcyBmb3VuZC4KKyAg
ICAgIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS5yZW1vdmVBbGxSYW5nZXMoKTsKKyAgICAgIHNob3Vs
ZEJlRmFsc2UoIndpbmRvdy5maW5kKCdiJykiKTsKKworICAgICAgLy8gVmVyaWZ5IHRoYXQgZmlu
ZCBzdWNjZWVkcyBmb3IgYSBzbWFsbCBzdHJpbmcuCisgICAgICB3aW5kb3cuZ2V0U2VsZWN0aW9u
KCkucmVtb3ZlQWxsUmFuZ2VzKCk7CisgICAgICBzaG91bGRCZVRydWUoIndpbmRvdy5maW5kKCdh
Jy5yZXBlYXQoMioqNSkpIik7CisKKyAgICAgIC8vIFZlcmlmeSB0aGF0IGZpbmQgc3VjY2VlZHMg
anVzdCBiZWxvdyB0aGUgbGltaXQuCisgICAgICB3aW5kb3cuZ2V0U2VsZWN0aW9uKCkucmVtb3Zl
QWxsUmFuZ2VzKCk7CisgICAgICBzaG91bGRCZVRydWUoIndpbmRvdy5maW5kKCdhJy5yZXBlYXQo
MioqMTYgLSAxKSkiKTsKKworICAgICAgLy8gVmVyaWZ5IHRoYXQgZmluZCBmYWlscyB3aGVuIHJl
YWNoaW5nIFdlYktpdCdzIGhhcmRjb2RlZCBsaW1pdC4KKyAgICAgIHdpbmRvdy5nZXRTZWxlY3Rp
b24oKS5yZW1vdmVBbGxSYW5nZXMoKTsKKyAgICAgIHNob3VsZEJlRmFsc2UoIndpbmRvdy5maW5k
KCdhJy5yZXBlYXQoMioqMTYpKSIpOworCisgICAgICAvLyBWZXJpZnkgdGhhdCB2ZXJ5IGxvbmcg
c3RyaW5nIGRvZXMgbm90IGNhdXNlIG91dC1vZi1tZW1vcnkgY3Jhc2guCisgICAgICB3aW5kb3cu
Z2V0U2VsZWN0aW9uKCkucmVtb3ZlQWxsUmFuZ2VzKCk7CisgICAgICBzaG91bGRCZUZhbHNlKCJ3
aW5kb3cuZmluZCgnYScucmVwZWF0KDIqKjMwKSkiKTsKKyAgICAgIGRvY3VtZW50LmJvZHkucmVt
b3ZlQ2hpbGQodGV4dENvbnRlbnQpOworICAgIDwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIu
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKyAgPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCmluZGV4IDhhYjk4ZmFlMDAuLjBiNDBhYWJlMzEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyMCBAQAorMjAyMS0wNC0xMiAgRnLDqWTDqXJpYyBXYW5nICA8ZndhbmdAaWdhbGlh
LmNvbT4KKworICAgICAgICBPdXQgb2YgbWVtb3J5IGNyYXNoIHdpdGggZmluZCgnYScucmVwZWF0
KDIqKjMwKSkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIyMzc4NworCisgICAgICAgIFJldmlld2VkIGJ5IFJ5b3N1a2UgTml3YS4KKworICAgICAgICBT
ZWFyY2hCdWZmZXI6OlNlYXJjaEJ1ZmZlciBhbGxvY2F0ZXMgYSBidWZmZXIgd2hvc2UgY2FwYWNp
dHkgaXMgYXQgbGVhc3QgOCB0aW1lcyB0aGUgc2l6ZSBvZgorICAgICAgICB0aGUgc2VhcmNoZWQg
dGV4dCBhbmQgYXQgbGVhc3QgODE5Mi4gSXQncyBwb3NzaWJsZSB0byBoaXQgYW4gb3V0LW9mLW1l
bW9yeSBjcmFzaCBieSBwYXNzaW5nCisgICAgICAgIGEgdmVyeSBsb25nIHN0cmluZyB0byB3aW5k
b3cuZmluZC4gU2luY2UgdGhlcmUgaXMgbm8gcmVhc29uIHRvIHNlYXJjaCBmb3IgYXJiaXRyYXJ5
IGxhcmdlCisgICAgICAgIHRleHQsIGxpbWl0IGl0IHRvIGEgbWF4aW11bSBsZW5ndGggb2YgNjRr
Qi4KKworICAgICAgICBUZXN0OiBlZGl0aW5nL2ZpbmQvZmluZC1sb25nLXN0cmluZy1jcmFzaC5o
dG1sCisKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpE
T01XaW5kb3c6OmZpbmQgY29uc3QpOiBFeGl0IGVhcmx5IGlmIHRoZSBzdHJpbmcgbGVuZ3RoIGlz
IGxhcmdlciB0aGFuIGEgbGltaXQuCisKIDIwMjEtMDQtMTIgIEFkcmlhbiBQZXJleiBkZSBDYXN0
cm8gIDxhcGVyZXpAaWdhbGlhLmNvbT4KIAogICAgICAgICBbV1BFXVtHVEtdIFVzZSBnX29iamVj
dF9ub3RpZnlfYnlfcHNwZWMoKSB3aGVuZXZlciBwb3NzaWJsZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5k
b3cuY3BwCmluZGV4IDRhZWVlZTEwZWIuLmQxNDU1YjU0ZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdp
bmRvdy5jcHAKQEAgLTExOTgsNyArMTE5OCwxMCBAQCBTdHJpbmcgRE9NV2luZG93Ojpwcm9tcHQo
Y29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIGRlZmF1bHRWYWx1ZSkKIAogYm9v
bCBET01XaW5kb3c6OmZpbmQoY29uc3QgU3RyaW5nJiBzdHJpbmcsIGJvb2wgY2FzZVNlbnNpdGl2
ZSwgYm9vbCBiYWNrd2FyZHMsIGJvb2wgd3JhcCwgYm9vbCAvKndob2xlV29yZCovLCBib29sIC8q
c2VhcmNoSW5GcmFtZXMqLywgYm9vbCAvKnNob3dEaWFsb2cqLykgY29uc3QKIHsKLSAgICBpZiAo
IWlzQ3VycmVudGx5RGlzcGxheWVkSW5GcmFtZSgpKQorICAgIC8vIFNlYXJjaEJ1ZmZlciBhbGxv
Y2F0ZXMgbWVtb3J5IG11Y2ggbGFyZ2VyIHRoYW4gdGhlIHNlYXJjaGVkIHN0cmluZywgc28gaXQn
cyBuZWNlc3NhcnkgdG8gbGltaXQgaXRzIGxlbmd0aC4KKyAgICAvLyBNb3N0IHNlYXJjaGVzIGFy
ZSBmb3IgYSBwaHJhc2Ugb3IgYSBwYXJhZ3JhcGgsIHNvIGFuIHVwcGVyIGxpbWl0IG9mIDY0a0Ig
aXMgbW9yZSB0aGFuIGVub3VnaCBpbiBwcmFjdGljZS4KKyAgICBjb25zdGV4cHIgYXV0byBtYXhp
bXVtU3RyaW5nTGVuZ3RoID0gc3RkOjpudW1lcmljX2xpbWl0czx1aW50MTZfdD46Om1heCgpOwor
ICAgIGlmICghaXNDdXJyZW50bHlEaXNwbGF5ZWRJbkZyYW1lKCkgfHwgc3RyaW5nLmxlbmd0aCgp
ID4gbWF4aW11bVN0cmluZ0xlbmd0aCkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgLy8g
RklYTUUgKDEzMDE2KTogU3VwcG9ydCB3aG9sZVdvcmQsIHNlYXJjaEluRnJhbWVzIGFuZCBzaG93
RGlhbG9nLiAgICAKLS0gCjIuMjUuMQoK
</data>

          </attachment>
      

    </bug>

</bugzilla>