<?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>234052</bug_id>
          
          <creation_ts>2021-12-08 18:22:49 -0800</creation_ts>
          <short_desc>Use thread safe initialization in rotateLeftTransform</short_desc>
          <delta_ts>2021-12-15 18:23:16 -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>Layout and Rendering</component>
          <version>WebKit Local Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></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>
          
          <blocked>233488</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Cameron McCormack (:heycam)">heycam</reporter>
          <assigned_to name="Cameron McCormack (:heycam)">heycam</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>darin</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1821909</commentid>
    <comment_count>0</comment_count>
    <who name="Cameron McCormack (:heycam)">heycam</who>
    <bug_when>2021-12-08 18:22:49 -0800</bug_when>
    <thetext>Use thread safe initialization in rotateLeftTransform</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821910</commentid>
    <comment_count>1</comment_count>
      <attachid>446471</attachid>
    <who name="Cameron McCormack (:heycam)">heycam</who>
    <bug_when>2021-12-08 18:24:00 -0800</bug_when>
    <thetext>Created attachment 446471
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821911</commentid>
    <comment_count>2</comment_count>
    <who name="Cameron McCormack (:heycam)">heycam</who>
    <bug_when>2021-12-08 18:24:11 -0800</bug_when>
    <thetext>I&apos;d be open to the argument we shouldn&apos;t bother caching this object at all.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821946</commentid>
    <comment_count>3</comment_count>
      <attachid>446471</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-12-08 19:05:16 -0800</bug_when>
    <thetext>Comment on attachment 446471
Patch

Another solution here would be to make the constructor for AffineTransform constexpr, then we could use a constexpr static and there is no thread issue there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821948</commentid>
    <comment_count>4</comment_count>
    <who name="Cameron McCormack (:heycam)">heycam</who>
    <bug_when>2021-12-08 19:12:29 -0800</bug_when>
    <thetext>(In reply to Darin Adler from comment #3)
&gt; Another solution here would be to make the constructor for AffineTransform
&gt; constexpr, then we could use a constexpr static and there is no thread issue
&gt; there.

Good idea!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821967</commentid>
    <comment_count>5</comment_count>
      <attachid>446493</attachid>
    <who name="Cameron McCormack (:heycam)">heycam</who>
    <bug_when>2021-12-08 20:11:29 -0800</bug_when>
    <thetext>Created attachment 446493
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821970</commentid>
    <comment_count>6</comment_count>
      <attachid>446494</attachid>
    <who name="Cameron McCormack (:heycam)">heycam</who>
    <bug_when>2021-12-08 20:18:35 -0800</bug_when>
    <thetext>Created attachment 446494
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1822260</commentid>
    <comment_count>7</comment_count>
      <attachid>446494</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-12-09 12:33:55 -0800</bug_when>
    <thetext>Comment on attachment 446494
Patch

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

&gt; Source/WebCore/platform/graphics/transforms/AffineTransform.h:64
&gt; +    WEBCORE_EXPORT constexpr AffineTransform();
&gt; +    WEBCORE_EXPORT constexpr AffineTransform(double a, double b, double c, double d, double e, double f);

Should not need WEBCORE_EXPORT on constexpr functions, but if it builds, then I guess that proves me wrong.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1823026</commentid>
    <comment_count>8</comment_count>
      <attachid>446494</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-12-10 15:16:49 -0800</bug_when>
    <thetext>Comment on attachment 446494
Patch

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

Feels a bit weird that the patch title only is relevant to like 1/2 of this patch.

&gt; Source/WebCore/platform/graphics/coretext/FontCascadeCoreText.cpp:57
&gt; +static constexpr AffineTransform rotateLeftTransform { 0, -1, 1, 0, 0, 0 };

🆒

&gt; Tools/ChangeLog:3
&gt; +        Remove unused AffineTransform variable from a test

Are you sure you meant to include this in this patch?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1823036</commentid>
    <comment_count>9</comment_count>
    <who name="Cameron McCormack (:heycam)">heycam</who>
    <bug_when>2021-12-10 15:29:23 -0800</bug_when>
    <thetext>(In reply to Myles C. Maxfield from comment #8)
&gt; Feels a bit weird that the patch title only is relevant to like 1/2 of this
&gt; patch.

I&apos;ll reword.

&gt; &gt; Tools/ChangeLog:3
&gt; &gt; +        Remove unused AffineTransform variable from a test
&gt; 
&gt; Are you sure you meant to include this in this patch?

Yes.  After changing the constructor to be constexpr, the compiler complains that the variable is unused.  (Before it didn&apos;t because I guess the constructor could be doing some useful work.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1824628</commentid>
    <comment_count>10</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-12-15 18:23:16 -0800</bug_when>
    <thetext>&lt;rdar://problem/86553047&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>446471</attachid>
            <date>2021-12-08 18:24:00 -0800</date>
            <delta_ts>2021-12-08 20:11:25 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-234052-20211209132359.patch</filename>
            <type>text/plain</type>
            <size>2050</size>
            <attacher name="Cameron McCormack (:heycam)">heycam</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg2NjM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDdkNjI1NGIzZjA2NzNl
YzNiNWZhZWVmMDgzNjY5MzAwMGI2ZTIzZi4uNThmNDg3NDYzMzlkZTg5ZDI3NmU2OWY5NTMxNDNl
MWY3MDM1NWIwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIxLTEyLTAyICBDYW1l
cm9uIE1jQ29ybWFjayAgPGhleWNhbUBhcHBsZS5jb20+CisKKyAgICAgICAgVXNlIHRocmVhZCBz
YWZlIGluaXRpYWxpemF0aW9uIGluIHJvdGF0ZUxlZnRUcmFuc2Zvcm0KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNDA1MgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIHJvdGF0ZUxlZnRUcmFuc2Zvcm0gY2Fu
IGJlIGNhbGxlZCBmcm9tIHdvcmtlciB0aHJlYWRzIHVzaW5nCisgICAgICAgIE9mZnNjcmVlbkNh
bnZhcywgYnV0IGRvZXNuJ3QgaW5pdGlhbGl6ZSBpdHMgc3RhdGljIHZhcmlhYmxlCisgICAgICAg
IGluIGEgdGhyZWFkIHNhZmUgbWFubmVyIChnaXZlbiB0aGUgLWZuby10aHJlYWRzYWZlLXN0YXRp
Y3MKKyAgICAgICAgY29uZmlndXJhdGlvbiBBcHBsZSBwb3J0cyB1c2UpLiBVc2Ugc3RkOjpjYWxs
X29uY2UgdG8gZW5zdXJlCisgICAgICAgIG9ubHkgb25lIHRocmVhZCB3aWxsIGluaXRpYWxpemUg
dGhlIHZhcmlhYmxlLiBUaGUgQWZmaW5lVHJhbnNmb3JtCisgICAgICAgIG9iamVjdCBpdHNlbGYg
aXMgbm90IG1vZGlmaWVkIGFuZCBzbyBpcyBzYWZlIGZvciBhbnkgdGhyZWFkIHRvIHJlYWQKKyAg
ICAgICAgYWZ0ZXIgaW5pdGlhbGl6YXRpb24uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9jb3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnJv
dGF0ZUxlZnRUcmFuc2Zvcm0pOgorCiAyMDIxLTEyLTAyICBDYW1lcm9uIE1jQ29ybWFjayAgPGhl
eWNhbUBhcHBsZS5jb20+CiAKICAgICAgICAgTW92ZSBTeXN0ZW1Gb250RGF0YWJhc2VDb3JlVGV4
dCB0byBGb250Q2FjaGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHAKaW5kZXggNTEx
ZTA5Yjk2Y2VmMDMyNTA5MGUyM2FmOTE0YWUzNWYyYWI4ZWQyZS4uMWVkYTJlZDdmNmY2NWU2MWM4
NTRkZGFkMDRjMWUwN2E0MDBiMjRhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3JlVGV4dC5j
cHAKQEAgLTU2LDggKzU2LDEyIEBAIEZvbnRDYXNjYWRlOjpGb250Q2FzY2FkZShjb25zdCBGb250
UGxhdGZvcm1EYXRhJiBmb250RGF0YSwgRm9udFNtb290aGluZ01vZGUgZm9uCiAKIHN0YXRpYyBj
b25zdCBBZmZpbmVUcmFuc2Zvcm0mIHJvdGF0ZUxlZnRUcmFuc2Zvcm0oKQogewotICAgIHN0YXRp
YyBBZmZpbmVUcmFuc2Zvcm0gcmVzdWx0KDAsIC0xLCAxLCAwLCAwLCAwKTsKLSAgICByZXR1cm4g
cmVzdWx0OworICAgIHN0YXRpYyBMYXp5TmV2ZXJEZXN0cm95ZWQ8QWZmaW5lVHJhbnNmb3JtPiBy
ZXN1bHQ7CisgICAgc3RhdGljIHN0ZDo6b25jZV9mbGFnIG9uY2VGbGFnOworICAgIHN0ZDo6Y2Fs
bF9vbmNlKG9uY2VGbGFnLCBbJl0geworICAgICAgICByZXN1bHQuY29uc3RydWN0KDAsIC0xLCAx
LCAwLCAwLCAwKTsKKyAgICB9KTsKKyAgICByZXR1cm4gcmVzdWx0LmdldCgpOwogfQogCiBBZmZp
bmVUcmFuc2Zvcm0gY29tcHV0ZU92ZXJhbGxUZXh0TWF0cml4KGNvbnN0IEZvbnQmIGZvbnQpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>446493</attachid>
            <date>2021-12-08 20:11:29 -0800</date>
            <delta_ts>2021-12-08 20:18:31 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-234052-20211209151128.patch</filename>
            <type>text/plain</type>
            <size>6072</size>
            <attacher name="Cameron McCormack (:heycam)">heycam</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg2NjM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDdkNjI1NGIzZjA2NzNl
YzNiNWZhZWVmMDgzNjY5MzAwMGI2ZTIzZi4uNmM3MGI1OGYxOWMyY2RkMDRhNmVkNGVhOTAyODhk
MmQ5N2FmZjEzZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIxLTEyLTAyICBDYW1l
cm9uIE1jQ29ybWFjayAgPGhleWNhbUBhcHBsZS5jb20+CisKKyAgICAgICAgQ29udmVydCByb3Rh
dGVMZWZ0VHJhbnNmb3JtKCkgaW50byBhIHN0YXRpYyBjb25zdGV4cHIgdmFyaWFibGUKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNDA1MgorCisgICAg
ICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgIHJvdGF0ZUxlZnRUcmFuc2Zv
cm0gY2FuIGJlIGNhbGxlZCBmcm9tIHdvcmtlciB0aHJlYWRzIHVzaW5nCisgICAgICAgIE9mZnNj
cmVlbkNhbnZhcywgYnV0IGRvZXNuJ3QgaW5pdGlhbGl6ZSBpdHMgc3RhdGljIHZhcmlhYmxlCisg
ICAgICAgIGluIGEgdGhyZWFkIHNhZmUgbWFubmVyIChnaXZlbiB0aGUgLWZuby10aHJlYWRzYWZl
LXN0YXRpY3MKKyAgICAgICAgY29uZmlndXJhdGlvbiBBcHBsZSBwb3J0cyB1c2UpLgorCisgICAg
ICAgIFRoaXMgcGF0Y2ggbWFrZXMgdGhlIEFmZmluZVRyYW5zZm9ybSBjb25zdHJ1Y3RvciB1c2Vk
IGhlcmUgKGFuZCB0aGUKKyAgICAgICAgZGVmYXVsdCBjb25zdHJ1Y3RvcikgY29uc3RleHByLCBh
bGxvd2luZyB1cyB0byByZXBsYWNlIHRoZQorICAgICAgICByb3RhdGVMZWZ0VHJhbnNmb3JtIGZ1
bmN0aW9uIHdpdGggYSBzdGF0aWMgY29uc3RleHByIHZhcmlhYmxlLgorCisgICAgICAgIFRoZSBN
U1ZDLXNwZWNpZmljIGRlZmluaXRpb25zIG9mIHRoZSBBZmZpbmVUcmFuc2Zvcm0gY29uc3RydWN0
b3JzIGFyZQorICAgICAgICByZW1vdmVkIHNpbmNlIHRoZSBjb21waWxlciBidWcgd2FzIGZpeGVk
IHNpbmNlIHRoZXkgd2VyZSBuZWVkZWQuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9j
b3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNvbXB1
dGVWZXJ0aWNhbFRleHRNYXRyaXgpOgorICAgICAgICAoV2ViQ29yZTo6ZmlsbFZlY3RvcldpdGhW
ZXJ0aWNhbEdseXBoUG9zaXRpb25zKToKKyAgICAgICAgKFdlYkNvcmU6OnJvdGF0ZUxlZnRUcmFu
c2Zvcm0pOiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMv
QWZmaW5lVHJhbnNmb3JtLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFmZmluZVRyYW5zZm9ybTo6
QWZmaW5lVHJhbnNmb3JtKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy90
cmFuc2Zvcm1zL0FmZmluZVRyYW5zZm9ybS5oOgorICAgICAgICAoV2ViQ29yZTo6QWZmaW5lVHJh
bnNmb3JtOjpBZmZpbmVUcmFuc2Zvcm0pOgorCiAyMDIxLTEyLTAyICBDYW1lcm9uIE1jQ29ybWFj
ayAgPGhleWNhbUBhcHBsZS5jb20+CiAKICAgICAgICAgTW92ZSBTeXN0ZW1Gb250RGF0YWJhc2VD
b3JlVGV4dCB0byBGb250Q2FjaGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHAKaW5k
ZXggNTExZTA5Yjk2Y2VmMDMyNTA5MGUyM2FmOTE0YWUzNWYyYWI4ZWQyZS4uNjUxYWZhNGNmMTFm
OTExMzdhMDVhZWI2OGY4OGQwZmZkNDM1ZDM1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3Jl
VGV4dC5jcHAKQEAgLTU0LDExICs1NCw3IEBAIEZvbnRDYXNjYWRlOjpGb250Q2FzY2FkZShjb25z
dCBGb250UGxhdGZvcm1EYXRhJiBmb250RGF0YSwgRm9udFNtb290aGluZ01vZGUgZm9uCiAgICAg
bV9mb250RGVzY3JpcHRpb24uc2V0V2VpZ2h0KChDVEZvbnRHZXRTeW1ib2xpY1RyYWl0cyhmb250
RGF0YS5jdEZvbnQoKSkgJiBrQ1RGb250VHJhaXRCb2xkKSA/IGJvbGRXZWlnaHRWYWx1ZSgpIDog
bm9ybWFsV2VpZ2h0VmFsdWUoKSk7CiB9CiAKLXN0YXRpYyBjb25zdCBBZmZpbmVUcmFuc2Zvcm0m
IHJvdGF0ZUxlZnRUcmFuc2Zvcm0oKQotewotICAgIHN0YXRpYyBBZmZpbmVUcmFuc2Zvcm0gcmVz
dWx0KDAsIC0xLCAxLCAwLCAwLCAwKTsKLSAgICByZXR1cm4gcmVzdWx0OwotfQorc3RhdGljIGNv
bnN0ZXhwciBBZmZpbmVUcmFuc2Zvcm0gcm90YXRlTGVmdFRyYW5zZm9ybSB7IDAsIC0xLCAxLCAw
LCAwLCAwIH07CiAKIEFmZmluZVRyYW5zZm9ybSBjb21wdXRlT3ZlcmFsbFRleHRNYXRyaXgoY29u
c3QgRm9udCYgZm9udCkKIHsKQEAgLTk1LDcgKzkxLDcgQEAgQWZmaW5lVHJhbnNmb3JtIGNvbXB1
dGVWZXJ0aWNhbFRleHRNYXRyaXgoY29uc3QgRm9udCYgZm9udCwgY29uc3QgQWZmaW5lVHJhbnNm
b3IKICAgICAvLyB0aGlzIG1hdHJpeCBpcyBpbnZlcnRlZCBpbiBmaWxsVmVjdG9yV2l0aFZlcnRp
Y2FsR2x5cGhQb3NpdGlvbnMgdG8gcGxhY2UgdGhlIGdseXBocyBpbiB0aGUgQ1RNJ3MgY29vcmRp
bmF0ZSBzeXN0ZW0uCiAgICAgLy8gQWxsIHdlJ3JlIHRyeWluZyB0byBkbyBoZXJlIGlzIHJvdGF0
ZSB0aGUgdGV4dCBtYXRyaXggc28gZ2x5cGhzIGFwcGVhciB2aXN1YWxseSB1cHJpZ2h0LgogICAg
IC8vIFdlIGhhdmUgdG8gaW5jbHVkZSB0aGUgcHJldmlvdXMgdGV4dCBtYXRyaXggYmVjYXVzZSBp
dCBpbmNsdWRlcyB0aGluZ3MgbGlrZSBzeW50aGV0aWMgb2JsaXF1ZS4KLSAgICByZXR1cm4gcm90
YXRlTGVmdFRyYW5zZm9ybSgpICogcHJldmlvdXNUZXh0TWF0cml4OworICAgIHJldHVybiByb3Rh
dGVMZWZ0VHJhbnNmb3JtICogcHJldmlvdXNUZXh0TWF0cml4OwogfQogCiAjaWYgIVBMQVRGT1JN
KFdJTikKQEAgLTE0NSw3ICsxNDEsNyBAQCBzdGF0aWMgdm9pZCBmaWxsVmVjdG9yV2l0aFZlcnRp
Y2FsR2x5cGhQb3NpdGlvbnMoVmVjdG9yPENHUG9pbnQsIDI1Nj4mIHBvc2l0aW9ucwogCiAgICAg
YXV0byBwb3NpdGlvbiA9IENHUG9pbnRNYWtlKHBvaW50LngoKSwgcG9pbnQueSgpICsgYXNjZW50
RGVsdGEpOwogICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBjb3VudDsgKytpKSB7Ci0gICAg
ICAgIENHU2l6ZSB0cmFuc2xhdGlvbiA9IENHU2l6ZUFwcGx5QWZmaW5lVHJhbnNmb3JtKHRyYW5z
bGF0aW9uc1tpXSwgcm90YXRlTGVmdFRyYW5zZm9ybSgpKTsKKyAgICAgICAgQ0dTaXplIHRyYW5z
bGF0aW9uID0gQ0dTaXplQXBwbHlBZmZpbmVUcmFuc2Zvcm0odHJhbnNsYXRpb25zW2ldLCByb3Rh
dGVMZWZ0VHJhbnNmb3JtKTsKICAgICAgICAgcG9zaXRpb25zW2ldID0gQ0dQb2ludEFwcGx5QWZm
aW5lVHJhbnNmb3JtKENHUG9pbnRNYWtlKHBvc2l0aW9uLnggLSB0cmFuc2xhdGlvbi53aWR0aCwg
cG9zaXRpb24ueSArIHRyYW5zbGF0aW9uLmhlaWdodCksIHRyYW5zZm9ybSk7CiAgICAgICAgIHBv
c2l0aW9uLnggKz0gYWR2YW5jZXNbaV0ud2lkdGg7CiAgICAgICAgIHBvc2l0aW9uLnkgKz0gYWR2
YW5jZXNbaV0uaGVpZ2h0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvdHJhbnNmb3Jtcy9BZmZpbmVUcmFuc2Zvcm0uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jtcy9BZmZpbmVUcmFuc2Zvcm0uY3BwCmluZGV4IDJhMjk0
MDdhZDE2NzJmODA1ODliNzM4NjgyMDdjOWU4NmRkMzNmODkuLjk4M2ZjN2Y1NmU4OTg1MTQyODBj
NjFjM2RmYzFjODc2ZWFhOTVmY2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL3RyYW5zZm9ybXMvQWZmaW5lVHJhbnNmb3JtLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy90cmFuc2Zvcm1zL0FmZmluZVRyYW5zZm9ybS5jcHAKQEAg
LTM4LDI4ICszOCw2IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotI2lmIENPTVBJTEVSKE1T
VkMpCi1BZmZpbmVUcmFuc2Zvcm06OkFmZmluZVRyYW5zZm9ybSgpCi17Ci0gICAgbV90cmFuc2Zv
cm0gPSB7IDEsIDAsIDAsIDEsIDAsIDAgfTsKLX0KLQotQWZmaW5lVHJhbnNmb3JtOjpBZmZpbmVU
cmFuc2Zvcm0oZG91YmxlIGEsIGRvdWJsZSBiLCBkb3VibGUgYywgZG91YmxlIGQsIGRvdWJsZSBl
LCBkb3VibGUgZikKLXsKLSAgICBtX3RyYW5zZm9ybSA9IHsgYSwgYiwgYywgZCwgZSwgZiB9Owot
fQotI2Vsc2UKLUFmZmluZVRyYW5zZm9ybTo6QWZmaW5lVHJhbnNmb3JtKCkKLSAgICA6IG1fdHJh
bnNmb3JtIHsgeyAxLCAwLCAwLCAxLCAwLCAwIH0gfQotewotfQotCi1BZmZpbmVUcmFuc2Zvcm06
OkFmZmluZVRyYW5zZm9ybShkb3VibGUgYSwgZG91YmxlIGIsIGRvdWJsZSBjLCBkb3VibGUgZCwg
ZG91YmxlIGUsIGRvdWJsZSBmKQotICAgIDogbV90cmFuc2Zvcm17IHsgYSwgYiwgYywgZCwgZSwg
ZiB9IH0KLXsKLX0KLSNlbmRpZgotCiB2b2lkIEFmZmluZVRyYW5zZm9ybTo6bWFrZUlkZW50aXR5
KCkKIHsKICAgICBzZXRNYXRyaXgoMSwgMCwgMCwgMSwgMCwgMCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90cmFuc2Zvcm1zL0FmZmluZVRyYW5zZm9ybS5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jtcy9BZmZpbmVUcmFu
c2Zvcm0uaAppbmRleCBhMDI3NWFkM2Y3MGZlNDgzZjUzNjZmZjRhZTM4ZGNkZWI2MmVkODdkLi5h
MDAwMDNkMTMwZTNjZDA0N2E4Mzk3Yzg0OWUzOGE1ODU1YzNlZWVjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90cmFuc2Zvcm1zL0FmZmluZVRyYW5zZm9ybS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMvQWZmaW5l
VHJhbnNmb3JtLmgKQEAgLTYwLDggKzYwLDggQEAgY2xhc3MgVHJhbnNmb3JtYXRpb25NYXRyaXg7
CiBjbGFzcyBBZmZpbmVUcmFuc2Zvcm0gewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwog
cHVibGljOgotICAgIFdFQkNPUkVfRVhQT1JUIEFmZmluZVRyYW5zZm9ybSgpOwotICAgIFdFQkNP
UkVfRVhQT1JUIEFmZmluZVRyYW5zZm9ybShkb3VibGUgYSwgZG91YmxlIGIsIGRvdWJsZSBjLCBk
b3VibGUgZCwgZG91YmxlIGUsIGRvdWJsZSBmKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBjb25zdGV4
cHIgQWZmaW5lVHJhbnNmb3JtKCk7CisgICAgV0VCQ09SRV9FWFBPUlQgY29uc3RleHByIEFmZmlu
ZVRyYW5zZm9ybShkb3VibGUgYSwgZG91YmxlIGIsIGRvdWJsZSBjLCBkb3VibGUgZCwgZG91Ymxl
IGUsIGRvdWJsZSBmKTsKIAogI2lmIFVTRShDRykKICAgICBXRUJDT1JFX0VYUE9SVCBBZmZpbmVU
cmFuc2Zvcm0oY29uc3QgQ0dBZmZpbmVUcmFuc2Zvcm0mKTsKQEAgLTIxNyw0ICsyMTcsMTQgQEAg
V0VCQ09SRV9FWFBPUlQgQWZmaW5lVHJhbnNmb3JtIG1ha2VNYXBCZXR3ZWVuUmVjdHMoY29uc3Qg
RmxvYXRSZWN0JiBzb3VyY2UsIGNvbnMKIAogV0VCQ09SRV9FWFBPUlQgV1RGOjpUZXh0U3RyZWFt
JiBvcGVyYXRvcjw8KFdURjo6VGV4dFN0cmVhbSYsIGNvbnN0IEFmZmluZVRyYW5zZm9ybSYpOwog
Citjb25zdGV4cHIgQWZmaW5lVHJhbnNmb3JtOjpBZmZpbmVUcmFuc2Zvcm0oKQorICAgIDogbV90
cmFuc2Zvcm0geyB7IDEsIDAsIDAsIDEsIDAsIDAgfSB9Cit7Cit9CisKK2NvbnN0ZXhwciBBZmZp
bmVUcmFuc2Zvcm06OkFmZmluZVRyYW5zZm9ybShkb3VibGUgYSwgZG91YmxlIGIsIGRvdWJsZSBj
LCBkb3VibGUgZCwgZG91YmxlIGUsIGRvdWJsZSBmKQorICAgIDogbV90cmFuc2Zvcm0geyB7IGEs
IGIsIGMsIGQsIGUsIGYgfSB9Cit7Cit9CisKIH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>446494</attachid>
            <date>2021-12-08 20:18:35 -0800</date>
            <delta_ts>2021-12-10 15:16:49 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-234052-20211209151833.patch</filename>
            <type>text/plain</type>
            <size>7353</size>
            <attacher name="Cameron McCormack (:heycam)">heycam</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg2NjM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDdkNjI1NGIzZjA2NzNl
YzNiNWZhZWVmMDgzNjY5MzAwMGI2ZTIzZi4uNmM3MGI1OGYxOWMyY2RkMDRhNmVkNGVhOTAyODhk
MmQ5N2FmZjEzZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIxLTEyLTAyICBDYW1l
cm9uIE1jQ29ybWFjayAgPGhleWNhbUBhcHBsZS5jb20+CisKKyAgICAgICAgQ29udmVydCByb3Rh
dGVMZWZ0VHJhbnNmb3JtKCkgaW50byBhIHN0YXRpYyBjb25zdGV4cHIgdmFyaWFibGUKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNDA1MgorCisgICAg
ICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgIHJvdGF0ZUxlZnRUcmFuc2Zv
cm0gY2FuIGJlIGNhbGxlZCBmcm9tIHdvcmtlciB0aHJlYWRzIHVzaW5nCisgICAgICAgIE9mZnNj
cmVlbkNhbnZhcywgYnV0IGRvZXNuJ3QgaW5pdGlhbGl6ZSBpdHMgc3RhdGljIHZhcmlhYmxlCisg
ICAgICAgIGluIGEgdGhyZWFkIHNhZmUgbWFubmVyIChnaXZlbiB0aGUgLWZuby10aHJlYWRzYWZl
LXN0YXRpY3MKKyAgICAgICAgY29uZmlndXJhdGlvbiBBcHBsZSBwb3J0cyB1c2UpLgorCisgICAg
ICAgIFRoaXMgcGF0Y2ggbWFrZXMgdGhlIEFmZmluZVRyYW5zZm9ybSBjb25zdHJ1Y3RvciB1c2Vk
IGhlcmUgKGFuZCB0aGUKKyAgICAgICAgZGVmYXVsdCBjb25zdHJ1Y3RvcikgY29uc3RleHByLCBh
bGxvd2luZyB1cyB0byByZXBsYWNlIHRoZQorICAgICAgICByb3RhdGVMZWZ0VHJhbnNmb3JtIGZ1
bmN0aW9uIHdpdGggYSBzdGF0aWMgY29uc3RleHByIHZhcmlhYmxlLgorCisgICAgICAgIFRoZSBN
U1ZDLXNwZWNpZmljIGRlZmluaXRpb25zIG9mIHRoZSBBZmZpbmVUcmFuc2Zvcm0gY29uc3RydWN0
b3JzIGFyZQorICAgICAgICByZW1vdmVkIHNpbmNlIHRoZSBjb21waWxlciBidWcgd2FzIGZpeGVk
IHNpbmNlIHRoZXkgd2VyZSBuZWVkZWQuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9j
b3JldGV4dC9Gb250Q2FzY2FkZUNvcmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNvbXB1
dGVWZXJ0aWNhbFRleHRNYXRyaXgpOgorICAgICAgICAoV2ViQ29yZTo6ZmlsbFZlY3RvcldpdGhW
ZXJ0aWNhbEdseXBoUG9zaXRpb25zKToKKyAgICAgICAgKFdlYkNvcmU6OnJvdGF0ZUxlZnRUcmFu
c2Zvcm0pOiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMv
QWZmaW5lVHJhbnNmb3JtLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFmZmluZVRyYW5zZm9ybTo6
QWZmaW5lVHJhbnNmb3JtKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy90
cmFuc2Zvcm1zL0FmZmluZVRyYW5zZm9ybS5oOgorICAgICAgICAoV2ViQ29yZTo6QWZmaW5lVHJh
bnNmb3JtOjpBZmZpbmVUcmFuc2Zvcm0pOgorCiAyMDIxLTEyLTAyICBDYW1lcm9uIE1jQ29ybWFj
ayAgPGhleWNhbUBhcHBsZS5jb20+CiAKICAgICAgICAgTW92ZSBTeXN0ZW1Gb250RGF0YWJhc2VD
b3JlVGV4dCB0byBGb250Q2FjaGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDYXNjYWRlQ29yZVRleHQuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHAKaW5k
ZXggNTExZTA5Yjk2Y2VmMDMyNTA5MGUyM2FmOTE0YWUzNWYyYWI4ZWQyZS4uNjUxYWZhNGNmMTFm
OTExMzdhMDVhZWI2OGY4OGQwZmZkNDM1ZDM1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3JlVGV4dC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENhc2NhZGVDb3Jl
VGV4dC5jcHAKQEAgLTU0LDExICs1NCw3IEBAIEZvbnRDYXNjYWRlOjpGb250Q2FzY2FkZShjb25z
dCBGb250UGxhdGZvcm1EYXRhJiBmb250RGF0YSwgRm9udFNtb290aGluZ01vZGUgZm9uCiAgICAg
bV9mb250RGVzY3JpcHRpb24uc2V0V2VpZ2h0KChDVEZvbnRHZXRTeW1ib2xpY1RyYWl0cyhmb250
RGF0YS5jdEZvbnQoKSkgJiBrQ1RGb250VHJhaXRCb2xkKSA/IGJvbGRXZWlnaHRWYWx1ZSgpIDog
bm9ybWFsV2VpZ2h0VmFsdWUoKSk7CiB9CiAKLXN0YXRpYyBjb25zdCBBZmZpbmVUcmFuc2Zvcm0m
IHJvdGF0ZUxlZnRUcmFuc2Zvcm0oKQotewotICAgIHN0YXRpYyBBZmZpbmVUcmFuc2Zvcm0gcmVz
dWx0KDAsIC0xLCAxLCAwLCAwLCAwKTsKLSAgICByZXR1cm4gcmVzdWx0OwotfQorc3RhdGljIGNv
bnN0ZXhwciBBZmZpbmVUcmFuc2Zvcm0gcm90YXRlTGVmdFRyYW5zZm9ybSB7IDAsIC0xLCAxLCAw
LCAwLCAwIH07CiAKIEFmZmluZVRyYW5zZm9ybSBjb21wdXRlT3ZlcmFsbFRleHRNYXRyaXgoY29u
c3QgRm9udCYgZm9udCkKIHsKQEAgLTk1LDcgKzkxLDcgQEAgQWZmaW5lVHJhbnNmb3JtIGNvbXB1
dGVWZXJ0aWNhbFRleHRNYXRyaXgoY29uc3QgRm9udCYgZm9udCwgY29uc3QgQWZmaW5lVHJhbnNm
b3IKICAgICAvLyB0aGlzIG1hdHJpeCBpcyBpbnZlcnRlZCBpbiBmaWxsVmVjdG9yV2l0aFZlcnRp
Y2FsR2x5cGhQb3NpdGlvbnMgdG8gcGxhY2UgdGhlIGdseXBocyBpbiB0aGUgQ1RNJ3MgY29vcmRp
bmF0ZSBzeXN0ZW0uCiAgICAgLy8gQWxsIHdlJ3JlIHRyeWluZyB0byBkbyBoZXJlIGlzIHJvdGF0
ZSB0aGUgdGV4dCBtYXRyaXggc28gZ2x5cGhzIGFwcGVhciB2aXN1YWxseSB1cHJpZ2h0LgogICAg
IC8vIFdlIGhhdmUgdG8gaW5jbHVkZSB0aGUgcHJldmlvdXMgdGV4dCBtYXRyaXggYmVjYXVzZSBp
dCBpbmNsdWRlcyB0aGluZ3MgbGlrZSBzeW50aGV0aWMgb2JsaXF1ZS4KLSAgICByZXR1cm4gcm90
YXRlTGVmdFRyYW5zZm9ybSgpICogcHJldmlvdXNUZXh0TWF0cml4OworICAgIHJldHVybiByb3Rh
dGVMZWZ0VHJhbnNmb3JtICogcHJldmlvdXNUZXh0TWF0cml4OwogfQogCiAjaWYgIVBMQVRGT1JN
KFdJTikKQEAgLTE0NSw3ICsxNDEsNyBAQCBzdGF0aWMgdm9pZCBmaWxsVmVjdG9yV2l0aFZlcnRp
Y2FsR2x5cGhQb3NpdGlvbnMoVmVjdG9yPENHUG9pbnQsIDI1Nj4mIHBvc2l0aW9ucwogCiAgICAg
YXV0byBwb3NpdGlvbiA9IENHUG9pbnRNYWtlKHBvaW50LngoKSwgcG9pbnQueSgpICsgYXNjZW50
RGVsdGEpOwogICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBjb3VudDsgKytpKSB7Ci0gICAg
ICAgIENHU2l6ZSB0cmFuc2xhdGlvbiA9IENHU2l6ZUFwcGx5QWZmaW5lVHJhbnNmb3JtKHRyYW5z
bGF0aW9uc1tpXSwgcm90YXRlTGVmdFRyYW5zZm9ybSgpKTsKKyAgICAgICAgQ0dTaXplIHRyYW5z
bGF0aW9uID0gQ0dTaXplQXBwbHlBZmZpbmVUcmFuc2Zvcm0odHJhbnNsYXRpb25zW2ldLCByb3Rh
dGVMZWZ0VHJhbnNmb3JtKTsKICAgICAgICAgcG9zaXRpb25zW2ldID0gQ0dQb2ludEFwcGx5QWZm
aW5lVHJhbnNmb3JtKENHUG9pbnRNYWtlKHBvc2l0aW9uLnggLSB0cmFuc2xhdGlvbi53aWR0aCwg
cG9zaXRpb24ueSArIHRyYW5zbGF0aW9uLmhlaWdodCksIHRyYW5zZm9ybSk7CiAgICAgICAgIHBv
c2l0aW9uLnggKz0gYWR2YW5jZXNbaV0ud2lkdGg7CiAgICAgICAgIHBvc2l0aW9uLnkgKz0gYWR2
YW5jZXNbaV0uaGVpZ2h0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvdHJhbnNmb3Jtcy9BZmZpbmVUcmFuc2Zvcm0uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jtcy9BZmZpbmVUcmFuc2Zvcm0uY3BwCmluZGV4IDJhMjk0
MDdhZDE2NzJmODA1ODliNzM4NjgyMDdjOWU4NmRkMzNmODkuLjk4M2ZjN2Y1NmU4OTg1MTQyODBj
NjFjM2RmYzFjODc2ZWFhOTVmY2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL3RyYW5zZm9ybXMvQWZmaW5lVHJhbnNmb3JtLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy90cmFuc2Zvcm1zL0FmZmluZVRyYW5zZm9ybS5jcHAKQEAg
LTM4LDI4ICszOCw2IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotI2lmIENPTVBJTEVSKE1T
VkMpCi1BZmZpbmVUcmFuc2Zvcm06OkFmZmluZVRyYW5zZm9ybSgpCi17Ci0gICAgbV90cmFuc2Zv
cm0gPSB7IDEsIDAsIDAsIDEsIDAsIDAgfTsKLX0KLQotQWZmaW5lVHJhbnNmb3JtOjpBZmZpbmVU
cmFuc2Zvcm0oZG91YmxlIGEsIGRvdWJsZSBiLCBkb3VibGUgYywgZG91YmxlIGQsIGRvdWJsZSBl
LCBkb3VibGUgZikKLXsKLSAgICBtX3RyYW5zZm9ybSA9IHsgYSwgYiwgYywgZCwgZSwgZiB9Owot
fQotI2Vsc2UKLUFmZmluZVRyYW5zZm9ybTo6QWZmaW5lVHJhbnNmb3JtKCkKLSAgICA6IG1fdHJh
bnNmb3JtIHsgeyAxLCAwLCAwLCAxLCAwLCAwIH0gfQotewotfQotCi1BZmZpbmVUcmFuc2Zvcm06
OkFmZmluZVRyYW5zZm9ybShkb3VibGUgYSwgZG91YmxlIGIsIGRvdWJsZSBjLCBkb3VibGUgZCwg
ZG91YmxlIGUsIGRvdWJsZSBmKQotICAgIDogbV90cmFuc2Zvcm17IHsgYSwgYiwgYywgZCwgZSwg
ZiB9IH0KLXsKLX0KLSNlbmRpZgotCiB2b2lkIEFmZmluZVRyYW5zZm9ybTo6bWFrZUlkZW50aXR5
KCkKIHsKICAgICBzZXRNYXRyaXgoMSwgMCwgMCwgMSwgMCwgMCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90cmFuc2Zvcm1zL0FmZmluZVRyYW5zZm9ybS5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jtcy9BZmZpbmVUcmFu
c2Zvcm0uaAppbmRleCBhMDI3NWFkM2Y3MGZlNDgzZjUzNjZmZjRhZTM4ZGNkZWI2MmVkODdkLi5h
MDAwMDNkMTMwZTNjZDA0N2E4Mzk3Yzg0OWUzOGE1ODU1YzNlZWVjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90cmFuc2Zvcm1zL0FmZmluZVRyYW5zZm9ybS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMvQWZmaW5l
VHJhbnNmb3JtLmgKQEAgLTYwLDggKzYwLDggQEAgY2xhc3MgVHJhbnNmb3JtYXRpb25NYXRyaXg7
CiBjbGFzcyBBZmZpbmVUcmFuc2Zvcm0gewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwog
cHVibGljOgotICAgIFdFQkNPUkVfRVhQT1JUIEFmZmluZVRyYW5zZm9ybSgpOwotICAgIFdFQkNP
UkVfRVhQT1JUIEFmZmluZVRyYW5zZm9ybShkb3VibGUgYSwgZG91YmxlIGIsIGRvdWJsZSBjLCBk
b3VibGUgZCwgZG91YmxlIGUsIGRvdWJsZSBmKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBjb25zdGV4
cHIgQWZmaW5lVHJhbnNmb3JtKCk7CisgICAgV0VCQ09SRV9FWFBPUlQgY29uc3RleHByIEFmZmlu
ZVRyYW5zZm9ybShkb3VibGUgYSwgZG91YmxlIGIsIGRvdWJsZSBjLCBkb3VibGUgZCwgZG91Ymxl
IGUsIGRvdWJsZSBmKTsKIAogI2lmIFVTRShDRykKICAgICBXRUJDT1JFX0VYUE9SVCBBZmZpbmVU
cmFuc2Zvcm0oY29uc3QgQ0dBZmZpbmVUcmFuc2Zvcm0mKTsKQEAgLTIxNyw0ICsyMTcsMTQgQEAg
V0VCQ09SRV9FWFBPUlQgQWZmaW5lVHJhbnNmb3JtIG1ha2VNYXBCZXR3ZWVuUmVjdHMoY29uc3Qg
RmxvYXRSZWN0JiBzb3VyY2UsIGNvbnMKIAogV0VCQ09SRV9FWFBPUlQgV1RGOjpUZXh0U3RyZWFt
JiBvcGVyYXRvcjw8KFdURjo6VGV4dFN0cmVhbSYsIGNvbnN0IEFmZmluZVRyYW5zZm9ybSYpOwog
Citjb25zdGV4cHIgQWZmaW5lVHJhbnNmb3JtOjpBZmZpbmVUcmFuc2Zvcm0oKQorICAgIDogbV90
cmFuc2Zvcm0geyB7IDEsIDAsIDAsIDEsIDAsIDAgfSB9Cit7Cit9CisKK2NvbnN0ZXhwciBBZmZp
bmVUcmFuc2Zvcm06OkFmZmluZVRyYW5zZm9ybShkb3VibGUgYSwgZG91YmxlIGIsIGRvdWJsZSBj
LCBkb3VibGUgZCwgZG91YmxlIGUsIGRvdWJsZSBmKQorICAgIDogbV90cmFuc2Zvcm0geyB7IGEs
IGIsIGMsIGQsIGUsIGYgfSB9Cit7Cit9CisKIH0KZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxv
ZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA0MzUxYjEzZmExZjJmMzdmZDI3NWEyOGI1YzVlMTU3
MjNhZTVjMDIxLi5kMWQ5OWM1MWEwOTZiOWU2NDY0MjQ4OWQ1MjQzOTZiM2YxM2U4OTVjIDEwMDY0
NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTMgQEAKKzIwMjEtMTItMDggIENhbWVyb24gTWNDb3JtYWNrICA8aGV5Y2FtQGFwcGxlLmNvbT4K
KworICAgICAgICBSZW1vdmUgdW51c2VkIEFmZmluZVRyYW5zZm9ybSB2YXJpYWJsZSBmcm9tIGEg
dGVzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0
MDUyCisKKyAgICAgICAgVW5yZXZpZXdlZC4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViQ29yZS9BZmZpbmVUcmFuc2Zvcm0uY3BwOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6
VEVTVCk6CisKIDIwMjEtMTItMDcgIFlvdXN1a2UgS2ltb3RvICA8WW91c3VrZS5LaW1vdG9Ac29u
eS5jb20+CiAKICAgICAgICAgW3dlYmtpdGNvcmVweV0gRmFpbCB0byBpbnN0YWxsIHB5dGhvbiBt
b2R1bGUgd2hlbiBhIHdvcmtpbmcgZGlyZWN0b3J5IGlzIG5vdCBvbiBDIGRyaXZlIG9uIFdpbmRv
d3MKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9BZmZpbmVU
cmFuc2Zvcm0uY3BwIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJDb3JlL0FmZmluZVRy
YW5zZm9ybS5jcHAKaW5kZXggOWJjZDFhNGRlMzlmZDk4ZTU4OGJjOGYwYmYyYzE0ZDVjZDE4ZjQ3
My4uYzdmNzZlOTM4OTkyODdkOTQ3MjJhZmJlMWU5ZDAwMzMzYTc5M2MxNSAxMDA2NDQKLS0tIGEv
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJDb3JlL0FmZmluZVRyYW5zZm9ybS5jcHAKKysr
IGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJDb3JlL0FmZmluZVRyYW5zZm9ybS5jcHAK
QEAgLTk3Miw4ICs5NzIsNiBAQCBURVNUKEFmZmluZVRyYW5zZm9ybSwgVG9UcmFuc2Zvcm1hdGlv
bk1hdHJpeCkKIAogVEVTVChBZmZpbmVUcmFuc2Zvcm0sIE1ha2VNYXBCZXR3ZWVuUmVjdHMpCiB7
Ci0gICAgV2ViQ29yZTo6QWZmaW5lVHJhbnNmb3JtIHRyYW5zZm9ybTsKLQogICAgIFdlYkNvcmU6
OkZsb2F0UmVjdCBmcm9tUmVjdCgxMC4wZiwgMTAuMGYsIDEwMC4wZiwgMTAwLjBmKTsKICAgICBX
ZWJDb3JlOjpGbG9hdFJlY3QgdG9SZWN0KDcwLjBmLCA3MC4wZiwgMjAwLjBmLCA1MC4wZik7CiAK
</data>
<flag name="review"
          id="472313"
          type_id="1"
          status="+"
          setter="mmaxfield"
    />
          </attachment>
      

    </bug>

</bugzilla>