<?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>235189</bug_id>
          
          <creation_ts>2022-01-13 10:01:10 -0800</creation_ts>
          <short_desc>AX: AXIsolatedObject::initializeAttributeData should compute AXAncestorFlags if they are unexpectedly uninitialized</short_desc>
          <delta_ts>2022-01-14 13:05:31 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Accessibility</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="Tyler Wilcock">tyler_w</reporter>
          <assigned_to name="Tyler Wilcock">tyler_w</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>andresg_22</cc>
    
    <cc>apinheiro</cc>
    
    <cc>cfleizach</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>jcraig</cc>
    
    <cc>jdiggs</cc>
    
    <cc>samuel_white</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1830596</commentid>
    <comment_count>0</comment_count>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2022-01-13 10:01:10 -0800</bug_when>
    <thetext>Currently in AXIsolatedObject::initializeAttributeData we have this:

    auto ancestorFlags = object.ancestorFlags();
    // Only store the object&apos;s ancestor flags if any are set (excluding the &quot;is initialized&quot; flag).
    if (ancestorFlags ^ AXAncestorFlag::FlagsInitialized)
        setProperty(AXPropertyName::AncestorFlags, object.ancestorFlags());

Instead, we should do the traversal to initialize the flags rather than creating an isolated object with missing properties.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830597</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-01-13 10:01:21 -0800</bug_when>
    <thetext>&lt;rdar://problem/87556197&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830603</commentid>
    <comment_count>2</comment_count>
      <attachid>449077</attachid>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2022-01-13 10:11:46 -0800</bug_when>
    <thetext>Created attachment 449077
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830707</commentid>
    <comment_count>3</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2022-01-13 14:02:56 -0800</bug_when>
    <thetext>(In reply to Tyler Wilcock from comment #2)
&gt; Created attachment 449077 [details]
&gt; Patch

--- a/Source/WebCore/accessibility/AccessibilityObject.cpp
+++ a/Source/WebCore/accessibility/AccessibilityObject.cpp

+OptionSet&lt;AXAncestorFlag&gt; AccessibilityObject::computeAncestorFlagsWithTraversal() const
+{
+    OptionSet&lt;AXAncestorFlag&gt; computedFlags;
+    computedFlags.set(AXAncestorFlag::FlagsInitialized, true);

Shouldn&apos;t we check that it hasn&apos;t been initialized yet? At least an ASSERT to catch it on debug?

+    Accessibility::enumerateAncestors&lt;AXCoreObject&gt;(*this, false, [&amp;] (const AXCoreObject&amp; ancestor) {
+        if (is&lt;AccessibilityObject&gt;(ancestor))
+            computedFlags.add(downcast&lt;AccessibilityObject&gt;(ancestor).computeAncestorFlags());

Can&apos;t we use AccessibilityObject as template parameter? Or let the compiler infer the parameter? In either case, I don&apos;t think you would need is&lt;&gt; and the downcast.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830747</commentid>
    <comment_count>4</comment_count>
      <attachid>449120</attachid>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2022-01-13 15:25:18 -0800</bug_when>
    <thetext>Created attachment 449120
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830748</commentid>
    <comment_count>5</comment_count>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2022-01-13 15:25:45 -0800</bug_when>
    <thetext>Good points. Fixed both issues with the latest patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1831040</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-01-14 13:05:26 -0800</bug_when>
    <thetext>Committed r288027 (246053@main): &lt;https://commits.webkit.org/246053@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 449120.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>449077</attachid>
            <date>2022-01-13 10:11:46 -0800</date>
            <delta_ts>2022-01-13 15:25:16 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-235189-20220113121145.patch</filename>
            <type>text/plain</type>
            <size>6355</size>
            <attacher name="Tyler Wilcock">tyler_w</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg3OTMwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzM1Mzk0ZjJiMTZhYTg5
N2E4MzdkYmY2YzI0NzA0ZDgyYmM0Y2MwNS4uZTRhYjg1ODVlMzcwNWJiYzEyNjZmZWRiOTYwZGU4
NDJlODE0MWMwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIyLTAxLTEzICBUeWxl
ciBXaWxjb2NrICA8dHlsZXJfd0BhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IEFYSXNvbGF0ZWRP
YmplY3Q6OmluaXRpYWxpemVBdHRyaWJ1dGVEYXRhIHNob3VsZCBjb21wdXRlIEFYQW5jZXN0b3JG
bGFncyBpZiB0aGV5IGFyZSB1bmV4cGVjdGVkbHkgdW5pbml0aWFsaXplZAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM1MTg5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ3VycmVudGx5IGluIEFYSXNvbGF0
ZWRPYmplY3Q6OmluaXRpYWxpemVBdHRyaWJ1dGVEYXRhLCB3ZSBkb24ndCBzdG9yZQorICAgICAg
ICBhbnkgYW5jZXN0b3IgZmxhZ3MgaWYgdGhleSBhcmUgdW5leHBlY3RlZGx5IHVuaW5pdGlhbGl6
ZWQgKGkuZS4gd2UncmUKKyAgICAgICAgYXNrZWQgdG8gaW5pdGlhbGl6ZSBhbiBpc29sYXRlZCBv
YmplY3QgZm9yIGEgbGl2ZSBBWCBvYmplY3QgdGhhdCBoYXMKKyAgICAgICAgbm90IGJlZW4gYWRk
ZWQgdG8gdGhlIGxpdmUgQVggdHJlZSkuCisKKyAgICAgICAgUmF0aGVyIHRoYW4gbm90IHN0b3Jp
bmcgZmxhZ3MgYW5kIHRodXMgY3JlYXRpbmcgYW4gaXNvbGF0ZWQgb2JqZWN0CisgICAgICAgIHdp
dGggaW5jb3JyZWN0IHByb3BlcnRpZXMsIHdlIHNob3VsZCBkbyBhIHNpbmdsZSB0cmF2ZXJzYWwg
dG8gaW5pdGlhbGl6ZSB0aGVtLgorICAgICAgICBXZSBzaG91bGQgaGF2ZSB0byBkbyB0aGlzIHZl
cnkgcmFyZWx5IHNpbmNlIHdlIGdlbmVyYWxseSBleHBlY3QgdG8gYmUKKyAgICAgICAgZ2l2ZW4g
bGl2ZSBBWCBvYmplY3RzIHdpdGggaW5pdGlhbGl6ZWQgZmxhZ3MgaGVyZSAoYW5kIGRlYnVnIEFT
U0VSVCB0aGF0IHRoaXMgaXMgdGhlIGNhc2UpLgorCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9B
Y2Nlc3NpYmlsaXR5T2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlP
YmplY3Q6OmNvbXB1dGVBbmNlc3RvckZsYWdzV2l0aFRyYXZlcnNhbCBjb25zdCk6CisgICAgICAg
IEFkZGVkLgorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5oOgor
ICAgICAgICAqIGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdEludGVyZmFjZS5oOgor
ICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eTo6ZW51bWVyYXRlQW5jZXN0b3JzKToKKyAg
ICAgICAgQWRkZWQuCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29s
YXRlZE9iamVjdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBWElzb2xhdGVkT2JqZWN0Ojppbml0
aWFsaXplQXR0cmlidXRlRGF0YSk6CisgICAgICAgIENvbXB1dGUgYW5jZXN0b3IgZmxhZ3Mgd2l0
aCBhIHNpbmdsZSB0cmF2ZXJzYWwgaWYgdGhleSBhcmUgdW5leHBlY3RlZCB1bmluaXRpYWxpemVk
LgorCiAyMDIyLTAxLTEyICBBbnRvaW5lIFF1aW50ICA8Z3Jhb3V0c0B3ZWJraXQub3JnPgogCiAg
ICAgICAgIGNzcy9jc3MtdHJhbnNpdGlvbnMvcHNldWRvLWVsZW1lbnRzLTAwMi5odG1sIFdQVCBp
cyBhIGZhaWx1cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNj
ZXNzaWJpbGl0eU9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vz
c2liaWxpdHlPYmplY3QuY3BwCmluZGV4IDRlZjgxM2E1NTYyMWZmNjlmMjgyZTkxZDkzOTc3OTk5
YmNiZTkwZTcuLjYzNTQwZjg0MzdmMmFlYTllMmRiZTIxNjYxMjA4MDBlNGI4MTc3M2IgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0
LmNwcApAQCAtMTQ2LDYgKzE0NiwxNyBAQCBPcHRpb25TZXQ8QVhBbmNlc3RvckZsYWc+IEFjY2Vz
c2liaWxpdHlPYmplY3Q6OmNvbXB1dGVBbmNlc3RvckZsYWdzKCkgY29uc3QKICAgICByZXR1cm4g
Y29tcHV0ZWRGbGFnczsKIH0KIAorT3B0aW9uU2V0PEFYQW5jZXN0b3JGbGFnPiBBY2Nlc3NpYmls
aXR5T2JqZWN0Ojpjb21wdXRlQW5jZXN0b3JGbGFnc1dpdGhUcmF2ZXJzYWwoKSBjb25zdAorewor
ICAgIE9wdGlvblNldDxBWEFuY2VzdG9yRmxhZz4gY29tcHV0ZWRGbGFnczsKKyAgICBjb21wdXRl
ZEZsYWdzLnNldChBWEFuY2VzdG9yRmxhZzo6RmxhZ3NJbml0aWFsaXplZCwgdHJ1ZSk7CisgICAg
QWNjZXNzaWJpbGl0eTo6ZW51bWVyYXRlQW5jZXN0b3JzPEFYQ29yZU9iamVjdD4oKnRoaXMsIGZh
bHNlLCBbJl0gKGNvbnN0IEFYQ29yZU9iamVjdCYgYW5jZXN0b3IpIHsKKyAgICAgICAgaWYgKGlz
PEFjY2Vzc2liaWxpdHlPYmplY3Q+KGFuY2VzdG9yKSkKKyAgICAgICAgICAgIGNvbXB1dGVkRmxh
Z3MuYWRkKGRvd25jYXN0PEFjY2Vzc2liaWxpdHlPYmplY3Q+KGFuY2VzdG9yKS5jb21wdXRlQW5j
ZXN0b3JGbGFncygpKTsKKyAgICB9KTsKKyAgICByZXR1cm4gY29tcHV0ZWRGbGFnczsKK30KKwog
dm9pZCBBY2Nlc3NpYmlsaXR5T2JqZWN0Ojppbml0aWFsaXplQW5jZXN0b3JGbGFncyhjb25zdCBP
cHRpb25TZXQ8QVhBbmNlc3RvckZsYWc+JiBmbGFncykKIHsKICAgICBtX2FuY2VzdG9yRmxhZ3Mu
c2V0KEFYQW5jZXN0b3JGbGFnOjpGbGFnc0luaXRpYWxpemVkLCB0cnVlKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5oIGIvU291
cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmgKaW5kZXggNjlk
M2JjMzEzMDE1MjNjYmFiMTdlMWVkOWQ0ZjEzMGFhODIzZjg4YS4uMDA0ODFjODc2YjczYjVkNWMx
MmRjYWNhNDI0YzcxMWE2MGMwOTM2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmgKQEAgLTk0LDcgKzk0LDEwIEBAIHB1YmxpYzoK
IAogICAgIHZvaWQgYWRkQW5jZXN0b3JGbGFncyhjb25zdCBPcHRpb25TZXQ8QVhBbmNlc3RvckZs
YWc+JiBmbGFncykgeyBtX2FuY2VzdG9yRmxhZ3MuYWRkKGZsYWdzKTsgfQogICAgIGJvb2wgYW5j
ZXN0b3JGbGFnc0FyZUluaXRpYWxpemVkKCkgY29uc3QgeyByZXR1cm4gbV9hbmNlc3RvckZsYWdz
LmNvbnRhaW5zKEFYQW5jZXN0b3JGbGFnOjpGbGFnc0luaXRpYWxpemVkKTsgfQorICAgIC8vIENv
bXB1dGVzIHRoZSBmbGFncyB0aGF0IHRoaXMgb2JqZWN0IG1hdGNoZXMgKG5vIHRyYXZlcnNhbCBp
cyBkb25lKS4KICAgICBPcHRpb25TZXQ8QVhBbmNlc3RvckZsYWc+IGNvbXB1dGVBbmNlc3RvckZs
YWdzKCkgY29uc3Q7CisgICAgLy8gQ29tcHV0ZXMgdGhlIGZsYWdzIHRoYXQgdGhpcyBvYmplY3Qg
YW5kIGFsbCBhbmNlc3RvcnMgbWF0Y2gsIHRyYXZlcnNpbmcgYWxsIHRoZSB3YXkgdG8gdGhlIHJv
b3QuCisgICAgT3B0aW9uU2V0PEFYQW5jZXN0b3JGbGFnPiBjb21wdXRlQW5jZXN0b3JGbGFnc1dp
dGhUcmF2ZXJzYWwoKSBjb25zdDsKICAgICB2b2lkIGluaXRpYWxpemVBbmNlc3RvckZsYWdzKGNv
bnN0IE9wdGlvblNldDxBWEFuY2VzdG9yRmxhZz4mKTsKICAgICBib29sIGhhc0FuY2VzdG9yTWF0
Y2hpbmdGbGFnKEFYQW5jZXN0b3JGbGFnKSBjb25zdDsKICAgICBib29sIG1hdGNoZXNBbmNlc3Rv
ckZsYWcoQVhBbmNlc3RvckZsYWcpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0SW50ZXJmYWNlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3RJbnRlcmZhY2UuaAppbmRleCA5
OTMwZDVkYjQ4ZDA2YzExNGM0MDVmNDA2NzBjMzBhZTJmNGQ0MGIzLi5kNzA2MjQyNTU2N2JmMzVj
MDQyOGI3ZDQ3YWY0MmM4MmE5NDEwOWYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nl
c3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3RJbnRlcmZhY2UuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3RJbnRlcmZhY2UuaApAQCAtMTY0
MCw2ICsxNjQwLDE2IEBAIFQqIGZpbmRBbmNlc3Rvcihjb25zdCBUJiBvYmplY3QsIGJvb2wgaW5j
bHVkZVNlbGYsIGNvbnN0IEYmIG1hdGNoZXMpCiAKIHZvaWQgZmluZE1hdGNoaW5nT2JqZWN0cyhB
Y2Nlc3NpYmlsaXR5U2VhcmNoQ3JpdGVyaWEgY29uc3QmLCBBWENvcmVPYmplY3Q6OkFjY2Vzc2li
aWxpdHlDaGlsZHJlblZlY3RvciYpOwogCit0ZW1wbGF0ZTx0eXBlbmFtZSBULCB0eXBlbmFtZSBG
Pgordm9pZCBlbnVtZXJhdGVBbmNlc3RvcnMoY29uc3QgVCYgb2JqZWN0LCBib29sIGluY2x1ZGVT
ZWxmLCBjb25zdCBGJiBsYW1iZGEpCit7CisgICAgaWYgKGluY2x1ZGVTZWxmKQorICAgICAgICBs
YW1iZGEob2JqZWN0KTsKKworICAgIGlmIChhdXRvKiBwYXJlbnQgPSBvYmplY3QucGFyZW50T2Jq
ZWN0KCkpCisgICAgICAgIGVudW1lcmF0ZUFuY2VzdG9ycygqcGFyZW50LCB0cnVlLCBsYW1iZGEp
OworfQorCiB0ZW1wbGF0ZTx0eXBlbmFtZSBULCB0eXBlbmFtZSBGPgogdm9pZCBlbnVtZXJhdGVE
ZXNjZW5kYW50cyhUJiBvYmplY3QsIGJvb2wgaW5jbHVkZVNlbGYsIGNvbnN0IEYmIGxhbWJkYSkK
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVl
L0FYSXNvbGF0ZWRPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29s
YXRlZHRyZWUvQVhJc29sYXRlZE9iamVjdC5jcHAKaW5kZXggMzg3ZTFiY2I4YjE1NGQ2NTBiMDUw
ODE5YjM3ZTIwNjgzNjEzYzZjOS4uYTVlYzgzYTZjNDk2MWFlZGYzZmZiYjNiYzYwNDJkNWFiNDFl
NGRhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRy
ZWUvQVhJc29sYXRlZE9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZE9iamVjdC5jcHAKQEAgLTc2LDExICs3NiwxMSBAQCB2
b2lkIEFYSXNvbGF0ZWRPYmplY3Q6OmluaXRpYWxpemVBdHRyaWJ1dGVEYXRhKEFYQ29yZU9iamVj
dCYgY29yZU9iamVjdCwgYm9vbCBpcwogICAgIHNldFByb3BlcnR5KEFYUHJvcGVydHlOYW1lOjpB
Y2Nlc3NpYmlsaXR5RGVzY3JpcHRpb24sIG9iamVjdC5hY2Nlc3NpYmlsaXR5RGVzY3JpcHRpb24o
KS5pc29sYXRlZENvcHkoKSk7CiAKICAgICAvLyBGb3IgYWxsIG9iamVjdHMgYmVzaWRlcyB0aGUg
cm9vdCwgdGhlIGFuY2VzdHJ5IGZsYWdzIHNob3VsZCd2ZSBiZWVuIHNldCBieSBub3cuCi0gICAg
QVNTRVJUKGlzUm9vdCA/IHRydWUgOiBvYmplY3QuYW5jZXN0b3JGbGFnc0FyZUluaXRpYWxpemVk
KCkpOwotICAgIGF1dG8gYW5jZXN0b3JGbGFncyA9IG9iamVjdC5hbmNlc3RvckZsYWdzKCk7Ci0g
ICAgLy8gT25seSBzdG9yZSB0aGUgb2JqZWN0J3MgYW5jZXN0b3IgZmxhZ3MgaWYgYW55IGFyZSBz
ZXQgKGV4Y2x1ZGluZyB0aGUgImlzIGluaXRpYWxpemVkIiBmbGFnKS4KLSAgICBpZiAoYW5jZXN0
b3JGbGFncyBeIEFYQW5jZXN0b3JGbGFnOjpGbGFnc0luaXRpYWxpemVkKQorICAgIEFTU0VSVChp
c1Jvb3QgfHwgb2JqZWN0LmFuY2VzdG9yRmxhZ3NBcmVJbml0aWFsaXplZCgpKTsKKyAgICBpZiAo
b2JqZWN0LmFuY2VzdG9yRmxhZ3NBcmVJbml0aWFsaXplZCgpKQogICAgICAgICBzZXRQcm9wZXJ0
eShBWFByb3BlcnR5TmFtZTo6QW5jZXN0b3JGbGFncywgb2JqZWN0LmFuY2VzdG9yRmxhZ3MoKSk7
CisgICAgZWxzZQorICAgICAgICBzZXRQcm9wZXJ0eShBWFByb3BlcnR5TmFtZTo6QW5jZXN0b3JG
bGFncywgb2JqZWN0LmNvbXB1dGVBbmNlc3RvckZsYWdzV2l0aFRyYXZlcnNhbCgpKTsKIAogICAg
IHNldFByb3BlcnR5KEFYUHJvcGVydHlOYW1lOjpCb3VuZGluZ0JveFJlY3QsIG9iamVjdC5ib3Vu
ZGluZ0JveFJlY3QoKSk7CiAgICAgc2V0UHJvcGVydHkoQVhQcm9wZXJ0eU5hbWU6OkVsZW1lbnRS
ZWN0LCBvYmplY3QuZWxlbWVudFJlY3QoKSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>449120</attachid>
            <date>2022-01-13 15:25:18 -0800</date>
            <delta_ts>2022-01-14 13:05:29 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-235189-20220113172517.patch</filename>
            <type>text/plain</type>
            <size>6439</size>
            <attacher name="Tyler Wilcock">tyler_w</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg3OTgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjVjMmNiODY5ZWY4MTU2
OTg4NjZkZmJmMjZlZTRhYTljODQ0MTlhOS4uMzYxMDA5NTllNWMxNDJmNWI1OTc4NjE1MWUyNjA3
NDNkMGI5NDU3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIyLTAxLTEzICBUeWxl
ciBXaWxjb2NrICA8dHlsZXJfd0BhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IEFYSXNvbGF0ZWRP
YmplY3Q6OmluaXRpYWxpemVBdHRyaWJ1dGVEYXRhIHNob3VsZCBjb21wdXRlIEFYQW5jZXN0b3JG
bGFncyBpZiB0aGV5IGFyZSB1bmV4cGVjdGVkbHkgdW5pbml0aWFsaXplZAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM1MTg5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ3VycmVudGx5IGluIEFYSXNvbGF0
ZWRPYmplY3Q6OmluaXRpYWxpemVBdHRyaWJ1dGVEYXRhLCB3ZSBkb24ndCBzdG9yZQorICAgICAg
ICBhbnkgYW5jZXN0b3IgZmxhZ3MgaWYgdGhleSBhcmUgdW5leHBlY3RlZGx5IHVuaW5pdGlhbGl6
ZWQgKGkuZS4gd2UncmUKKyAgICAgICAgYXNrZWQgdG8gaW5pdGlhbGl6ZSBhbiBpc29sYXRlZCBv
YmplY3QgZm9yIGEgbGl2ZSBBWCBvYmplY3QgdGhhdCBoYXMKKyAgICAgICAgbm90IGJlZW4gYWRk
ZWQgdG8gdGhlIGxpdmUgQVggdHJlZSkuCisKKyAgICAgICAgUmF0aGVyIHRoYW4gbm90IHN0b3Jp
bmcgZmxhZ3MgYW5kIHRodXMgY3JlYXRpbmcgYW4gaXNvbGF0ZWQgb2JqZWN0CisgICAgICAgIHdp
dGggaW5jb3JyZWN0IHByb3BlcnRpZXMsIHdlIHNob3VsZCBkbyBhIHNpbmdsZSB0cmF2ZXJzYWwg
dG8gaW5pdGlhbGl6ZSB0aGVtLgorICAgICAgICBXZSBzaG91bGQgaGF2ZSB0byBkbyB0aGlzIHZl
cnkgcmFyZWx5IHNpbmNlIHdlIGdlbmVyYWxseSBleHBlY3QgdG8gYmUKKyAgICAgICAgZ2l2ZW4g
bGl2ZSBBWCBvYmplY3RzIHdpdGggaW5pdGlhbGl6ZWQgZmxhZ3MgaGVyZSAoYW5kIGRlYnVnIEFT
U0VSVCB0aGF0IHRoaXMgaXMgdGhlIGNhc2UpLgorCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9B
Y2Nlc3NpYmlsaXR5T2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlP
YmplY3Q6OmNvbXB1dGVBbmNlc3RvckZsYWdzV2l0aFRyYXZlcnNhbCBjb25zdCk6CisgICAgICAg
IEFkZGVkLgorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5oOgor
ICAgICAgICAqIGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdEludGVyZmFjZS5oOgor
ICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eTo6ZW51bWVyYXRlQW5jZXN0b3JzKToKKyAg
ICAgICAgQWRkZWQuCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29s
YXRlZE9iamVjdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBWElzb2xhdGVkT2JqZWN0Ojppbml0
aWFsaXplQXR0cmlidXRlRGF0YSk6CisgICAgICAgIENvbXB1dGUgYW5jZXN0b3IgZmxhZ3Mgd2l0
aCBhIHNpbmdsZSB0cmF2ZXJzYWwgaWYgdGhleSBhcmUgdW5leHBlY3RlZCB1bmluaXRpYWxpemVk
LgorCiAyMDIyLTAxLTEzICBQZW5nIExpdSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CiAKICAgICAg
ICAgQ2xlYW4gdXAgTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlcjo6Q2xpZW50CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuY3BwIGIv
U291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmNwcAppbmRl
eCA0ZWY4MTNhNTU2MjFmZjY5ZjI4MmU5MWQ5Mzk3Nzk5OWJjYmU5MGU3Li45OWNmZTBjYjk3NmFm
MGU1NjBmNTk2MzBjMGExYmJlM2JkMjhhNzQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5jcHAKQEAgLTE0Niw2ICsxNDYsMTkg
QEAgT3B0aW9uU2V0PEFYQW5jZXN0b3JGbGFnPiBBY2Nlc3NpYmlsaXR5T2JqZWN0Ojpjb21wdXRl
QW5jZXN0b3JGbGFncygpIGNvbnN0CiAgICAgcmV0dXJuIGNvbXB1dGVkRmxhZ3M7CiB9CiAKK09w
dGlvblNldDxBWEFuY2VzdG9yRmxhZz4gQWNjZXNzaWJpbGl0eU9iamVjdDo6Y29tcHV0ZUFuY2Vz
dG9yRmxhZ3NXaXRoVHJhdmVyc2FsKCkgY29uc3QKK3sKKyAgICAvLyBJZiB0aGlzIG9iamVjdCdz
IGZsYWdzIGFyZSBpbml0aWFsaXplZCwgdGhpcyB0cmF2ZXJzYWwgaXMgdW5uZWNlc3NhcnkuIFVz
ZSBBY2Nlc3NpYmlsaXR5T2JqZWN0OjphbmNlc3RvckZsYWdzKCkgaW5zdGVhZC4KKyAgICBBU1NF
UlQoIWFuY2VzdG9yRmxhZ3NBcmVJbml0aWFsaXplZCgpKTsKKworICAgIE9wdGlvblNldDxBWEFu
Y2VzdG9yRmxhZz4gY29tcHV0ZWRGbGFnczsKKyAgICBjb21wdXRlZEZsYWdzLnNldChBWEFuY2Vz
dG9yRmxhZzo6RmxhZ3NJbml0aWFsaXplZCwgdHJ1ZSk7CisgICAgQWNjZXNzaWJpbGl0eTo6ZW51
bWVyYXRlQW5jZXN0b3JzPEFjY2Vzc2liaWxpdHlPYmplY3Q+KCp0aGlzLCBmYWxzZSwgWyZdIChj
b25zdCBBY2Nlc3NpYmlsaXR5T2JqZWN0JiBhbmNlc3RvcikgeworICAgICAgICBjb21wdXRlZEZs
YWdzLmFkZChhbmNlc3Rvci5jb21wdXRlQW5jZXN0b3JGbGFncygpKTsKKyAgICB9KTsKKyAgICBy
ZXR1cm4gY29tcHV0ZWRGbGFnczsKK30KKwogdm9pZCBBY2Nlc3NpYmlsaXR5T2JqZWN0Ojppbml0
aWFsaXplQW5jZXN0b3JGbGFncyhjb25zdCBPcHRpb25TZXQ8QVhBbmNlc3RvckZsYWc+JiBmbGFn
cykKIHsKICAgICBtX2FuY2VzdG9yRmxhZ3Muc2V0KEFYQW5jZXN0b3JGbGFnOjpGbGFnc0luaXRp
YWxpemVkLCB0cnVlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkv
QWNjZXNzaWJpbGl0eU9iamVjdC5oIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nl
c3NpYmlsaXR5T2JqZWN0LmgKaW5kZXggNjlkM2JjMzEzMDE1MjNjYmFiMTdlMWVkOWQ0ZjEzMGFh
ODIzZjg4YS4uMDA0ODFjODc2YjczYjVkNWMxMmRjYWNhNDI0YzcxMWE2MGMwOTM2NyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmgK
QEAgLTk0LDcgKzk0LDEwIEBAIHB1YmxpYzoKIAogICAgIHZvaWQgYWRkQW5jZXN0b3JGbGFncyhj
b25zdCBPcHRpb25TZXQ8QVhBbmNlc3RvckZsYWc+JiBmbGFncykgeyBtX2FuY2VzdG9yRmxhZ3Mu
YWRkKGZsYWdzKTsgfQogICAgIGJvb2wgYW5jZXN0b3JGbGFnc0FyZUluaXRpYWxpemVkKCkgY29u
c3QgeyByZXR1cm4gbV9hbmNlc3RvckZsYWdzLmNvbnRhaW5zKEFYQW5jZXN0b3JGbGFnOjpGbGFn
c0luaXRpYWxpemVkKTsgfQorICAgIC8vIENvbXB1dGVzIHRoZSBmbGFncyB0aGF0IHRoaXMgb2Jq
ZWN0IG1hdGNoZXMgKG5vIHRyYXZlcnNhbCBpcyBkb25lKS4KICAgICBPcHRpb25TZXQ8QVhBbmNl
c3RvckZsYWc+IGNvbXB1dGVBbmNlc3RvckZsYWdzKCkgY29uc3Q7CisgICAgLy8gQ29tcHV0ZXMg
dGhlIGZsYWdzIHRoYXQgdGhpcyBvYmplY3QgYW5kIGFsbCBhbmNlc3RvcnMgbWF0Y2gsIHRyYXZl
cnNpbmcgYWxsIHRoZSB3YXkgdG8gdGhlIHJvb3QuCisgICAgT3B0aW9uU2V0PEFYQW5jZXN0b3JG
bGFnPiBjb21wdXRlQW5jZXN0b3JGbGFnc1dpdGhUcmF2ZXJzYWwoKSBjb25zdDsKICAgICB2b2lk
IGluaXRpYWxpemVBbmNlc3RvckZsYWdzKGNvbnN0IE9wdGlvblNldDxBWEFuY2VzdG9yRmxhZz4m
KTsKICAgICBib29sIGhhc0FuY2VzdG9yTWF0Y2hpbmdGbGFnKEFYQW5jZXN0b3JGbGFnKSBjb25z
dDsKICAgICBib29sIG1hdGNoZXNBbmNlc3RvckZsYWcoQVhBbmNlc3RvckZsYWcpIGNvbnN0Owpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2Jq
ZWN0SW50ZXJmYWNlLmggYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxp
dHlPYmplY3RJbnRlcmZhY2UuaAppbmRleCA5OTMwZDVkYjQ4ZDA2YzExNGM0MDVmNDA2NzBjMzBh
ZTJmNGQ0MGIzLi5kNzA2MjQyNTU2N2JmMzVjMDQyOGI3ZDQ3YWY0MmM4MmE5NDEwOWYzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3RJ
bnRlcmZhY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxp
dHlPYmplY3RJbnRlcmZhY2UuaApAQCAtMTY0MCw2ICsxNjQwLDE2IEBAIFQqIGZpbmRBbmNlc3Rv
cihjb25zdCBUJiBvYmplY3QsIGJvb2wgaW5jbHVkZVNlbGYsIGNvbnN0IEYmIG1hdGNoZXMpCiAK
IHZvaWQgZmluZE1hdGNoaW5nT2JqZWN0cyhBY2Nlc3NpYmlsaXR5U2VhcmNoQ3JpdGVyaWEgY29u
c3QmLCBBWENvcmVPYmplY3Q6OkFjY2Vzc2liaWxpdHlDaGlsZHJlblZlY3RvciYpOwogCit0ZW1w
bGF0ZTx0eXBlbmFtZSBULCB0eXBlbmFtZSBGPgordm9pZCBlbnVtZXJhdGVBbmNlc3RvcnMoY29u
c3QgVCYgb2JqZWN0LCBib29sIGluY2x1ZGVTZWxmLCBjb25zdCBGJiBsYW1iZGEpCit7CisgICAg
aWYgKGluY2x1ZGVTZWxmKQorICAgICAgICBsYW1iZGEob2JqZWN0KTsKKworICAgIGlmIChhdXRv
KiBwYXJlbnQgPSBvYmplY3QucGFyZW50T2JqZWN0KCkpCisgICAgICAgIGVudW1lcmF0ZUFuY2Vz
dG9ycygqcGFyZW50LCB0cnVlLCBsYW1iZGEpOworfQorCiB0ZW1wbGF0ZTx0eXBlbmFtZSBULCB0
eXBlbmFtZSBGPgogdm9pZCBlbnVtZXJhdGVEZXNjZW5kYW50cyhUJiBvYmplY3QsIGJvb2wgaW5j
bHVkZVNlbGYsIGNvbnN0IEYmIGxhbWJkYSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRPYmplY3QuY3BwIGIvU291cmNl
L1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZE9iamVjdC5jcHAK
aW5kZXggMzg3ZTFiY2I4YjE1NGQ2NTBiMDUwODE5YjM3ZTIwNjgzNjEzYzZjOS4uYTVlYzgzYTZj
NDk2MWFlZGYzZmZiYjNiYzYwNDJkNWFiNDFlNGRhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZE9iamVjdC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZE9iamVj
dC5jcHAKQEAgLTc2LDExICs3NiwxMSBAQCB2b2lkIEFYSXNvbGF0ZWRPYmplY3Q6OmluaXRpYWxp
emVBdHRyaWJ1dGVEYXRhKEFYQ29yZU9iamVjdCYgY29yZU9iamVjdCwgYm9vbCBpcwogICAgIHNl
dFByb3BlcnR5KEFYUHJvcGVydHlOYW1lOjpBY2Nlc3NpYmlsaXR5RGVzY3JpcHRpb24sIG9iamVj
dC5hY2Nlc3NpYmlsaXR5RGVzY3JpcHRpb24oKS5pc29sYXRlZENvcHkoKSk7CiAKICAgICAvLyBG
b3IgYWxsIG9iamVjdHMgYmVzaWRlcyB0aGUgcm9vdCwgdGhlIGFuY2VzdHJ5IGZsYWdzIHNob3Vs
ZCd2ZSBiZWVuIHNldCBieSBub3cuCi0gICAgQVNTRVJUKGlzUm9vdCA/IHRydWUgOiBvYmplY3Qu
YW5jZXN0b3JGbGFnc0FyZUluaXRpYWxpemVkKCkpOwotICAgIGF1dG8gYW5jZXN0b3JGbGFncyA9
IG9iamVjdC5hbmNlc3RvckZsYWdzKCk7Ci0gICAgLy8gT25seSBzdG9yZSB0aGUgb2JqZWN0J3Mg
YW5jZXN0b3IgZmxhZ3MgaWYgYW55IGFyZSBzZXQgKGV4Y2x1ZGluZyB0aGUgImlzIGluaXRpYWxp
emVkIiBmbGFnKS4KLSAgICBpZiAoYW5jZXN0b3JGbGFncyBeIEFYQW5jZXN0b3JGbGFnOjpGbGFn
c0luaXRpYWxpemVkKQorICAgIEFTU0VSVChpc1Jvb3QgfHwgb2JqZWN0LmFuY2VzdG9yRmxhZ3NB
cmVJbml0aWFsaXplZCgpKTsKKyAgICBpZiAob2JqZWN0LmFuY2VzdG9yRmxhZ3NBcmVJbml0aWFs
aXplZCgpKQogICAgICAgICBzZXRQcm9wZXJ0eShBWFByb3BlcnR5TmFtZTo6QW5jZXN0b3JGbGFn
cywgb2JqZWN0LmFuY2VzdG9yRmxhZ3MoKSk7CisgICAgZWxzZQorICAgICAgICBzZXRQcm9wZXJ0
eShBWFByb3BlcnR5TmFtZTo6QW5jZXN0b3JGbGFncywgb2JqZWN0LmNvbXB1dGVBbmNlc3RvckZs
YWdzV2l0aFRyYXZlcnNhbCgpKTsKIAogICAgIHNldFByb3BlcnR5KEFYUHJvcGVydHlOYW1lOjpC
b3VuZGluZ0JveFJlY3QsIG9iamVjdC5ib3VuZGluZ0JveFJlY3QoKSk7CiAgICAgc2V0UHJvcGVy
dHkoQVhQcm9wZXJ0eU5hbWU6OkVsZW1lbnRSZWN0LCBvYmplY3QuZWxlbWVudFJlY3QoKSk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>