<?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>224840</bug_id>
          
          <creation_ts>2021-04-20 16:17:48 -0700</creation_ts>
          <short_desc>Crash due to VectorBuffer pre-allocation failure</short_desc>
          <delta_ts>2021-04-23 10:40:24 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=224984</see_also>
          <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="Ian Gilbert">iang</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>darin</cc>
    
    <cc>rniwa</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1752495</commentid>
    <comment_count>0</comment_count>
    <who name="Ian Gilbert">iang</who>
    <bug_when>2021-04-20 16:17:48 -0700</bug_when>
    <thetext>Crash due to VectorBuffer pre-allocation failure</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752500</commentid>
    <comment_count>1</comment_count>
      <attachid>426610</attachid>
    <who name="Ian Gilbert">iang</who>
    <bug_when>2021-04-20 16:21:43 -0700</bug_when>
    <thetext>Created attachment 426610
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752508</commentid>
    <comment_count>2</comment_count>
      <attachid>426614</attachid>
    <who name="Ian Gilbert">iang</who>
    <bug_when>2021-04-20 16:47:18 -0700</bug_when>
    <thetext>Created attachment 426614
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752509</commentid>
    <comment_count>3</comment_count>
    <who name="Ian Gilbert">iang</who>
    <bug_when>2021-04-20 16:49:08 -0700</bug_when>
    <thetext>&lt;rdar://problem/76698411&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752534</commentid>
    <comment_count>4</comment_count>
      <attachid>426614</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-04-20 17:42:25 -0700</bug_when>
    <thetext>Comment on attachment 426614
Patch

I don&apos;t quite know how to review the test, but the change looks good.

I think there might be a similar issue in:

ArgumentCoder&lt;WebCore::CDMInstanceSession::KeyStatusVector&gt;::decode(...)

which does a `keyStatuses.reserveInitialCapacity(dataSize);` from a decoded size.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752536</commentid>
    <comment_count>5</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-04-20 17:46:17 -0700</bug_when>
    <thetext>Looks like the generic HashMap and HashSet decoders also do a reservation in ArgumentCoders.h</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752545</commentid>
    <comment_count>6</comment_count>
      <attachid>426614</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-04-20 18:02:23 -0700</bug_when>
    <thetext>Comment on attachment 426614
Patch

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

&gt; Source/WebKit/Shared/Cocoa/WebCoreArgumentCodersCocoa.mm:363
&gt; -    Vector&lt;RefPtr&lt;ApplePayError&gt;&gt; errors(size);
&gt; +    Vector&lt;RefPtr&lt;ApplePayError&gt;&gt; errors;

Huh, I guess this fix is correct but we should get rid of this whole encode/decode pair and just add ones for ApplePayError instead
since we already have encoder/decoder for Vector&lt;T&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752560</commentid>
    <comment_count>7</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-20 18:20:28 -0700</bug_when>
    <thetext>Committed r276341 (236819@main): &lt;https://commits.webkit.org/236819@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 426614.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752561</commentid>
    <comment_count>8</comment_count>
      <attachid>426614</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-04-20 18:20:59 -0700</bug_when>
    <thetext>Comment on attachment 426614
Patch

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

&gt;&gt; Source/WebKit/Shared/Cocoa/WebCoreArgumentCodersCocoa.mm:363
&gt;&gt; +    Vector&lt;RefPtr&lt;ApplePayError&gt;&gt; errors;
&gt; 
&gt; Huh, I guess this fix is correct but we should get rid of this whole encode/decode pair and just add ones for ApplePayError instead
&gt; since we already have encoder/decoder for Vector&lt;T&gt;.

Yes, we should do that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752562</commentid>
    <comment_count>9</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-04-20 18:21:59 -0700</bug_when>
    <thetext>(In reply to Sam Weinig from comment #5)
&gt; Looks like the generic HashMap and HashSet decoders also do a reservation in
&gt; ArgumentCoders.h

Really!? That is not good. Let’s fix that. I hope there’s a way to do it without costing too much memory or performance.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752563</commentid>
    <comment_count>10</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-04-20 18:22:25 -0700</bug_when>
    <thetext>(In reply to Sam Weinig from comment #4)
&gt; I think there might be a similar issue in:
&gt; 
&gt; ArgumentCoder&lt;WebCore::CDMInstanceSession::KeyStatusVector&gt;::decode(...)
&gt; 
&gt; which does a `keyStatuses.reserveInitialCapacity(dataSize);` from a decoded
&gt; size.

Yes, that must be removed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752918</commentid>
    <comment_count>11</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-04-21 14:12:05 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #9)
&gt; (In reply to Sam Weinig from comment #5)
&gt; &gt; Looks like the generic HashMap and HashSet decoders also do a reservation in
&gt; &gt; ArgumentCoders.h
&gt; 
&gt; Really!? That is not good. Let’s fix that. I hope there’s a way to do it
&gt; without costing too much memory or performance.

I don&apos;t think the reservation is too likely to be that much of a win.

For avoid doing multiple allocations in the general case, we could pick a maximum value for reservations (maybe, 16 or something), and do the reservation if the size is at or below that.

For memory use we could add some sort of &quot;shrinkToFix&quot; for HashMap/HashSet, but we would probably be better off using the new RobinHoodHashMaps if we want to improve memory use.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752921</commentid>
    <comment_count>12</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-04-21 14:13:37 -0700</bug_when>
    <thetext>(In reply to Ryosuke Niwa from comment #6)
&gt; Comment on attachment 426614 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=426614&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/Shared/Cocoa/WebCoreArgumentCodersCocoa.mm:363
&gt; &gt; -    Vector&lt;RefPtr&lt;ApplePayError&gt;&gt; errors(size);
&gt; &gt; +    Vector&lt;RefPtr&lt;ApplePayError&gt;&gt; errors;
&gt; 
&gt; Huh, I guess this fix is correct but we should get rid of this whole
&gt; encode/decode pair and just add ones for ApplePayError instead
&gt; since we already have encoder/decoder for Vector&lt;T&gt;.

Does the generic one work for T == RefPtr&lt;Foo&gt;?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752948</commentid>
    <comment_count>13</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-04-21 15:31:12 -0700</bug_when>
    <thetext>(In reply to Sam Weinig from comment #12)
&gt; Does the generic one work for T == RefPtr&lt;Foo&gt;?

Almost certainly yes. I meant to try it but had other code in my tree.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1753633</commentid>
    <comment_count>14</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-04-23 10:40:24 -0700</bug_when>
    <thetext>Did some follow-on work in bug 224984 and would like to continue to discuss there.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426610</attachid>
            <date>2021-04-20 16:21:43 -0700</date>
            <delta_ts>2021-04-20 16:47:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224840-20210420162142.patch</filename>
            <type>text/plain</type>
            <size>3923</size>
            <attacher name="Ian Gilbert">iang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2Mjc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGI1ZjEyNWZlZTllODAzNGQ0
ZjFiYWI5MDhlMzk0Mzg3NTQzN2M5ODIuLjNmYzg4NmUyOTQ4NWUzNGVhZDk4ZjBkZDZlODg2YWM4
NGVhOGE5ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMjEtMDQtMjAgIElhbiBHaWxi
ZXJ0ICA8aWFuZ0BhcHBsZS5jb20+CisKKyAgICAgICAgQ3Jhc2ggZHVlIHRvIFZlY3RvckJ1ZmZl
ciBwcmUtYWxsb2NhdGlvbiBmYWlsdXJlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjQ4NDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBWZWN0b3IgZGVjb2RlciBjb3VsZCBhdHRlbXB0IHRvIGFsbG9jYXRl
IGEgbGFyZ2UgYnVmZmVyIGFuZCBvbiBmYWlsdXJlIHdvdWxkIGNyYXNoLgorICAgICAgICBDaGFu
Z2VkIGRlY29kZSB0byBhdm9pZCBhbGxvY2F0aW5nIGEgVmVjdG9yIGJhc2VkIG9uIHRoZSBkZWNv
ZGVkIHNpemUuCisKKyAgICAgICAgVGVzdDogaXBjL2xhcmdlLXZlY3Rvci1hbGxvY2F0ZS1mYWls
dXJlLWNyYXNoLmh0bWwKKworICAgICAgICAqIFNoYXJlZC9Db2NvYS9XZWJDb3JlQXJndW1lbnRD
b2RlcnNDb2NvYS5tbToKKyAgICAgICAgKElQQzo6QXJndW1lbnRDb2RlcjxWZWN0b3I8UmVmUHRy
PEFwcGxlUGF5RXJyb3I+Pj46OmRlY29kZSk6CisKIDIwMjEtMDQtMTkgIENocmlzIER1bWV6ICA8
Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBNb3Rpb25NYXJrJ3MgQ2FudmFzLUFyY3Mgc3Vi
dGVzdCBpcyBicm9rZW4gaWYgdGhlIEdQVVByb2Nlc3MgaXMgbm90IHlldCBydW5uaW5nCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9XZWJDb3JlQXJndW1lbnRDb2RlcnND
b2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1dlYkNvcmVBcmd1bWVudENvZGVy
c0NvY29hLm1tCmluZGV4IDUwMzQ0MWNiNmVhMzVmZDNlY2FmOTY3NmY5MjY0ZDMyODEzNWIzNjYu
Ljc4NTc0ZjdhYzEzMDA1ZWQ4MDM5NzBlM2ExMGE4MGM0NmZhYmQxYTcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1dlYkNvcmVBcmd1bWVudENvZGVyc0NvY29hLm1tCisr
KyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1dlYkNvcmVBcmd1bWVudENvZGVyc0NvY29h
Lm1tCkBAIC0zNjAsNyArMzYwLDcgQEAgT3B0aW9uYWw8VmVjdG9yPFJlZlB0cjxBcHBsZVBheUVy
cm9yPj4+IEFyZ3VtZW50Q29kZXI8VmVjdG9yPFJlZlB0cjxBcHBsZVBheUVycm8KICAgICBpZiAo
IWRlY29kZXIuZGVjb2RlKHNpemUpKQogICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwogCi0g
ICAgVmVjdG9yPFJlZlB0cjxBcHBsZVBheUVycm9yPj4gZXJyb3JzKHNpemUpOworICAgIFZlY3Rv
cjxSZWZQdHI8QXBwbGVQYXlFcnJvcj4+IGVycm9yczsKICAgICBmb3IgKHVpbnQ2NF90IGkgPSAw
OyBpIDwgc2l6ZTsgKytpKSB7CiAgICAgICAgIE9wdGlvbmFsPGJvb2w+IGlzVmFsaWQ7CiAgICAg
ICAgIGRlY29kZXIgPj4gaXNWYWxpZDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBhM2VlYzY2YjM2NDEzZmE5ZDY2YTM1MjFk
MzBlZDFkN2IxNjk4YTQ2Li44M2I3OWYzODlhMjNiZGZhODQxMjY5OTczNzJjOGYxMjFmNGQ3ZWZh
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjEtMDQtMjAgIElhbiBHaWxiZXJ0ICA8aWFuZ0Bh
cHBsZS5jb20+CisKKyAgICAgICAgQ3Jhc2ggZHVlIHRvIFZlY3RvckJ1ZmZlciBwcmUtYWxsb2Nh
dGlvbiBmYWlsdXJlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjQ4NDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBBZGRlZCBhIHJlZ3Jlc3Npb24gdGVzdC4KKworICAgICAgICAqIGlwYy9sYXJnZS12ZWN0
b3ItYWxsb2NhdGUtZmFpbHVyZS1jcmFzaC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGlwYy9sYXJnZS12ZWN0b3ItYWxsb2NhdGUtZmFpbHVyZS1jcmFzaC5odG1sOiBBZGRlZC4KKwog
MjAyMS0wNC0xOSAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAg
W21hYy13azJdIExheW91dFRlc3QgZmFzdC9tZWRpYXN0cmVhbS9nZXRVc2VyTWVkaWEtd2ViYXVk
aW8uaHRtbCBpcyBhIGZsYWt5IHRpbWVvdXQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lwYy9s
YXJnZS12ZWN0b3ItYWxsb2NhdGUtZmFpbHVyZS1jcmFzaC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pcGMvbGFyZ2UtdmVjdG9yLWFsbG9jYXRlLWZhaWx1cmUtY3Jhc2gtZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjkyZjQ0NmZiYTRkZGYxZWJkMTk4ZjZjNTlkYzIwZDVkNGE3YzIwYjQKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pcGMvbGFyZ2UtdmVjdG9yLWFsbG9jYXRlLWZh
aWx1cmUtY3Jhc2gtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAorVGVzdCBwYXNzIGlmIGl0
IGRvZXMgbm90IGNyYXNoLgorCitQQVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pcGMvbGFy
Z2UtdmVjdG9yLWFsbG9jYXRlLWZhaWx1cmUtY3Jhc2guaHRtbCBiL0xheW91dFRlc3RzL2lwYy9s
YXJnZS12ZWN0b3ItYWxsb2NhdGUtZmFpbHVyZS1jcmFzaC5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFmNjNj
ZDkyYTdhZjIzZDk4MjE5N2VjZWE5ZGM1MGExODFlMmRjZDgKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pcGMvbGFyZ2UtdmVjdG9yLWFsbG9jYXRlLWZhaWx1cmUtY3Jhc2guaHRtbApA
QCAtMCwwICsxLDExIEBACis8IURPQ1RZUEUgaHRtbD48IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBb
IElQQ1Rlc3RpbmdBUElFbmFibGVkPXRydWUgXSAtLT4KKzxwPlRlc3QgcGFzcyBpZiBpdCBkb2Vz
IG5vdCBjcmFzaC48L3A+Cis8c2NyaXB0PgorICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAg
ICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICBidWYgPSBuZXcgVWludDhBcnJh
eShbMHgzLDB4MCwweDAsMHgwLDB4MCwweDAsMHgwLDB4MCwweDAsMHgwLDB4MCwweDAsMHgzLDB4
MCwweDAsMHgwLDB4MCwweDAsMHgwLDB4MCwweDMsMHgwLDB4MCwweDAsMHgwLDB4MCwweDAsMHgw
LDB4MywweDAsMHgwLDB4MCwweDAsMHgwLDB4MCwweDAsMHgzLDB4MCwweDAsMHgwLDB4MCwweDAs
MHgwLDB4MCwweDMsMHgwLDB4MCwweDAsMHgwLDB4MCwweDAsMHgwLDB4MywweDAsMHgwLDB4MCww
eDAsMHgwLDB4MCwweDAsMHgzLDB4MCwweDAsMHgwLDB4MCwweDAsMHgwLDB4MCwweDAsMHgwLDB4
MCwweDAsMHgwLDB4MCwweDAsMHgwLDB4MCwweDAsMHgzLDB4MCwweDAsMHgwLDB4MCwweDAsMHgw
LDB4MCwweDMsMHgwLDB4MCwweDMsMHgwLDB4MCwweDAsMHgwLDB4MCwweDAsMHgwLF0pOworICAg
IElQQy5zZW5kTWVzc2FnZSgnVUknLElQQy5wYWdlSUQsSVBDLm1lc3NhZ2VzLldlYlBheW1lbnRD
b29yZGluYXRvclByb3h5X0NvbXBsZXRlU2hpcHBpbmdDb250YWN0U2VsZWN0aW9uLm5hbWUsW2J1
Zl0pOworICAgIGRvY3VtZW50LndyaXRlKCJQQVNTIik7CisKKzwvc2NyaXB0Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426614</attachid>
            <date>2021-04-20 16:47:18 -0700</date>
            <delta_ts>2021-04-20 18:20:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224840-20210420164718.patch</filename>
            <type>text/plain</type>
            <size>3932</size>
            <attacher name="Ian Gilbert">iang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2MzI4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDU2NmY5NDJjYmVhNzcxYjg4
MDUxMTgwNTNhZWMwYTFiZmE5ZDUyYmQuLjdkNTg1MGI5Y2M0NWNhNzBlZGI2ODk1ZTZjM2M1NWU3
Nzk2NmM1NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMjEtMDQtMjAgIElhbiBHaWxi
ZXJ0ICA8aWFuZ0BhcHBsZS5jb20+CisKKyAgICAgICAgQ3Jhc2ggZHVlIHRvIFZlY3RvckJ1ZmZl
ciBwcmUtYWxsb2NhdGlvbiBmYWlsdXJlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjQ4NDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBWZWN0b3IgZGVjb2RlciBjb3VsZCBhdHRlbXB0IHRvIGFsbG9jYXRl
IGEgbGFyZ2UgYnVmZmVyIGFuZCBvbiBmYWlsdXJlIHdvdWxkIGNyYXNoLgorICAgICAgICBDaGFu
Z2VkIGRlY29kZSB0byBhdm9pZCBhbGxvY2F0aW5nIGEgVmVjdG9yIGJhc2VkIG9uIHRoZSBkZWNv
ZGVkIHNpemUuCisKKyAgICAgICAgVGVzdDogaXBjL2xhcmdlLXZlY3Rvci1hbGxvY2F0ZS1mYWls
dXJlLWNyYXNoLmh0bWwKKworICAgICAgICAqIFNoYXJlZC9Db2NvYS9XZWJDb3JlQXJndW1lbnRD
b2RlcnNDb2NvYS5tbToKKyAgICAgICAgKElQQzo6QXJndW1lbnRDb2RlcjxWZWN0b3I8UmVmUHRy
PEFwcGxlUGF5RXJyb3I+Pj46OmRlY29kZSk6CisKIDIwMjEtMDQtMjAgIEthdGUgQ2hlbmV5ICA8
a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CiAKICAgICAgICAgUHJlY29ubmVjdCB0YXNrcyBh
bmQgcHJlZmxpZ2h0IGNoZWNrcyBkbyBub3QgY29ycmVjdGx5IG1hcmsgYXBwLWJvdW5kIGNvbnRl
eHQgc3RyaW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9XZWJDb3Jl
QXJndW1lbnRDb2RlcnNDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1dlYkNv
cmVBcmd1bWVudENvZGVyc0NvY29hLm1tCmluZGV4IDUwMzQ0MWNiNmVhMzVmZDNlY2FmOTY3NmY5
MjY0ZDMyODEzNWIzNjYuLjc4NTc0ZjdhYzEzMDA1ZWQ4MDM5NzBlM2ExMGE4MGM0NmZhYmQxYTcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1dlYkNvcmVBcmd1bWVudENv
ZGVyc0NvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1dlYkNvcmVBcmd1
bWVudENvZGVyc0NvY29hLm1tCkBAIC0zNjAsNyArMzYwLDcgQEAgT3B0aW9uYWw8VmVjdG9yPFJl
ZlB0cjxBcHBsZVBheUVycm9yPj4+IEFyZ3VtZW50Q29kZXI8VmVjdG9yPFJlZlB0cjxBcHBsZVBh
eUVycm8KICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHNpemUpKQogICAgICAgICByZXR1cm4gV1RG
OjpudWxsb3B0OwogCi0gICAgVmVjdG9yPFJlZlB0cjxBcHBsZVBheUVycm9yPj4gZXJyb3JzKHNp
emUpOworICAgIFZlY3RvcjxSZWZQdHI8QXBwbGVQYXlFcnJvcj4+IGVycm9yczsKICAgICBmb3Ig
KHVpbnQ2NF90IGkgPSAwOyBpIDwgc2l6ZTsgKytpKSB7CiAgICAgICAgIE9wdGlvbmFsPGJvb2w+
IGlzVmFsaWQ7CiAgICAgICAgIGRlY29kZXIgPj4gaXNWYWxpZDsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBiZDNhN2I3ZWJj
ZTQ1YzcxMjg4OWNjZmEwMzBhYmRjM2E3Y2RmYWI2Li43ZjA0NzNiMjYwMzFlY2UyM2VhY2U3MTgw
MWY4YjVjOWU1ODFkYjZhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjEtMDQtMjAgIElhbiBH
aWxiZXJ0ICA8aWFuZ0BhcHBsZS5jb20+CisKKyAgICAgICAgQ3Jhc2ggZHVlIHRvIFZlY3RvckJ1
ZmZlciBwcmUtYWxsb2NhdGlvbiBmYWlsdXJlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQ4NDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBBZGRlZCBhIHJlZ3Jlc3Npb24gdGVzdC4KKworICAgICAgICAq
IGlwYy9sYXJnZS12ZWN0b3ItYWxsb2NhdGUtZmFpbHVyZS1jcmFzaC1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIGlwYy9sYXJnZS12ZWN0b3ItYWxsb2NhdGUtZmFpbHVyZS1jcmFzaC5o
dG1sOiBBZGRlZC4KKwogMjAyMS0wNC0yMCAgU2FtIFdlaW5pZyAgPHdlaW5pZ0BhcHBsZS5jb20+
CiAKICAgICAgICAgU2VwYXJhdGVkIG1vZGVscyBkb24ndCBnZXQgb3BhY2l0eSBzZXQgb24gdGhl
bSBhdCBhbGwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lwYy9sYXJnZS12ZWN0b3ItYWxsb2Nh
dGUtZmFpbHVyZS1jcmFzaC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pcGMvbGFyZ2UtdmVj
dG9yLWFsbG9jYXRlLWZhaWx1cmUtY3Jhc2gtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkyZjQ0
NmZiYTRkZGYxZWJkMTk4ZjZjNTlkYzIwZDVkNGE3YzIwYjQKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pcGMvbGFyZ2UtdmVjdG9yLWFsbG9jYXRlLWZhaWx1cmUtY3Jhc2gtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAorVGVzdCBwYXNzIGlmIGl0IGRvZXMgbm90IGNyYXNoLgor
CitQQVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pcGMvbGFyZ2UtdmVjdG9yLWFsbG9jYXRl
LWZhaWx1cmUtY3Jhc2guaHRtbCBiL0xheW91dFRlc3RzL2lwYy9sYXJnZS12ZWN0b3ItYWxsb2Nh
dGUtZmFpbHVyZS1jcmFzaC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY5OWY5ZDVjZDlkNjZlZDk2ZDljOWY0
NmVmMTgwMWJlYjlhOTg4YmIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pcGMvbGFy
Z2UtdmVjdG9yLWFsbG9jYXRlLWZhaWx1cmUtY3Jhc2guaHRtbApAQCAtMCwwICsxLDEzIEBACis8
IURPQ1RZUEUgaHRtbD48IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIElQQ1Rlc3RpbmdBUElFbmFi
bGVkPXRydWUgXSAtLT4KKzxwPlRlc3QgcGFzcyBpZiBpdCBkb2VzIG5vdCBjcmFzaC48L3A+Cis8
c2NyaXB0PgorICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgdGVzdFJ1bm5lci5k
dW1wQXNUZXh0KCk7CisKKyAgICBidWYgPSBuZXcgVWludDhBcnJheShbMHgzLDB4MCwweDAsMHgw
LDB4MCwweDAsMHgwLDB4MCwweDAsMHgwLDB4MCwweDAsMHgzLDB4MCwweDAsMHgwLDB4MCwweDAs
MHgwLDB4MCwweDMsMHgwLDB4MCwweDAsMHgwLDB4MCwweDAsMHgwLDB4MywweDAsMHgwLDB4MCww
eDAsMHgwLDB4MCwweDAsMHgzLDB4MCwweDAsMHgwLDB4MCwweDAsMHgwLDB4MCwweDMsMHgwLDB4
MCwweDAsMHgwLDB4MCwweDAsMHgwLDB4MywweDAsMHgwLDB4MCwweDAsMHgwLDB4MCwweDAsMHgz
LDB4MCwweDAsMHgwLDB4MCwweDAsMHgwLDB4MCwweDAsMHgwLDB4MCwweDAsMHgwLDB4MCwweDAs
MHgwLDB4MCwweDAsMHgzLDB4MCwweDAsMHgwLDB4MCwweDAsMHgwLDB4MCwweDMsMHgwLDB4MCww
eDMsMHgwLDB4MCwweDAsMHgwLDB4MCwweDAsMHgwLF0pOworCisgICAgaWYgKHdpbmRvdy5JUEMp
CisgICAgICAgIElQQy5zZW5kTWVzc2FnZSgnVUknLElQQy5wYWdlSUQsSVBDLm1lc3NhZ2VzLldl
YlBheW1lbnRDb29yZGluYXRvclByb3h5X0NvbXBsZXRlU2hpcHBpbmdDb250YWN0U2VsZWN0aW9u
Lm5hbWUsW2J1Zl0pOworICAgIGRvY3VtZW50LndyaXRlKCJQQVNTIik7CisKKzwvc2NyaXB0Pgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>