<?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>240790</bug_id>
          
          <creation_ts>2022-05-23 02:16:45 -0700</creation_ts>
          <short_desc>ANGLE: ERR: TextureMtl.mm:108 (GetLayerMipIndex): \t! Unreachable reached: GetLayerMipIndex(.../TextureMtl.mm:108)</short_desc>
          <delta_ts>2022-06-09 12:25:18 -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>ANGLE</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=239688</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="Kimmo Kinnunen">kkinnunen</reporter>
          <assigned_to name="Kyle Piddington">kpiddington</assigned_to>
          <cc>darin</cc>
    
    <cc>dino</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>kbr</cc>
    
    <cc>kkinnunen</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>kpiddington</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1871107</commentid>
    <comment_count>0</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2022-05-23 02:16:45 -0700</bug_when>
    <thetext>ANGLE: ERR: TextureMtl.mm:108 (GetLayerMipIndex): \t! Unreachable reached: GetLayerMipIndex(.../TextureMtl.mm:108)


0   libANGLE-shared.dylib         	       0x106bd35cc gl::LogMessage::~LogMessage() + 292 (debug.cpp:206)
1   libANGLE-shared.dylib         	       0x106bd35bc gl::LogMessage::~LogMessage() + 276 (debug.cpp:200)
2   libANGLE-shared.dylib         	       0x106bd2f10 gl::LogMessage::~LogMessage() + 32 (debug.cpp:182)
3   libANGLE-shared.dylib         	       0x1072aff78 rx::(anonymous namespace)::GetLayerMipIndex(std::__1::shared_ptr&lt;rx::mtl::Texture&gt; const&amp;, unsigned int, unsigned int) + 528 (TextureMtl.mm:108)
4   libANGLE-shared.dylib         	       0x1072afd20 rx::TextureMtl::initializeContents(gl::Context const*, unsigned int, gl::ImageIndex const&amp;) + 1208 (TextureMtl.mm:2072)
5   libANGLE-shared.dylib         	       0x106dcc4b4 gl::FramebufferAttachmentObject::initializeContents(gl::Context const*, unsigned int, gl::ImageIndex const&amp;) + 696 (FramebufferAttachment.cpp:346)
6   libANGLE-shared.dylib         	       0x10728cd80 gl::Texture::ensureSubImageInitialized(gl::Context const*, gl::ImageIndex const&amp;, gl::Box const&amp;) + 96 (Texture.cpp:2326)
7   libANGLE-shared.dylib         	       0x10728cc10 gl::Texture::setSubImage(gl::Context*, gl::PixelUnpackState const&amp;, gl::Buffer*, gl::TextureTarget, int, gl::Box const&amp;, unsigned int, unsigned int, unsigned char const*) + 412 (Texture.cpp:1274)
8   libANGLE-shared.dylib         	       0x106b3373c gl::Context::texSubImage2D(gl::TextureTarget, int, int, int, int, int, unsigned int, unsigned int, void const*) + 304 (Context.cpp:5132)
9   libANGLE-shared.dylib         	       0x106b33844 gl::Context::texSubImage2DRobust(gl::TextureTarget, int, int, int, int, int, unsigned int, unsigned int, int, void const*) + 128 (Context.cpp:5148)
10  libANGLE-shared.dylib         	       0x106cc5d18 GL_TexSubImage2DRobustANGLE + 316 (entry_points_gles_ext_autogen.cpp:2091)
11  WebCore                       	       0x14aaf6e00 WebCore::GraphicsContextGLANGLE::texSubImage2D(unsigned int, int, int, int, int, int, unsigned int, unsigned int, GCGLSpan&lt;void const, 18446744073709551615ul&gt;) + 152 (GraphicsContextGLANGLE.cpp:406)
12  WebKit                        	       0x11871e738 WebKit::RemoteGraphicsContextGL::texSubImage2D0(unsigned int, int, int, int, int, int, unsigned int, unsigned int, WTF::Span&lt;unsigned char const, 18446744073709551615ul&gt;&amp;&amp;) + 272 (RemoteGraphicsContextGLFunctionsGenerated.h:794)
13  WebKit                        	       0x1188a0c38 void IPC::callMemberFunctionImpl&lt;WebKit::RemoteGraphicsContextGL, void (WebKit::RemoteGraphicsContextGL::*)(unsigned int, int, int, int, int, int, unsigned int, unsigned int, WTF::Span&lt;unsigned char const, 18446744073709551615ul&gt;&amp;&amp;), std::__1::tuple&lt;unsigned int, int, int, int, int, int, unsigned int, unsigned int, WTF::Span&lt;unsigned char const, 18446744073709551615ul&gt; &gt;, 0ul, 1ul, 2ul, 3ul, 4ul, 5ul, 6ul, 7ul, 8ul&gt;(WebKit::RemoteGraphicsContextGL*, void (WebKit::RemoteGraphicsContextGL::*)(unsigned int, int, int, int, int, int, unsigned int, unsigned int, WTF::Span&lt;unsigned char const, 18446744073709551615ul&gt;&amp;&amp;), std::__1::tuple&lt;unsigned int, int, int, int, int, int, unsigned int, unsigned int, WTF::Span&lt;unsigned char const, 18446744073709551615ul&gt; &gt;&amp;&amp;, std::__1::integer_sequence&lt;unsigned long, 0ul, 1ul, 2ul, 3ul, 4ul, 5ul, 6ul, 7ul, 8ul&gt;) + 420 (HandleMessage.h:131)


To repro:
1. minibrowser debug
2. develop -&gt; experimental -&gt; enable GPU Process for webgl
3. close window, open new window
4. https://www.colorizephoto.com/converter
5. Clear website data
6. reload https://www.colorizephoto.com/converter
7. Observe GPU Process crash</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1872707</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-05-30 02:17:13 -0700</bug_when>
    <thetext>&lt;rdar://problem/94108163&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1873736</commentid>
    <comment_count>2</comment_count>
      <attachid>459976</attachid>
    <who name="Kyle Piddington">kpiddington</who>
    <bug_when>2022-06-02 17:14:16 -0700</bug_when>
    <thetext>Created attachment 459976
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1873737</commentid>
    <comment_count>3</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2022-06-02 17:15:28 -0700</bug_when>
    <thetext>Note that there are important steps to take when updating ANGLE. See https://trac.webkit.org/wiki/UpdatingANGLE</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1873756</commentid>
    <comment_count>4</comment_count>
      <attachid>459976</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2022-06-02 18:17:32 -0700</bug_when>
    <thetext>Comment on attachment 459976
Patch

This looks good, but is there a way to produce a test for this? I can help upstream it to the WebGL conformance suite.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874041</commentid>
    <comment_count>5</comment_count>
      <attachid>460022</attachid>
    <who name="Kyle Piddington">kpiddington</who>
    <bug_when>2022-06-03 15:08:50 -0700</bug_when>
    <thetext>Created attachment 460022
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874211</commentid>
    <comment_count>6</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2022-06-05 15:23:21 -0700</bug_when>
    <thetext>Seems like the new patch includes the expected test result, but not the test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874264</commentid>
    <comment_count>7</comment_count>
      <attachid>460022</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2022-06-06 04:11:53 -0700</bug_when>
    <thetext>Comment on attachment 460022
Patch

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

&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/mtl_resources.mm:277
&gt; +    if (!refOut || !refOut-&gt;get() || !refOut-&gt;get()-&gt;valid())

Here we deref the refOut already above, so `!refOut` does not make sense

Also if we have
A* a = new A;
then it does not make sense to check `if (a)`, that&apos;s redundant. The new never returns nullptr.

could we do
  ASSERT(refOut);
  TextureRef tex = new Texture(...);
  ANGLE_MTL_CHECK(context, tex-&gt;valid(), GL_OUT_OF_MEMORY);

  .. use tex

  *refOut = std::move(tex);
   return angle::Result::Continue;
}

&gt; LayoutTests/fast/canvas/webgl/large-texture-creation.html:44
&gt; +  assertMsg(err == gl.NO_ERROR || err == gl.OUT_OF_MEMORY,

glErrorShouldBe(gl, [gl.NO_ERROR, gl.OUT_OF_MEMORY], &quot;unexpected result when creating MAX_TEXTURE_SIZE texture&quot;)

(we don&apos;t currently immediately see what&apos;s wrong with the failing tests we get in this patch)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874368</commentid>
    <comment_count>8</comment_count>
      <attachid>460052</attachid>
    <who name="Kyle Piddington">kpiddington</who>
    <bug_when>2022-06-06 14:11:03 -0700</bug_when>
    <thetext>Created attachment 460052
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874377</commentid>
    <comment_count>9</comment_count>
      <attachid>460052</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2022-06-06 14:54:35 -0700</bug_when>
    <thetext>Comment on attachment 460052
Patch

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

&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/mtl_resources.mm:306
&gt; +    if (!(*refOut) || !(*refOut)-&gt;get() || !refOut-&gt;get()-&gt;valid())

Same issue here; if *refOut was null we’d have created on the call to reset above.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874380</commentid>
    <comment_count>10</comment_count>
      <attachid>460053</attachid>
    <who name="Kyle Piddington">kpiddington</who>
    <bug_when>2022-06-06 15:00:19 -0700</bug_when>
    <thetext>Created attachment 460053
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874388</commentid>
    <comment_count>11</comment_count>
      <attachid>460053</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2022-06-06 15:17:11 -0700</bug_when>
    <thetext>Comment on attachment 460053
Patch

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

&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/mtl_resources.mm:276
&gt; +    ASSERT(refOut);

Not sure we need this assertion, but if we do, we probably need it in *both* overloads of MakeTexture.

&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/mtl_resources.mm:278
&gt; +    ANGLE_MTL_CHECK(context, newTexture &amp;&amp; newTexture-&gt;valid(), GL_OUT_OF_MEMORY);

Pretty sure that &quot;new&quot; never returns nullptr in C++, so the &quot;newTexture &amp;&amp;&quot; part of this is not needed.

&gt; LayoutTests/fast/canvas/webgl/large-texture-creation.html:34
&gt; +  gl.texImage2D(gl.TEXTURE_2D,

We changed two code paths, but with only one test case we must be covering only one of the two.

&gt; LayoutTests/fast/canvas/webgl/large-texture-creation.html:44
&gt; +  glErrorShouldBe(gl, [gl.NO_ERROR, gl.OUT_OF_MEMORY], &quot;unexpected result when creating MAX_TEXTURE_SIZE texture&quot;)

Shouldn’t it always be OUT_OF_MEMORY? Why is NO_ERROR a possibility?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874396</commentid>
    <comment_count>12</comment_count>
    <who name="Kyle Piddington">kpiddington</who>
    <bug_when>2022-06-06 16:10:45 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #11)
&gt; Comment on attachment 460053 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=460053&amp;action=review
&gt; 
&gt; &gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/mtl_resources.mm:276
&gt; &gt; +    ASSERT(refOut);
&gt; 
&gt; Not sure we need this assertion, but if we do, we probably need it in *both*
&gt; overloads of MakeTexture.

I&apos;ll update this before landing.
&gt; 
&gt; &gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/mtl_resources.mm:278
&gt; &gt; +    ANGLE_MTL_CHECK(context, newTexture &amp;&amp; newTexture-&gt;valid(), GL_OUT_OF_MEMORY);
&gt; 
&gt; Pretty sure that &quot;new&quot; never returns nullptr in C++, so the &quot;newTexture &amp;&amp;&quot;
&gt; part of this is not needed.
Double checked this, I believe you&apos;re right. We&apos;d get an exception instead.
&gt; 
&gt; &gt; LayoutTests/fast/canvas/webgl/large-texture-creation.html:34
&gt; &gt; +  gl.texImage2D(gl.TEXTURE_2D,
&gt; 
&gt; We changed two code paths, but with only one test case we must be covering
&gt; only one of the two.

I don&apos;t have a good way to test the IOSurface binding API from just a webgl script, I suppose I could try to create a max-sized canvas object? 

&gt; &gt; LayoutTests/fast/canvas/webgl/large-texture-creation.html:44
&gt; &gt; +  glErrorShouldBe(gl, [gl.NO_ERROR, gl.OUT_OF_MEMORY], &quot;unexpected result when creating MAX_TEXTURE_SIZE texture&quot;)
&gt; 
&gt; Shouldn’t it always be OUT_OF_MEMORY? Why is NO_ERROR a possibility?

I kept no_error a possibility because some devices, especially those with larger GPUS, can actually allocate a max-sized F32 texture. a Mac pro with an AMD card, for instance, handles this fine as far as I could tell from a local build.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874811</commentid>
    <comment_count>13</comment_count>
      <attachid>460103</attachid>
    <who name="Kyle Piddington">kpiddington</who>
    <bug_when>2022-06-08 14:17:54 -0700</bug_when>
    <thetext>Created attachment 460103
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875034</commentid>
    <comment_count>14</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-06-09 10:17:44 -0700</bug_when>
    <thetext>kpiddington@apple.com does not have reviewer permissions according to https://raw.githubusercontent.com/WebKit/WebKit/main/metadata/contributors.json.

Rejecting attachment 460103 from commit queue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875067</commentid>
    <comment_count>15</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-06-09 12:25:16 -0700</bug_when>
    <thetext>Committed r295429 (251435@main): &lt;https://commits.webkit.org/251435@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 460103.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>459976</attachid>
            <date>2022-06-02 17:14:16 -0700</date>
            <delta_ts>2022-06-03 15:08:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-240790-20220602171415.patch</filename>
            <type>text/plain</type>
            <size>1143</size>
            <attacher name="Kyle Piddington">kpiddington</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9tZXRhbC9tdGxfcmVzb3VyY2VzLm1tIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9yZXNvdXJjZXMubW0KaW5kZXggOWE1NTNhYmExNWQw
MDRhZGNiYjgxMDA1NDg3YTQ4ZjVhMjVlMjE4ZC4uMjY1NDdiOWE3NTU0ZmY1ZmIyOGMzMzcxOGY2
NjlkZmUyYjRmOTFjMiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9yZXNvdXJjZXMubW0KKysrIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9yZXNvdXJjZXMubW0K
QEAgLTI3NCw3ICsyNzQsNyBAQCBhbmdsZTo6UmVzdWx0IFRleHR1cmU6Ok1ha2VUZXh0dXJlKENv
bnRleHRNdGwgKmNvbnRleHQsCiAgICAgICAgIHJldHVybiBhbmdsZTo6UmVzdWx0OjpTdG9wOwog
ICAgIH0KICAgICByZWZPdXQtPnJlc2V0KG5ldyBUZXh0dXJlKGNvbnRleHQsIGRlc2MsIG1pcHMs
IHJlbmRlclRhcmdldE9ubHksIGFsbG93Rm9ybWF0VmlldywgbWVtb3J5TGVzcykpOwotICAgIGlm
ICghcmVmT3V0IHx8ICFyZWZPdXQtPmdldCgpKQorICAgIGlmICghcmVmT3V0IHx8ICFyZWZPdXQt
PmdldCgpIHx8ICFyZWZPdXQtPmdldCgpLT52YWxpZCgpKQogICAgIHsKICAgICAgICAgQU5HTEVf
TVRMX0NIRUNLKGNvbnRleHQsIGZhbHNlLCBHTF9PVVRfT0ZfTUVNT1JZKTsKICAgICB9CkBAIC0z
MDQsNyArMzA0LDcgQEAgYW5nbGU6OlJlc3VsdCBUZXh0dXJlOjpNYWtlVGV4dHVyZShDb250ZXh0
TXRsICpjb250ZXh0LAogCiAgICAgcmVmT3V0LT5yZXNldChuZXcgVGV4dHVyZShjb250ZXh0LCBk
ZXNjLCBzdXJmYWNlUmVmLCBzbGljZSwgcmVuZGVyVGFyZ2V0T25seSkpOwogCi0gICAgaWYgKCEo
KnJlZk91dCkgfHwgISgqcmVmT3V0KS0+Z2V0KCkpCisgICAgaWYgKCEoKnJlZk91dCkgfHwgISgq
cmVmT3V0KS0+Z2V0KCkgfHwgIXJlZk91dC0+Z2V0KCktPnZhbGlkKCkpCiAgICAgewogICAgICAg
ICBBTkdMRV9NVExfQ0hFQ0soY29udGV4dCwgZmFsc2UsIEdMX09VVF9PRl9NRU1PUlkpOwogICAg
IH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>460022</attachid>
            <date>2022-06-03 15:08:50 -0700</date>
            <delta_ts>2022-06-06 14:11:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-240790-20220603150849.patch</filename>
            <type>text/plain</type>
            <size>4352</size>
            <attacher name="Kyle Piddington">kpiddington</attacher>
            
              <data encoding="base64">RnJvbSBjOWJjOWE2NjA4NDY0YTk1OWM3YmQwMzg5OTZhMmFkYThhNjdlOGY1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLeWxlIFBpZGRpbmd0b24gPGtwaWRkaW5ndG9uQGFwcGxlLmNv
bT4KRGF0ZTogRnJpLCAzIEp1biAyMDIyIDEyOjAyOjE3IC0wNzAwClN1YmplY3Q6IFtQQVRDSF0g
W0FOR0xFXSBUZXh0dXJlTXRsLm1tOjEwOCAoR2V0TGF5ZXJNaXBJbmRleCk6IFx0ISBVbnJlYWNo
YWJsZQogcmVhY2hlZCBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjQw
NzkwCgpSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCkNoZWNrIHRleHR1cmUgdmFsaWQgYmVm
b3JlIHVzZS4KCiogU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L21ldGFsL210bF9yZXNvdXJjZXMubW06CihyeDo6bXRsOjpUZXh0dXJlOjpNYWtlVGV4dHVyZSk6
Ci0tLQogLi4uL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9yZXNvdXJjZXMubW0gIHwgIDQg
Ky0KIC4uLi93ZWJnbC9sYXJnZS10ZXh0dXJlLWNyZWF0aW9uLWV4cGVjdGVkLnR4dCB8IDE1ICsr
KysrKwogLi4uL2NhbnZhcy93ZWJnbC9sYXJnZS10ZXh0dXJlLWNyZWF0aW9uLmh0bWwgIHwgNTMg
KysrKysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCA3MCBpbnNlcnRpb25zKCspLCAy
IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2Zhc3QvY2FudmFz
L3dlYmdsL2xhcmdlLXRleHR1cmUtY3JlYXRpb24tZXhwZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAx
MDA2NDQgTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvbGFyZ2UtdGV4dHVyZS1jcmVhdGlv
bi5odG1sCgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL21ldGFsL210bF9yZXNvdXJjZXMubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3Jlc291cmNlcy5tbQppbmRleCA5YTU1
M2FiYTE1ZDAuLjI2NTQ3YjlhNzU1NCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9yZXNvdXJjZXMubW0KKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9yZXNv
dXJjZXMubW0KQEAgLTI3NCw3ICsyNzQsNyBAQCBhbmdsZTo6UmVzdWx0IFRleHR1cmU6Ok1ha2VU
ZXh0dXJlKENvbnRleHRNdGwgKmNvbnRleHQsCiAgICAgICAgIHJldHVybiBhbmdsZTo6UmVzdWx0
OjpTdG9wOwogICAgIH0KICAgICByZWZPdXQtPnJlc2V0KG5ldyBUZXh0dXJlKGNvbnRleHQsIGRl
c2MsIG1pcHMsIHJlbmRlclRhcmdldE9ubHksIGFsbG93Rm9ybWF0VmlldywgbWVtb3J5TGVzcykp
OwotICAgIGlmICghcmVmT3V0IHx8ICFyZWZPdXQtPmdldCgpKQorICAgIGlmICghcmVmT3V0IHx8
ICFyZWZPdXQtPmdldCgpIHx8ICFyZWZPdXQtPmdldCgpLT52YWxpZCgpKQogICAgIHsKICAgICAg
ICAgQU5HTEVfTVRMX0NIRUNLKGNvbnRleHQsIGZhbHNlLCBHTF9PVVRfT0ZfTUVNT1JZKTsKICAg
ICB9CkBAIC0zMDQsNyArMzA0LDcgQEAgYW5nbGU6OlJlc3VsdCBUZXh0dXJlOjpNYWtlVGV4dHVy
ZShDb250ZXh0TXRsICpjb250ZXh0LAogCiAgICAgcmVmT3V0LT5yZXNldChuZXcgVGV4dHVyZShj
b250ZXh0LCBkZXNjLCBzdXJmYWNlUmVmLCBzbGljZSwgcmVuZGVyVGFyZ2V0T25seSkpOwogCi0g
ICAgaWYgKCEoKnJlZk91dCkgfHwgISgqcmVmT3V0KS0+Z2V0KCkpCisgICAgaWYgKCEoKnJlZk91
dCkgfHwgISgqcmVmT3V0KS0+Z2V0KCkgfHwgIXJlZk91dC0+Z2V0KCktPnZhbGlkKCkpCiAgICAg
ewogICAgICAgICBBTkdMRV9NVExfQ0hFQ0soY29udGV4dCwgZmFsc2UsIEdMX09VVF9PRl9NRU1P
UlkpOwogICAgIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dlYmdsL2xh
cmdlLXRleHR1cmUtY3JlYXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jYW52
YXMvd2ViZ2wvbGFyZ2UtdGV4dHVyZS1jcmVhdGlvbi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5jYmFjNTZkZGE4MDMKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy93ZWJnbC9sYXJnZS10ZXh0dXJlLWNyZWF0aW9u
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE1IEBACitUZXN0IGNyZWF0aW5nIGEgbWF4LXNpemUg
dGV4dHVyZS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBt
ZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK0NhbnZhcy5nZXRDb250
ZXh0CitQQVNTIGNvbnRleHQgZXhpc3RzCisKK1BBU1MgQ3JlYXRpbmcgbWF4IHNpemUgdGV4dHVy
ZSBzaG91bGQgc3VjY2VlZCwgb3IgdGhyb3cgb3V0IG9mIG1lbW9yeS4KKworUEFTUyBzdWNjZXNz
ZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvbGFyZ2UtdGV4dHVyZS1jcmVhdGlvbi5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvbGFyZ2UtdGV4dHVyZS1jcmVhdGlvbi5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uOWNjZThjMTg0YjA4Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvbGFyZ2UtdGV4
dHVyZS1jcmVhdGlvbi5odG1sCkBAIC0wLDAgKzEsNTMgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0
bWw+Cis8aGVhZD4KKzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4
dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4KKzx0aXRsZT5XZWJHTCBGcmFtZWJ1ZmZlciBUZXN0PC90
aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3dlYmdsLXRlc3QuanMiPjwvc2NyaXB0PgorPC9o
ZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Cis8ZGl2IGlkPSJjb25z
b2xlIj48L2Rpdj4KKzxjYW52YXMgaWQ9ImNhbnZhcyIgd2lkdGg9IjIiIGhlaWdodD0iMiI+IDwv
Y2FudmFzPgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCJUZXN0IGNyZWF0aW5nIGEgbWF4LXNpemUg
dGV4dHVyZS4iKTsKKworZGVidWcoIiIpOworZGVidWcoIkNhbnZhcy5nZXRDb250ZXh0Iik7CisK
K2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0
V2ViR0xFcnJvcnNUb0NvbnNvbGVFbmFibGVkKGZhbHNlKTsKKwordmFyIGNhbnZhcyA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKK3ZhciBnbCA9IGNyZWF0ZTNEQ29udGV4dChj
YW52YXMpOworaWYgKCFnbCkgeworICB0ZXN0RmFpbGVkKCJjb250ZXh0IGRvZXMgbm90IGV4aXN0
Iik7Cit9IGVsc2UgeworICB0ZXN0UGFzc2VkKCJjb250ZXh0IGV4aXN0cyIpOworCisgIGRlYnVn
KCIiKTsKKyAgCisgIHRleFNpemUgPSBnbC5nZXRQYXJhbWV0ZXIoZ2wuTUFYX1RFWFRVUkVfU0la
RSkKKyAgdmFyIHRleCA9IGdsLmNyZWF0ZVRleHR1cmUoKTsKKyAgZ2wuYmluZFRleHR1cmUoZ2wu
VEVYVFVSRV8yRCwgdGV4KTsKKyAgZ2wudGV4SW1hZ2UyRChnbC5URVhUVVJFXzJELAorICAgICAg
ICAgICAgICAgIDAsICAgICAgICAgICAgICAgICAvLyBsZXZlbAorICAgICAgICAgICAgICAgIGds
LlJHQkEsICAgICAgICAgICAvLyBpbnRlcm5hbEZvcm1hdAorICAgICAgICAgICAgICAgIHRleFNp
emUsICAgICAgLy8gd2lkdGgKKyAgICAgICAgICAgICAgICB0ZXhTaXplLCAgICAgLy8gaGVpZ2h0
CisgICAgICAgICAgICAgICAgMCwgICAgICAgICAgICAgICAgIC8vIGJvcmRlcgorICAgICAgICAg
ICAgICAgIGdsLlJHQkEsICAgICAgICAgICAvLyBmb3JtYXQKKyAgICAgICAgICAgICAgICBnbC5G
TE9BVCwgIC8vIHR5cGUKKyAgICAgICAgICAgICAgICBudWxsKTsgICAgICAgICAgICAgLy8gZGF0
YQorICBlcnIgPSBnbC5nZXRFcnJvcigpOworICBhc3NlcnRNc2coZXJyID09IGdsLk5PX0VSUk9S
IHx8IGVyciA9PSBnbC5PVVRfT0ZfTUVNT1JZLAorICAgICAgICAgICAgIkNyZWF0aW5nIG1heCBz
aXplIHRleHR1cmUgc2hvdWxkIHN1Y2NlZWQsIG9yIHRocm93IG91dCBvZiBtZW1vcnkuLiIpOwor
fQorCitkZWJ1ZygiIik7CisKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgorCi0tIAoyLjMy
LjAgKEFwcGxlIEdpdC0xMzIpCgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>460052</attachid>
            <date>2022-06-06 14:11:03 -0700</date>
            <delta_ts>2022-06-06 15:00:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-240790-20220606141103.patch</filename>
            <type>text/plain</type>
            <size>4697</size>
            <attacher name="Kyle Piddington">kpiddington</attacher>
            
              <data encoding="base64">RnJvbSBlZGE2OTRmOGNlY2E1Y2JkZTI5Mjk1YmYzZTlhMzlmMzQ5MTY4NjI4IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLeWxlIFBpZGRpbmd0b24gPGtwaWRkaW5ndG9uQGFwcGxlLmNv
bT4KRGF0ZTogRnJpLCAzIEp1biAyMDIyIDEyOjAyOjE3IC0wNzAwClN1YmplY3Q6IFtQQVRDSF0g
W0FOR0xFXSBUZXh0dXJlTXRsLm1tOjEwOCAoR2V0TGF5ZXJNaXBJbmRleCk6IFx0ISBVbnJlYWNo
YWJsZQogcmVhY2hlZCBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjQw
NzkwCgpSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCkNoZWNrIHRleHR1cmUgdmFsaWQgYmVm
b3JlIHVzZS4KCiogU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L21ldGFsL210bF9yZXNvdXJjZXMubW06CihyeDo6bXRsOjpUZXh0dXJlOjpNYWtlVGV4dHVyZSk6
Ci0tLQogLi4uL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9yZXNvdXJjZXMubW0gIHwgMTEg
KystLQogLi4uL3dlYmdsL2xhcmdlLXRleHR1cmUtY3JlYXRpb24tZXhwZWN0ZWQudHh0IHwgMTYg
KysrKysrCiAuLi4vY2FudmFzL3dlYmdsL2xhcmdlLXRleHR1cmUtY3JlYXRpb24uaHRtbCAgfCA1
MiArKysrKysrKysrKysrKysrKysrCiAzIGZpbGVzIGNoYW5nZWQsIDczIGluc2VydGlvbnMoKyks
IDYgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvZmFzdC9jYW52
YXMvd2ViZ2wvbGFyZ2UtdGV4dHVyZS1jcmVhdGlvbi1leHBlY3RlZC50eHQKIGNyZWF0ZSBtb2Rl
IDEwMDY0NCBMYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy93ZWJnbC9sYXJnZS10ZXh0dXJlLWNyZWF0
aW9uLmh0bWwKCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvbWV0YWwvbXRsX3Jlc291cmNlcy5tbSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfcmVzb3VyY2VzLm1tCmluZGV4IDlh
NTUzYWJhMTVkMC4uNmZjM2MwZjAyZmE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3Jlc291cmNlcy5tbQorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3Jl
c291cmNlcy5tbQpAQCAtMjczLDExICsyNzMsMTAgQEAgYW5nbGU6OlJlc3VsdCBUZXh0dXJlOjpN
YWtlVGV4dHVyZShDb250ZXh0TXRsICpjb250ZXh0LAogICAgIHsKICAgICAgICAgcmV0dXJuIGFu
Z2xlOjpSZXN1bHQ6OlN0b3A7CiAgICAgfQotICAgIHJlZk91dC0+cmVzZXQobmV3IFRleHR1cmUo
Y29udGV4dCwgZGVzYywgbWlwcywgcmVuZGVyVGFyZ2V0T25seSwgYWxsb3dGb3JtYXRWaWV3LCBt
ZW1vcnlMZXNzKSk7Ci0gICAgaWYgKCFyZWZPdXQgfHwgIXJlZk91dC0+Z2V0KCkpCi0gICAgewot
ICAgICAgICBBTkdMRV9NVExfQ0hFQ0soY29udGV4dCwgZmFsc2UsIEdMX09VVF9PRl9NRU1PUlkp
OwotICAgIH0KKyAgICBBU1NFUlQocmVmT3V0KTsKKyAgICBUZXh0dXJlICogbmV3VGV4dHVyZSA9
IG5ldyBUZXh0dXJlKGNvbnRleHQsIGRlc2MsIG1pcHMsIHJlbmRlclRhcmdldE9ubHksIGFsbG93
Rm9ybWF0VmlldywgbWVtb3J5TGVzcyk7CisgICAgQU5HTEVfTVRMX0NIRUNLKGNvbnRleHQsIG5l
d1RleHR1cmUgJiYgbmV3VGV4dHVyZS0+dmFsaWQoKSwgR0xfT1VUX09GX01FTU9SWSk7CisgICAg
cmVmT3V0LT5yZXNldChuZXdUZXh0dXJlKTsKICAgICBpZiAoIW10bEZvcm1hdC5oYXNEZXB0aEFu
ZFN0ZW5jaWxCaXRzKCkpCiAgICAgewogICAgICAgICByZWZPdXQtPmdldCgpLT5zZXRDb2xvcldy
aXRhYmxlTWFzayhHZXRFbXVsYXRlZENvbG9yV3JpdGVNYXNrKG10bEZvcm1hdCkpOwpAQCAtMzA0
LDcgKzMwMyw3IEBAIGFuZ2xlOjpSZXN1bHQgVGV4dHVyZTo6TWFrZVRleHR1cmUoQ29udGV4dE10
bCAqY29udGV4dCwKIAogICAgIHJlZk91dC0+cmVzZXQobmV3IFRleHR1cmUoY29udGV4dCwgZGVz
Yywgc3VyZmFjZVJlZiwgc2xpY2UsIHJlbmRlclRhcmdldE9ubHkpKTsKIAotICAgIGlmICghKCpy
ZWZPdXQpIHx8ICEoKnJlZk91dCktPmdldCgpKQorICAgIGlmICghKCpyZWZPdXQpIHx8ICEoKnJl
Zk91dCktPmdldCgpIHx8ICFyZWZPdXQtPmdldCgpLT52YWxpZCgpKQogICAgIHsKICAgICAgICAg
QU5HTEVfTVRMX0NIRUNLKGNvbnRleHQsIGZhbHNlLCBHTF9PVVRfT0ZfTUVNT1JZKTsKICAgICB9
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy93ZWJnbC9sYXJnZS10ZXh0dXJl
LWNyZWF0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dlYmdsL2xh
cmdlLXRleHR1cmUtY3JlYXRpb24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMC4uZjhmMTI2NmU0ODE5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvbGFyZ2UtdGV4dHVyZS1jcmVhdGlvbi1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSwxNiBAQAorVGVzdCBjcmVhdGluZyBhIG1heC1zaXplIHRleHR1cmUuCisK
K09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitDYW52YXMuZ2V0Q29udGV4dAorUEFTUyBj
b250ZXh0IGV4aXN0cworCitQQVNTIGdldEVycm9yIHdhcyBvbmUgb2Y6IE5PX0VSUk9SIG9yIE9V
VF9PRl9NRU1PUlkgOiB1bmV4cGVjdGVkIHJlc3VsdCB3aGVuIGNyZWF0aW5nIE1BWF9URVhUVVJF
X1NJWkUgdGV4dHVyZQorCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1Qg
Q09NUExFVEUKKworCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dlYmds
L2xhcmdlLXRleHR1cmUtY3JlYXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dl
YmdsL2xhcmdlLXRleHR1cmUtY3JlYXRpb24uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAuLjNhZmZmODZkZWRkYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvY2FudmFzL3dlYmdsL2xhcmdlLXRleHR1cmUtY3JlYXRpb24uaHRtbApAQCAtMCww
ICsxLDUyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBodHRwLWVx
dWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCI+Cis8
dGl0bGU+V2ViR0wgRnJhbWVidWZmZXIgVGVzdDwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
Li4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNl
cy93ZWJnbC10ZXN0LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iZGVz
Y3JpcHRpb24iPjwvZGl2PgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8Y2FudmFzIGlkPSJj
YW52YXMiIHdpZHRoPSIyIiBoZWlnaHQ9IjIiPiA8L2NhbnZhcz4KKzxzY3JpcHQ+CitkZXNjcmlw
dGlvbigiVGVzdCBjcmVhdGluZyBhIG1heC1zaXplIHRleHR1cmUuIik7CisKK2RlYnVnKCIiKTsK
K2RlYnVnKCJDYW52YXMuZ2V0Q29udGV4dCIpOworCitpZiAod2luZG93LmludGVybmFscykKKyAg
ICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldFdlYkdMRXJyb3JzVG9Db25zb2xlRW5hYmxl
ZChmYWxzZSk7CisKK3ZhciBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFz
Iik7Cit2YXIgZ2wgPSBjcmVhdGUzRENvbnRleHQoY2FudmFzKTsKK2lmICghZ2wpIHsKKyAgdGVz
dEZhaWxlZCgiY29udGV4dCBkb2VzIG5vdCBleGlzdCIpOworfSBlbHNlIHsKKyAgdGVzdFBhc3Nl
ZCgiY29udGV4dCBleGlzdHMiKTsKKworICBkZWJ1ZygiIik7CisgIAorICB0ZXhTaXplID0gZ2wu
Z2V0UGFyYW1ldGVyKGdsLk1BWF9URVhUVVJFX1NJWkUpCisgIHZhciB0ZXggPSBnbC5jcmVhdGVU
ZXh0dXJlKCk7CisgIGdsLmJpbmRUZXh0dXJlKGdsLlRFWFRVUkVfMkQsIHRleCk7CisgIGdsLnRl
eEltYWdlMkQoZ2wuVEVYVFVSRV8yRCwKKyAgICAgICAgICAgICAgICAwLCAgICAgICAgICAgICAg
ICAgLy8gbGV2ZWwKKyAgICAgICAgICAgICAgICBnbC5SR0JBLCAgICAgICAgICAgLy8gaW50ZXJu
YWxGb3JtYXQKKyAgICAgICAgICAgICAgICB0ZXhTaXplLCAgICAgIC8vIHdpZHRoCisgICAgICAg
ICAgICAgICAgdGV4U2l6ZSwgICAgIC8vIGhlaWdodAorICAgICAgICAgICAgICAgIDAsICAgICAg
ICAgICAgICAgICAvLyBib3JkZXIKKyAgICAgICAgICAgICAgICBnbC5SR0JBLCAgICAgICAgICAg
Ly8gZm9ybWF0CisgICAgICAgICAgICAgICAgZ2wuRkxPQVQsICAvLyB0eXBlCisgICAgICAgICAg
ICAgICAgbnVsbCk7ICAgICAgICAgICAgIC8vIGRhdGEKKyAgZXJyID0gZ2wuZ2V0RXJyb3IoKTsK
KyAgZ2xFcnJvclNob3VsZEJlKGdsLCBbZ2wuTk9fRVJST1IsIGdsLk9VVF9PRl9NRU1PUlldLCAi
dW5leHBlY3RlZCByZXN1bHQgd2hlbiBjcmVhdGluZyBNQVhfVEVYVFVSRV9TSVpFIHRleHR1cmUi
KQorfQorCitkZWJ1ZygiIik7CisKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgorCi0tIAoy
LjMyLjAgKEFwcGxlIEdpdC0xMzIpCgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>460053</attachid>
            <date>2022-06-06 15:00:19 -0700</date>
            <delta_ts>2022-06-08 14:17:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-240790-20220606150018.patch</filename>
            <type>text/plain</type>
            <size>5036</size>
            <attacher name="Kyle Piddington">kpiddington</attacher>
            
              <data encoding="base64">RnJvbSAxZjA3NDgwM2U2MzRmMTljMjgxODMwNTIyYTU4NjUwZGFlMTExMzliIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLeWxlIFBpZGRpbmd0b24gPGtwaWRkaW5ndG9uQGFwcGxlLmNv
bT4KRGF0ZTogRnJpLCAzIEp1biAyMDIyIDEyOjAyOjE3IC0wNzAwClN1YmplY3Q6IFtQQVRDSF0g
W0FOR0xFXSBUZXh0dXJlTXRsLm1tOjEwOCAoR2V0TGF5ZXJNaXBJbmRleCk6IFx0ISBVbnJlYWNo
YWJsZQogcmVhY2hlZCBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjQw
NzkwCgpSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCkNoZWNrIHRleHR1cmUgdmFsaWQgYmVm
b3JlIHVzZS4KCiogU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L21ldGFsL210bF9yZXNvdXJjZXMubW06CihyeDo6bXRsOjpUZXh0dXJlOjpNYWtlVGV4dHVyZSk6
Ci0tLQogLi4uL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9yZXNvdXJjZXMubW0gIHwgMTgg
KysrLS0tLQogLi4uL3dlYmdsL2xhcmdlLXRleHR1cmUtY3JlYXRpb24tZXhwZWN0ZWQudHh0IHwg
MTYgKysrKysrCiAuLi4vY2FudmFzL3dlYmdsL2xhcmdlLXRleHR1cmUtY3JlYXRpb24uaHRtbCAg
fCA1MiArKysrKysrKysrKysrKysrKysrCiAzIGZpbGVzIGNoYW5nZWQsIDc1IGluc2VydGlvbnMo
KyksIDExIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2Zhc3Qv
Y2FudmFzL3dlYmdsL2xhcmdlLXRleHR1cmUtY3JlYXRpb24tZXhwZWN0ZWQudHh0CiBjcmVhdGUg
bW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvbGFyZ2UtdGV4dHVyZS1j
cmVhdGlvbi5odG1sCgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9yZXNvdXJjZXMubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3Jlc291cmNlcy5tbQppbmRl
eCA5YTU1M2FiYTE1ZDAuLjE3Njc2Zjg3MDhiYyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9yZXNvdXJjZXMubW0KKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210
bF9yZXNvdXJjZXMubW0KQEAgLTI3MywxMSArMjczLDEwIEBAIGFuZ2xlOjpSZXN1bHQgVGV4dHVy
ZTo6TWFrZVRleHR1cmUoQ29udGV4dE10bCAqY29udGV4dCwKICAgICB7CiAgICAgICAgIHJldHVy
biBhbmdsZTo6UmVzdWx0OjpTdG9wOwogICAgIH0KLSAgICByZWZPdXQtPnJlc2V0KG5ldyBUZXh0
dXJlKGNvbnRleHQsIGRlc2MsIG1pcHMsIHJlbmRlclRhcmdldE9ubHksIGFsbG93Rm9ybWF0Vmll
dywgbWVtb3J5TGVzcykpOwotICAgIGlmICghcmVmT3V0IHx8ICFyZWZPdXQtPmdldCgpKQotICAg
IHsKLSAgICAgICAgQU5HTEVfTVRMX0NIRUNLKGNvbnRleHQsIGZhbHNlLCBHTF9PVVRfT0ZfTUVN
T1JZKTsKLSAgICB9CisgICAgQVNTRVJUKHJlZk91dCk7CisgICAgVGV4dHVyZSAqbmV3VGV4dHVy
ZSA9IG5ldyBUZXh0dXJlKGNvbnRleHQsIGRlc2MsIG1pcHMsIHJlbmRlclRhcmdldE9ubHksIGFs
bG93Rm9ybWF0VmlldywgbWVtb3J5TGVzcyk7CisgICAgQU5HTEVfTVRMX0NIRUNLKGNvbnRleHQs
IG5ld1RleHR1cmUgJiYgbmV3VGV4dHVyZS0+dmFsaWQoKSwgR0xfT1VUX09GX01FTU9SWSk7Cisg
ICAgcmVmT3V0LT5yZXNldChuZXdUZXh0dXJlKTsKICAgICBpZiAoIW10bEZvcm1hdC5oYXNEZXB0
aEFuZFN0ZW5jaWxCaXRzKCkpCiAgICAgewogICAgICAgICByZWZPdXQtPmdldCgpLT5zZXRDb2xv
cldyaXRhYmxlTWFzayhHZXRFbXVsYXRlZENvbG9yV3JpdGVNYXNrKG10bEZvcm1hdCkpOwpAQCAt
MzAyLDEyICszMDEsOSBAQCBhbmdsZTo6UmVzdWx0IFRleHR1cmU6Ok1ha2VUZXh0dXJlKENvbnRl
eHRNdGwgKmNvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRleHR1
cmVSZWYgKnJlZk91dCkKIHsKIAotICAgIHJlZk91dC0+cmVzZXQobmV3IFRleHR1cmUoY29udGV4
dCwgZGVzYywgc3VyZmFjZVJlZiwgc2xpY2UsIHJlbmRlclRhcmdldE9ubHkpKTsKLQotICAgIGlm
ICghKCpyZWZPdXQpIHx8ICEoKnJlZk91dCktPmdldCgpKQotICAgIHsKLSAgICAgICAgQU5HTEVf
TVRMX0NIRUNLKGNvbnRleHQsIGZhbHNlLCBHTF9PVVRfT0ZfTUVNT1JZKTsKLSAgICB9CisgICAg
VGV4dHVyZSAqbmV3VGV4dHVyZSA9IG5ldyBUZXh0dXJlKGNvbnRleHQsIGRlc2MsIHN1cmZhY2VS
ZWYsIHNsaWNlLCByZW5kZXJUYXJnZXRPbmx5KTsKKyAgICBBTkdMRV9NVExfQ0hFQ0soY29udGV4
dCwgbmV3VGV4dHVyZSAmJiBuZXdUZXh0dXJlLT52YWxpZCgpLCBHTF9PVVRfT0ZfTUVNT1JZKTsK
KyAgICByZWZPdXQtPnJlc2V0KG5ld1RleHR1cmUpOwogICAgIGlmICghbXRsRm9ybWF0Lmhhc0Rl
cHRoQW5kU3RlbmNpbEJpdHMoKSkKICAgICB7CiAgICAgICAgIHJlZk91dC0+Z2V0KCktPnNldENv
bG9yV3JpdGFibGVNYXNrKEdldEVtdWxhdGVkQ29sb3JXcml0ZU1hc2sobXRsRm9ybWF0KSk7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy93ZWJnbC9sYXJnZS10ZXh0dXJlLWNy
ZWF0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dlYmdsL2xhcmdl
LXRleHR1cmUtY3JlYXRpb24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMC4uZjhmMTI2NmU0ODE5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9jYW52YXMvd2ViZ2wvbGFyZ2UtdGV4dHVyZS1jcmVhdGlvbi1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSwxNiBAQAorVGVzdCBjcmVhdGluZyBhIG1heC1zaXplIHRleHR1cmUuCisKK09u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitDYW52YXMuZ2V0Q29udGV4dAorUEFTUyBjb250
ZXh0IGV4aXN0cworCitQQVNTIGdldEVycm9yIHdhcyBvbmUgb2Y6IE5PX0VSUk9SIG9yIE9VVF9P
Rl9NRU1PUlkgOiB1bmV4cGVjdGVkIHJlc3VsdCB3aGVuIGNyZWF0aW5nIE1BWF9URVhUVVJFX1NJ
WkUgdGV4dHVyZQorCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09N
UExFVEUKKworCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dlYmdsL2xh
cmdlLXRleHR1cmUtY3JlYXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dlYmds
L2xhcmdlLXRleHR1cmUtY3JlYXRpb24uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAuLjNhZmZmODZkZWRkYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvY2FudmFzL3dlYmdsL2xhcmdlLXRleHR1cmUtY3JlYXRpb24uaHRtbApAQCAtMCwwICsx
LDUyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBodHRwLWVxdWl2
PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCI+Cis8dGl0
bGU+V2ViR0wgRnJhbWVidWZmZXIgVGVzdDwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy93
ZWJnbC10ZXN0LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iZGVzY3Jp
cHRpb24iPjwvZGl2PgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8Y2FudmFzIGlkPSJjYW52
YXMiIHdpZHRoPSIyIiBoZWlnaHQ9IjIiPiA8L2NhbnZhcz4KKzxzY3JpcHQ+CitkZXNjcmlwdGlv
bigiVGVzdCBjcmVhdGluZyBhIG1heC1zaXplIHRleHR1cmUuIik7CisKK2RlYnVnKCIiKTsKK2Rl
YnVnKCJDYW52YXMuZ2V0Q29udGV4dCIpOworCitpZiAod2luZG93LmludGVybmFscykKKyAgICB3
aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldFdlYkdMRXJyb3JzVG9Db25zb2xlRW5hYmxlZChm
YWxzZSk7CisKK3ZhciBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7
Cit2YXIgZ2wgPSBjcmVhdGUzRENvbnRleHQoY2FudmFzKTsKK2lmICghZ2wpIHsKKyAgdGVzdEZh
aWxlZCgiY29udGV4dCBkb2VzIG5vdCBleGlzdCIpOworfSBlbHNlIHsKKyAgdGVzdFBhc3NlZCgi
Y29udGV4dCBleGlzdHMiKTsKKworICBkZWJ1ZygiIik7CisgIAorICB0ZXhTaXplID0gZ2wuZ2V0
UGFyYW1ldGVyKGdsLk1BWF9URVhUVVJFX1NJWkUpCisgIHZhciB0ZXggPSBnbC5jcmVhdGVUZXh0
dXJlKCk7CisgIGdsLmJpbmRUZXh0dXJlKGdsLlRFWFRVUkVfMkQsIHRleCk7CisgIGdsLnRleElt
YWdlMkQoZ2wuVEVYVFVSRV8yRCwKKyAgICAgICAgICAgICAgICAwLCAgICAgICAgICAgICAgICAg
Ly8gbGV2ZWwKKyAgICAgICAgICAgICAgICBnbC5SR0JBLCAgICAgICAgICAgLy8gaW50ZXJuYWxG
b3JtYXQKKyAgICAgICAgICAgICAgICB0ZXhTaXplLCAgICAgIC8vIHdpZHRoCisgICAgICAgICAg
ICAgICAgdGV4U2l6ZSwgICAgIC8vIGhlaWdodAorICAgICAgICAgICAgICAgIDAsICAgICAgICAg
ICAgICAgICAvLyBib3JkZXIKKyAgICAgICAgICAgICAgICBnbC5SR0JBLCAgICAgICAgICAgLy8g
Zm9ybWF0CisgICAgICAgICAgICAgICAgZ2wuRkxPQVQsICAvLyB0eXBlCisgICAgICAgICAgICAg
ICAgbnVsbCk7ICAgICAgICAgICAgIC8vIGRhdGEKKyAgZXJyID0gZ2wuZ2V0RXJyb3IoKTsKKyAg
Z2xFcnJvclNob3VsZEJlKGdsLCBbZ2wuTk9fRVJST1IsIGdsLk9VVF9PRl9NRU1PUlldLCAidW5l
eHBlY3RlZCByZXN1bHQgd2hlbiBjcmVhdGluZyBNQVhfVEVYVFVSRV9TSVpFIHRleHR1cmUiKQor
fQorCitkZWJ1ZygiIik7CisKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgorCi0tIAoyLjMy
LjAgKEFwcGxlIEdpdC0xMzIpCgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>460103</attachid>
            <date>2022-06-08 14:17:54 -0700</date>
            <delta_ts>2022-06-09 12:25:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-240790-20220608141753.patch</filename>
            <type>text/plain</type>
            <size>5080</size>
            <attacher name="Kyle Piddington">kpiddington</attacher>
            
              <data encoding="base64">RnJvbSAxYzNiN2E4NmE4Y2I2NWVlN2VkMTRiM2FiMTYzZTUyZDBjZGM0Y2Q2IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLeWxlIFBpZGRpbmd0b24gPGtwaWRkaW5ndG9uQGFwcGxlLmNv
bT4KRGF0ZTogRnJpLCAzIEp1biAyMDIyIDEyOjAyOjE3IC0wNzAwClN1YmplY3Q6IFtQQVRDSF0g
W0FOR0xFXSBUZXh0dXJlTXRsLm1tOjEwOCAoR2V0TGF5ZXJNaXBJbmRleCk6IFx0ISBVbnJlYWNo
YWJsZQogcmVhY2hlZCBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjQw
NzkwCgpSZXZpZXdlZCBieSBEYXJpbiBBZGxlcgoKQ2hlY2sgdGV4dHVyZSB2YWxpZCBiZWZvcmUg
dXNlLgoKKiBTb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvbWV0
YWwvbXRsX3Jlc291cmNlcy5tbToKKHJ4OjptdGw6OlRleHR1cmU6Ok1ha2VUZXh0dXJlKToKLS0t
CiAuLi4vbGliQU5HTEUvcmVuZGVyZXIvbWV0YWwvbXRsX3Jlc291cmNlcy5tbSAgfCAyMCArKyst
LS0tCiAuLi4vd2ViZ2wvbGFyZ2UtdGV4dHVyZS1jcmVhdGlvbi1leHBlY3RlZC50eHQgfCAxNCAr
KysrKwogLi4uL2NhbnZhcy93ZWJnbC9sYXJnZS10ZXh0dXJlLWNyZWF0aW9uLmh0bWwgIHwgNTIg
KysrKysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCA3NCBpbnNlcnRpb25zKCspLCAx
MiBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0cy9mYXN0L2NhbnZh
cy93ZWJnbC9sYXJnZS10ZXh0dXJlLWNyZWF0aW9uLWV4cGVjdGVkLnR4dAogY3JlYXRlIG1vZGUg
MTAwNjQ0IExheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dlYmdsL2xhcmdlLXRleHR1cmUtY3JlYXRp
b24uaHRtbAoKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdM
RS9yZW5kZXJlci9tZXRhbC9tdGxfcmVzb3VyY2VzLm1tIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL21ldGFsL210bF9yZXNvdXJjZXMubW0KaW5kZXggOWE1
NTNhYmExNWQwLi40MTRhM2Q5ZGJiN2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfcmVzb3VyY2VzLm1tCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9tZXRhbC9tdGxfcmVz
b3VyY2VzLm1tCkBAIC0yNzMsMTEgKzI3MywxMCBAQCBhbmdsZTo6UmVzdWx0IFRleHR1cmU6Ok1h
a2VUZXh0dXJlKENvbnRleHRNdGwgKmNvbnRleHQsCiAgICAgewogICAgICAgICByZXR1cm4gYW5n
bGU6OlJlc3VsdDo6U3RvcDsKICAgICB9Ci0gICAgcmVmT3V0LT5yZXNldChuZXcgVGV4dHVyZShj
b250ZXh0LCBkZXNjLCBtaXBzLCByZW5kZXJUYXJnZXRPbmx5LCBhbGxvd0Zvcm1hdFZpZXcsIG1l
bW9yeUxlc3MpKTsKLSAgICBpZiAoIXJlZk91dCB8fCAhcmVmT3V0LT5nZXQoKSkKLSAgICB7Ci0g
ICAgICAgIEFOR0xFX01UTF9DSEVDSyhjb250ZXh0LCBmYWxzZSwgR0xfT1VUX09GX01FTU9SWSk7
Ci0gICAgfQorICAgIEFTU0VSVChyZWZPdXQpOworICAgIFRleHR1cmUgKm5ld1RleHR1cmUgPSBu
ZXcgVGV4dHVyZShjb250ZXh0LCBkZXNjLCBtaXBzLCByZW5kZXJUYXJnZXRPbmx5LCBhbGxvd0Zv
cm1hdFZpZXcsIG1lbW9yeUxlc3MpOworICAgIEFOR0xFX01UTF9DSEVDSyhjb250ZXh0LCBuZXdU
ZXh0dXJlLT52YWxpZCgpLCBHTF9PVVRfT0ZfTUVNT1JZKTsKKyAgICByZWZPdXQtPnJlc2V0KG5l
d1RleHR1cmUpOwogICAgIGlmICghbXRsRm9ybWF0Lmhhc0RlcHRoQW5kU3RlbmNpbEJpdHMoKSkK
ICAgICB7CiAgICAgICAgIHJlZk91dC0+Z2V0KCktPnNldENvbG9yV3JpdGFibGVNYXNrKEdldEVt
dWxhdGVkQ29sb3JXcml0ZU1hc2sobXRsRm9ybWF0KSk7CkBAIC0zMDEsMTMgKzMwMCwxMCBAQCBh
bmdsZTo6UmVzdWx0IFRleHR1cmU6Ok1ha2VUZXh0dXJlKENvbnRleHRNdGwgKmNvbnRleHQsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgcmVuZGVyVGFyZ2V0T25seSwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGV4dHVyZVJlZiAqcmVmT3V0KQog
ewotCi0gICAgcmVmT3V0LT5yZXNldChuZXcgVGV4dHVyZShjb250ZXh0LCBkZXNjLCBzdXJmYWNl
UmVmLCBzbGljZSwgcmVuZGVyVGFyZ2V0T25seSkpOwotCi0gICAgaWYgKCEoKnJlZk91dCkgfHwg
ISgqcmVmT3V0KS0+Z2V0KCkpCi0gICAgewotICAgICAgICBBTkdMRV9NVExfQ0hFQ0soY29udGV4
dCwgZmFsc2UsIEdMX09VVF9PRl9NRU1PUlkpOwotICAgIH0KKyAgICBBU1NFUlQocmVmT3V0KTsK
KyAgICBUZXh0dXJlICpuZXdUZXh0dXJlID0gbmV3IFRleHR1cmUoY29udGV4dCwgZGVzYywgc3Vy
ZmFjZVJlZiwgc2xpY2UsIHJlbmRlclRhcmdldE9ubHkpOworICAgIEFOR0xFX01UTF9DSEVDSyhj
b250ZXh0LCBuZXdUZXh0dXJlLT52YWxpZCgpLCBHTF9PVVRfT0ZfTUVNT1JZKTsKKyAgICByZWZP
dXQtPnJlc2V0KG5ld1RleHR1cmUpOwogICAgIGlmICghbXRsRm9ybWF0Lmhhc0RlcHRoQW5kU3Rl
bmNpbEJpdHMoKSkKICAgICB7CiAgICAgICAgIHJlZk91dC0+Z2V0KCktPnNldENvbG9yV3JpdGFi
bGVNYXNrKEdldEVtdWxhdGVkQ29sb3JXcml0ZU1hc2sobXRsRm9ybWF0KSk7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy93ZWJnbC9sYXJnZS10ZXh0dXJlLWNyZWF0aW9uLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dlYmdsL2xhcmdlLXRleHR1cmUt
Y3JlYXRpb24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMC4uY2I3MGM3YjdhNzE2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9j
YW52YXMvd2ViZ2wvbGFyZ2UtdGV4dHVyZS1jcmVhdGlvbi1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSwxNCBAQAorVGVzdCBjcmVhdGluZyBhIG1heC1zaXplIHRleHR1cmUuCisKK09uIHN1Y2Nlc3Ms
IHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJU
RVNUIENPTVBMRVRFIi4KKworCitDYW52YXMuZ2V0Q29udGV4dAorUEFTUyBjb250ZXh0IGV4aXN0
cworCitQQVNTIGdldEVycm9yIHdhcyBvbmUgb2Y6IE5PX0VSUk9SIG9yIE9VVF9PRl9NRU1PUlkg
OiB1bmV4cGVjdGVkIHJlc3VsdCB3aGVuIGNyZWF0aW5nIE1BWF9URVhUVVJFX1NJWkUgdGV4dHVy
ZQorCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvbGFyZ2UtdGV4dHVyZS1j
cmVhdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvbGFyZ2UtdGV4dHVy
ZS1jcmVhdGlvbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4u
M2FmZmY4NmRlZGRiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMv
d2ViZ2wvbGFyZ2UtdGV4dHVyZS1jcmVhdGlvbi5odG1sCkBAIC0wLDAgKzEsNTIgQEAKKzwhRE9D
VFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlw
ZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4KKzx0aXRsZT5XZWJHTCBGcmFt
ZWJ1ZmZlciBUZXN0PC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMt
dGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3dlYmdsLXRlc3QuanMi
Pjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+
Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxjYW52YXMgaWQ9ImNhbnZhcyIgd2lkdGg9IjIi
IGhlaWdodD0iMiI+IDwvY2FudmFzPgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCJUZXN0IGNyZWF0
aW5nIGEgbWF4LXNpemUgdGV4dHVyZS4iKTsKKworZGVidWcoIiIpOworZGVidWcoIkNhbnZhcy5n
ZXRDb250ZXh0Iik7CisKK2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgIHdpbmRvdy5pbnRlcm5h
bHMuc2V0dGluZ3Muc2V0V2ViR0xFcnJvcnNUb0NvbnNvbGVFbmFibGVkKGZhbHNlKTsKKwordmFy
IGNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKK3ZhciBnbCA9IGNy
ZWF0ZTNEQ29udGV4dChjYW52YXMpOworaWYgKCFnbCkgeworICB0ZXN0RmFpbGVkKCJjb250ZXh0
IGRvZXMgbm90IGV4aXN0Iik7Cit9IGVsc2UgeworICB0ZXN0UGFzc2VkKCJjb250ZXh0IGV4aXN0
cyIpOworCisgIGRlYnVnKCIiKTsKKyAgCisgIHRleFNpemUgPSBnbC5nZXRQYXJhbWV0ZXIoZ2wu
TUFYX1RFWFRVUkVfU0laRSkKKyAgdmFyIHRleCA9IGdsLmNyZWF0ZVRleHR1cmUoKTsKKyAgZ2wu
YmluZFRleHR1cmUoZ2wuVEVYVFVSRV8yRCwgdGV4KTsKKyAgZ2wudGV4SW1hZ2UyRChnbC5URVhU
VVJFXzJELAorICAgICAgICAgICAgICAgIDAsICAgICAgICAgICAgICAgICAvLyBsZXZlbAorICAg
ICAgICAgICAgICAgIGdsLlJHQkEsICAgICAgICAgICAvLyBpbnRlcm5hbEZvcm1hdAorICAgICAg
ICAgICAgICAgIHRleFNpemUsICAgICAgLy8gd2lkdGgKKyAgICAgICAgICAgICAgICB0ZXhTaXpl
LCAgICAgLy8gaGVpZ2h0CisgICAgICAgICAgICAgICAgMCwgICAgICAgICAgICAgICAgIC8vIGJv
cmRlcgorICAgICAgICAgICAgICAgIGdsLlJHQkEsICAgICAgICAgICAvLyBmb3JtYXQKKyAgICAg
ICAgICAgICAgICBnbC5GTE9BVCwgIC8vIHR5cGUKKyAgICAgICAgICAgICAgICBudWxsKTsgICAg
ICAgICAgICAgLy8gZGF0YQorICBlcnIgPSBnbC5nZXRFcnJvcigpOworICBnbEVycm9yU2hvdWxk
QmUoZ2wsIFtnbC5OT19FUlJPUiwgZ2wuT1VUX09GX01FTU9SWV0sICJ1bmV4cGVjdGVkIHJlc3Vs
dCB3aGVuIGNyZWF0aW5nIE1BWF9URVhUVVJFX1NJWkUgdGV4dHVyZSIpCit9CisKK2RlYnVnKCIi
KTsKKworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CisKLS0gCjIuMzIuMCAoQXBwbGUgR2l0
LTEzMikKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>