<?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>208493</bug_id>
          
          <creation_ts>2020-03-02 18:08:51 -0800</creation_ts>
          <short_desc>Remove the required `LockHolder` when calling `WebAnimation::instances()`</short_desc>
          <delta_ts>2020-08-28 11:34:02 -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>Animations</component>
          <version>WebKit Local Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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>
          
          <blocked>215940</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Devin Rousso">hi</reporter>
          <assigned_to name="Devin Rousso">hi</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>hi</cc>
    
    <cc>joepeck</cc>
    
    <cc>Lawrence.j</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1624878</commentid>
    <comment_count>0</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-03-02 18:08:51 -0800</bug_when>
    <thetext>Since `WebAnimation`s are not accessible from `Worker`s (e.g. main thread only), there&apos;s no reason to require that a lock be held.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1624879</commentid>
    <comment_count>1</comment_count>
      <attachid>392234</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-03-02 18:10:15 -0800</bug_when>
    <thetext>Created attachment 392234
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1624880</commentid>
    <comment_count>2</comment_count>
      <attachid>392235</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-03-02 18:13:44 -0800</bug_when>
    <thetext>Created attachment 392235
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1624901</commentid>
    <comment_count>3</comment_count>
      <attachid>392235</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2020-03-02 18:54:54 -0800</bug_when>
    <thetext>Comment on attachment 392235
Patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        Since `WebAnimation`s are not accessible from `Worker`s (e.g. main thread only), there&apos;s no

s/e.g./i.e./

&gt; Source/WebCore/animation/WebAnimation.cpp:-116
&gt; -    LockHolder lock(instancesMutex());

So the destructor is also always called from main thread?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1624903</commentid>
    <comment_count>4</comment_count>
      <attachid>392235</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-02 18:59:35 -0800</bug_when>
    <thetext>Comment on attachment 392235
Patch

Clearing flags on attachment: 392235

Committed r257756: &lt;https://trac.webkit.org/changeset/257756&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1624904</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-02 18:59:37 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1624905</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-03-02 19:00:16 -0800</bug_when>
    <thetext>&lt;rdar://problem/59979212&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625105</commentid>
    <comment_count>7</comment_count>
      <attachid>392235</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2020-03-03 10:12:30 -0800</bug_when>
    <thetext>Comment on attachment 392235
Patch

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

&gt; Source/WebCore/ChangeLog:9
&gt; +        reason to require that a lock be held in order to access `WebAnimation::instances()`.

Can we add an assertion to assert this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625135</commentid>
    <comment_count>8</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-03-03 11:00:06 -0800</bug_when>
    <thetext>(In reply to Joseph Pecoraro from comment #7)
&gt; Comment on attachment 392235 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=392235&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:9
&gt; &gt; +        reason to require that a lock be held in order to access `WebAnimation::instances()`.
&gt; 
&gt; Can we add an assertion to assert this?

Should we assert for every class that&apos;s main thread only? WebAnimation is not ThreadSafeRefCounted, so there&apos;s no indication that it&apos;s thread safe.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625160</commentid>
    <comment_count>9</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2020-03-03 11:42:30 -0800</bug_when>
    <thetext>(In reply to Simon Fraser (smfr) from comment #8)
&gt; (In reply to Joseph Pecoraro from comment #7)
&gt; &gt; Comment on attachment 392235 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; View in context:
&gt; &gt; https://bugs.webkit.org/attachment.cgi?id=392235&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebCore/ChangeLog:9
&gt; &gt; &gt; +        reason to require that a lock be held in order to access `WebAnimation::instances()`.
&gt; &gt; 
&gt; &gt; Can we add an assertion to assert this?
&gt; 
&gt; Should we assert for every class that&apos;s main thread only? WebAnimation is
&gt; not ThreadSafeRefCounted, so there&apos;s no indication that it&apos;s thread safe.

That seems fair. The idea would be if WebAnimation becomes ThreadSafeRefCounted in the future, then we might overlook adding locks to this all-animations list and the assertion would catch that. I guess WebAnimations are not something we are going to expose to Workers / Worklets anytime soon though.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392234</attachid>
            <date>2020-03-02 18:10:15 -0800</date>
            <delta_ts>2020-03-02 18:13:43 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208493-20200302181015.patch</filename>
            <type>text/plain</type>
            <size>4256</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAzNzMwODE2MTk0MzE2NTViMmM4N2Q4N2I2ZmE2YzFhYWI4MTdkYmFmLi4w
ZDhhYjZjY2MwYjhmYjQzNWI3Y2MzNTI5MmVhZTI3M2Q5ZjgzOTJiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjIgQEAKKzIwMjAtMDMtMDIgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29t
PgorCisgICAgICAgIFJlbW92ZSB0aGUgcmVxdWlyZWQgYExvY2tIb2xkZXJgIHdoZW4gY2FsbGlu
ZyBgV2ViQW5pbWF0aW9uOjppbnN0YW5jZXMoKWAKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODQ5MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFNpbmNlIGBXZWJBbmltYXRpb25gcyBhcmUgbm90IGFjY2Vz
c2libGUgZnJvbSBgV29ya2VyYHMgKGUuZy4gbWFpbiB0aHJlYWQgb25seSksIHRoZXJlJ3Mgbm8K
KyAgICAgICAgcmVhc29uIHRvIHJlcXVpcmUgdGhhdCBhIGxvY2sgYmUgaGVsZCBpbiBvcmRlciB0
byBhY2Nlc3MgYFdlYkFuaW1hdGlvbjo6aW5zdGFuY2VzKClgLgorCisgICAgICAgICogYW5pbWF0
aW9uL1dlYkFuaW1hdGlvbi5oOgorICAgICAgICAqIGFuaW1hdGlvbi9XZWJBbmltYXRpb24uY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6V2ViQW5pbWF0aW9uOjpXZWJBbmltYXRpb24pOgorICAgICAg
ICAoV2ViQ29yZTo6V2ViQW5pbWF0aW9uOjp+V2ViQW5pbWF0aW9uKToKKyAgICAgICAgKFdlYkNv
cmU6OldlYkFuaW1hdGlvbjo6aW5zdGFuY2VzTXV0ZXgpOiBEZWxldGVkLgorCisgICAgICAgICog
aW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JBbmltYXRpb25BZ2VudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JBbmltYXRpb25BZ2VudDo6ZW5hYmxlKToKKwogMjAyMC0wMy0wMiAg
RGFuaWVsIEJhdGVzICA8ZGFiYXRlc0BhcHBsZS5jb20+CiAKICAgICAgICAgQW5ub3RhdGUgZWRp
dGFibGUgZWxlbWVudHMgd2l0aCBoaXQgdGVzdCBvcmRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYW5pbWF0aW9uL1dlYkFuaW1hdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRp
b24vV2ViQW5pbWF0aW9uLmNwcAppbmRleCBkZjc4ODZlNDY3NWZhMGQ4Yzg2MTQ4OWI4ZWY3ZjYx
YmUzNDlkMDhmLi5jOWJhZTk1MWI3NDM3NWU5NjljYTM2MTA4OGY1ZTY2ZTJjNTY2OTU5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vV2ViQW5pbWF0aW9uLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9hbmltYXRpb24vV2ViQW5pbWF0aW9uLmNwcApAQCAtNDUsNyArNDUsNiBA
QAogI2luY2x1ZGUgIlN0eWxlZEVsZW1lbnQuaCIKICNpbmNsdWRlICJXZWJBbmltYXRpb25VdGls
aXRpZXMuaCIKICNpbmNsdWRlIDx3dGYvSXNvTWFsbG9jSW5saW5lcy5oPgotI2luY2x1ZGUgPHd0
Zi9Mb2NrLmg+CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CiAjaW5jbHVkZSA8d3Rm
L09wdGlvbmFsLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvVGV4dFN0cmVhbS5oPgpAQCAtNTUsMjIg
KzU0LDEyIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9J
TVBMKFdlYkFuaW1hdGlvbik7CiAKLUhhc2hTZXQ8V2ViQW5pbWF0aW9uKj4mIFdlYkFuaW1hdGlv
bjo6aW5zdGFuY2VzKGNvbnN0IExvY2tIb2xkZXImKQorSGFzaFNldDxXZWJBbmltYXRpb24qPiYg
V2ViQW5pbWF0aW9uOjppbnN0YW5jZXMoKQogewogICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxI
YXNoU2V0PFdlYkFuaW1hdGlvbio+PiBpbnN0YW5jZXM7CiAgICAgcmV0dXJuIGluc3RhbmNlczsK
IH0KIAotTG9jayYgV2ViQW5pbWF0aW9uOjppbnN0YW5jZXNNdXRleCgpCi17Ci0gICAgc3RhdGlj
IExhenlOZXZlckRlc3Ryb3llZDxMb2NrPiBtdXRleDsKLSAgICBzdGF0aWMgc3RkOjpvbmNlX2Zs
YWcgaW5pdGlhbGl6ZU11dGV4OwotICAgIHN0ZDo6Y2FsbF9vbmNlKGluaXRpYWxpemVNdXRleCwg
W10gewotICAgICAgICBtdXRleC5jb25zdHJ1Y3QoKTsKLSAgICB9KTsKLSAgICByZXR1cm4gbXV0
ZXguZ2V0KCk7Ci19Ci0KIFJlZjxXZWJBbmltYXRpb24+IFdlYkFuaW1hdGlvbjo6Y3JlYXRlKERv
Y3VtZW50JiBkb2N1bWVudCwgQW5pbWF0aW9uRWZmZWN0KiBlZmZlY3QpCiB7CiAgICAgYXV0byBy
ZXN1bHQgPSBhZG9wdFJlZigqbmV3IFdlYkFuaW1hdGlvbihkb2N1bWVudCkpOwpAQCAtMTAyLDcg
KzkxLDYgQEAgV2ViQW5pbWF0aW9uOjpXZWJBbmltYXRpb24oRG9jdW1lbnQmIGRvY3VtZW50KQog
ICAgIG1fcmVhZHlQcm9taXNlLT5yZXNvbHZlKCp0aGlzKTsKICAgICBzdXNwZW5kSWZOZWVkZWQo
KTsKIAotICAgIExvY2tIb2xkZXIgbG9jayhpbnN0YW5jZXNNdXRleCgpKTsKICAgICBpbnN0YW5j
ZXMobG9jaykuYWRkKHRoaXMpOwogfQogCkBAIC0xMTMsNyArMTAxLDYgQEAgV2ViQW5pbWF0aW9u
Ojp+V2ViQW5pbWF0aW9uKCkKICAgICBpZiAobV90aW1lbGluZSkKICAgICAgICAgbV90aW1lbGlu
ZS0+Zm9yZ2V0QW5pbWF0aW9uKHRoaXMpOwogCi0gICAgTG9ja0hvbGRlciBsb2NrKGluc3RhbmNl
c011dGV4KCkpOwogICAgIEFTU0VSVChpbnN0YW5jZXMobG9jaykuY29udGFpbnModGhpcykpOwog
ICAgIGluc3RhbmNlcyhsb2NrKS5yZW1vdmUodGhpcyk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9hbmltYXRpb24vV2ViQW5pbWF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRp
b24vV2ViQW5pbWF0aW9uLmgKaW5kZXggNmY2NzczNDUwNzg3OGQ0MDI0MWMzYzI3MDVlZTZlYjQz
YWRkNjJjMi4uZjljMzkzMWVlOTZlMTU4ZDQwNWI0NzM2YjVhNWI2ODc4OTBkOWJiMyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL1dlYkFuaW1hdGlvbi5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2FuaW1hdGlvbi9XZWJBbmltYXRpb24uaApAQCAtNTcsOCArNTcsNyBAQCBwdWJs
aWM6CiAgICAgc3RhdGljIFJlZjxXZWJBbmltYXRpb24+IGNyZWF0ZShEb2N1bWVudCYsIEFuaW1h
dGlvbkVmZmVjdCosIEFuaW1hdGlvblRpbWVsaW5lKik7CiAgICAgfldlYkFuaW1hdGlvbigpOwog
Ci0gICAgc3RhdGljIEhhc2hTZXQ8V2ViQW5pbWF0aW9uKj4mIGluc3RhbmNlcyhjb25zdCBMb2Nr
SG9sZGVyJik7Ci0gICAgc3RhdGljIExvY2smIGluc3RhbmNlc011dGV4KCk7CisgICAgc3RhdGlj
IEhhc2hTZXQ8V2ViQW5pbWF0aW9uKj4mIGluc3RhbmNlcygpOwogCiAgICAgdmlydHVhbCBib29s
IGlzRGVjbGFyYXRpdmVBbmltYXRpb24oKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogICAgIHZp
cnR1YWwgYm9vbCBpc0NTU0FuaW1hdGlvbigpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckFuaW1hdGlv
bkFnZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQW5p
bWF0aW9uQWdlbnQuY3BwCmluZGV4IDRjYTFiMzRjMDRlNDkxOWZhMTJlY2UxZTJlMmYzZTljZTIw
ZWYwMWYuLmY4NWFlY2Q2YjZjYTc2OGMxOWRhOTliMzg4MTBkNDMwYzMwNmE2ZWUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQW5pbWF0aW9uQWdl
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQW5p
bWF0aW9uQWdlbnQuY3BwCkBAIC0yNjMsOCArMjYzLDcgQEAgdm9pZCBJbnNwZWN0b3JBbmltYXRp
b25BZ2VudDo6ZW5hYmxlKEVycm9yU3RyaW5nJiBlcnJvclN0cmluZykKICAgICB9OwogCiAgICAg
ewotICAgICAgICBMb2NrSG9sZGVyIGxvY2soV2ViQW5pbWF0aW9uOjppbnN0YW5jZXNNdXRleCgp
KTsKLSAgICAgICAgZm9yIChhdXRvKiBhbmltYXRpb24gOiBXZWJBbmltYXRpb246Omluc3RhbmNl
cyhsb2NrKSkgeworICAgICAgICBmb3IgKGF1dG8qIGFuaW1hdGlvbiA6IFdlYkFuaW1hdGlvbjo6
aW5zdGFuY2VzKCkpIHsKICAgICAgICAgICAgIGlmIChleGlzdHNJbkN1cnJlbnRQYWdlKGFuaW1h
dGlvbi0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKSkKICAgICAgICAgICAgICAgICBiaW5kQW5p
bWF0aW9uKCphbmltYXRpb24sIGZhbHNlKTsKICAgICAgICAgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392235</attachid>
            <date>2020-03-02 18:13:44 -0800</date>
            <delta_ts>2020-03-02 18:59:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208493-20200302181343.patch</filename>
            <type>text/plain</type>
            <size>4426</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAzNzMwODE2MTk0MzE2NTViMmM4N2Q4N2I2ZmE2YzFhYWI4MTdkYmFmLi44
ODM1N2JhOTNjODZhZjI5MTU0MGNkNmJmOGFkOTE2NmY0OTI1NzJjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjIgQEAKKzIwMjAtMDMtMDIgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29t
PgorCisgICAgICAgIFJlbW92ZSB0aGUgcmVxdWlyZWQgYExvY2tIb2xkZXJgIHdoZW4gY2FsbGlu
ZyBgV2ViQW5pbWF0aW9uOjppbnN0YW5jZXMoKWAKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODQ5MworCisgICAgICAgIFJldmlld2VkIGJ5IFNpbW9u
IEZyYXNlci4KKworICAgICAgICBTaW5jZSBgV2ViQW5pbWF0aW9uYHMgYXJlIG5vdCBhY2Nlc3Np
YmxlIGZyb20gYFdvcmtlcmBzIChlLmcuIG1haW4gdGhyZWFkIG9ubHkpLCB0aGVyZSdzIG5vCisg
ICAgICAgIHJlYXNvbiB0byByZXF1aXJlIHRoYXQgYSBsb2NrIGJlIGhlbGQgaW4gb3JkZXIgdG8g
YWNjZXNzIGBXZWJBbmltYXRpb246Omluc3RhbmNlcygpYC4KKworICAgICAgICAqIGFuaW1hdGlv
bi9XZWJBbmltYXRpb24uaDoKKyAgICAgICAgKiBhbmltYXRpb24vV2ViQW5pbWF0aW9uLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OldlYkFuaW1hdGlvbjo6V2ViQW5pbWF0aW9uKToKKyAgICAgICAg
KFdlYkNvcmU6OldlYkFuaW1hdGlvbjo6fldlYkFuaW1hdGlvbik6CisgICAgICAgIChXZWJDb3Jl
OjpXZWJBbmltYXRpb246Omluc3RhbmNlc011dGV4KTogRGVsZXRlZC4KKworICAgICAgICAqIGlu
c3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQW5pbWF0aW9uQWdlbnQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9yQW5pbWF0aW9uQWdlbnQ6OmVuYWJsZSk6CisKIDIwMjAtMDMtMDIgIERh
bmllbCBCYXRlcyAgPGRhYmF0ZXNAYXBwbGUuY29tPgogCiAgICAgICAgIEFubm90YXRlIGVkaXRh
YmxlIGVsZW1lbnRzIHdpdGggaGl0IHRlc3Qgb3JkZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2FuaW1hdGlvbi9XZWJBbmltYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9u
L1dlYkFuaW1hdGlvbi5jcHAKaW5kZXggZGY3ODg2ZTQ2NzVmYTBkOGM4NjE0ODliOGVmN2Y2MWJl
MzQ5ZDA4Zi4uMGVjMTA1Zjc0ZDNhNmQyZjU2MmMyMzU5YTYyZDk0ZDZkZTcwNTZkOSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL1dlYkFuaW1hdGlvbi5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYW5pbWF0aW9uL1dlYkFuaW1hdGlvbi5jcHAKQEAgLTQ1LDcgKzQ1LDYgQEAK
ICNpbmNsdWRlICJTdHlsZWRFbGVtZW50LmgiCiAjaW5jbHVkZSAiV2ViQW5pbWF0aW9uVXRpbGl0
aWVzLmgiCiAjaW5jbHVkZSA8d3RmL0lzb01hbGxvY0lubGluZXMuaD4KLSNpbmNsdWRlIDx3dGYv
TG9jay5oPgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgogI2luY2x1ZGUgPHd0Zi9P
cHRpb25hbC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRTdHJlYW0uaD4KQEAgLTU1LDIyICs1
NCwxMiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1Q
TChXZWJBbmltYXRpb24pOwogCi1IYXNoU2V0PFdlYkFuaW1hdGlvbio+JiBXZWJBbmltYXRpb246
Omluc3RhbmNlcyhjb25zdCBMb2NrSG9sZGVyJikKK0hhc2hTZXQ8V2ViQW5pbWF0aW9uKj4mIFdl
YkFuaW1hdGlvbjo6aW5zdGFuY2VzKCkKIHsKICAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8SGFz
aFNldDxXZWJBbmltYXRpb24qPj4gaW5zdGFuY2VzOwogICAgIHJldHVybiBpbnN0YW5jZXM7CiB9
CiAKLUxvY2smIFdlYkFuaW1hdGlvbjo6aW5zdGFuY2VzTXV0ZXgoKQotewotICAgIHN0YXRpYyBM
YXp5TmV2ZXJEZXN0cm95ZWQ8TG9jaz4gbXV0ZXg7Ci0gICAgc3RhdGljIHN0ZDo6b25jZV9mbGFn
IGluaXRpYWxpemVNdXRleDsKLSAgICBzdGQ6OmNhbGxfb25jZShpbml0aWFsaXplTXV0ZXgsIFtd
IHsKLSAgICAgICAgbXV0ZXguY29uc3RydWN0KCk7Ci0gICAgfSk7Ci0gICAgcmV0dXJuIG11dGV4
LmdldCgpOwotfQotCiBSZWY8V2ViQW5pbWF0aW9uPiBXZWJBbmltYXRpb246OmNyZWF0ZShEb2N1
bWVudCYgZG9jdW1lbnQsIEFuaW1hdGlvbkVmZmVjdCogZWZmZWN0KQogewogICAgIGF1dG8gcmVz
dWx0ID0gYWRvcHRSZWYoKm5ldyBXZWJBbmltYXRpb24oZG9jdW1lbnQpKTsKQEAgLTEwMiw4ICs5
MSw3IEBAIFdlYkFuaW1hdGlvbjo6V2ViQW5pbWF0aW9uKERvY3VtZW50JiBkb2N1bWVudCkKICAg
ICBtX3JlYWR5UHJvbWlzZS0+cmVzb2x2ZSgqdGhpcyk7CiAgICAgc3VzcGVuZElmTmVlZGVkKCk7
CiAKLSAgICBMb2NrSG9sZGVyIGxvY2soaW5zdGFuY2VzTXV0ZXgoKSk7Ci0gICAgaW5zdGFuY2Vz
KGxvY2spLmFkZCh0aGlzKTsKKyAgICBpbnN0YW5jZXMoKS5hZGQodGhpcyk7CiB9CiAKIFdlYkFu
aW1hdGlvbjo6fldlYkFuaW1hdGlvbigpCkBAIC0xMTMsOSArMTAxLDggQEAgV2ViQW5pbWF0aW9u
Ojp+V2ViQW5pbWF0aW9uKCkKICAgICBpZiAobV90aW1lbGluZSkKICAgICAgICAgbV90aW1lbGlu
ZS0+Zm9yZ2V0QW5pbWF0aW9uKHRoaXMpOwogCi0gICAgTG9ja0hvbGRlciBsb2NrKGluc3RhbmNl
c011dGV4KCkpOwotICAgIEFTU0VSVChpbnN0YW5jZXMobG9jaykuY29udGFpbnModGhpcykpOwot
ICAgIGluc3RhbmNlcyhsb2NrKS5yZW1vdmUodGhpcyk7CisgICAgQVNTRVJUKGluc3RhbmNlcygp
LmNvbnRhaW5zKHRoaXMpKTsKKyAgICBpbnN0YW5jZXMoKS5yZW1vdmUodGhpcyk7CiB9CiAKIHZv
aWQgV2ViQW5pbWF0aW9uOjpjb250ZXh0RGVzdHJveWVkKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2FuaW1hdGlvbi9XZWJBbmltYXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlv
bi9XZWJBbmltYXRpb24uaAppbmRleCA2ZjY3NzM0NTA3ODc4ZDQwMjQxYzNjMjcwNWVlNmViNDNh
ZGQ2MmMyLi5mOWMzOTMxZWU5NmUxNThkNDA1YjQ3MzZiNWE1YjY4Nzg5MGQ5YmIzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vV2ViQW5pbWF0aW9uLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvYW5pbWF0aW9uL1dlYkFuaW1hdGlvbi5oCkBAIC01Nyw4ICs1Nyw3IEBAIHB1Ymxp
YzoKICAgICBzdGF0aWMgUmVmPFdlYkFuaW1hdGlvbj4gY3JlYXRlKERvY3VtZW50JiwgQW5pbWF0
aW9uRWZmZWN0KiwgQW5pbWF0aW9uVGltZWxpbmUqKTsKICAgICB+V2ViQW5pbWF0aW9uKCk7CiAK
LSAgICBzdGF0aWMgSGFzaFNldDxXZWJBbmltYXRpb24qPiYgaW5zdGFuY2VzKGNvbnN0IExvY2tI
b2xkZXImKTsKLSAgICBzdGF0aWMgTG9jayYgaW5zdGFuY2VzTXV0ZXgoKTsKKyAgICBzdGF0aWMg
SGFzaFNldDxXZWJBbmltYXRpb24qPiYgaW5zdGFuY2VzKCk7CiAKICAgICB2aXJ0dWFsIGJvb2wg
aXNEZWNsYXJhdGl2ZUFuaW1hdGlvbigpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgdmly
dHVhbCBib29sIGlzQ1NTQW5pbWF0aW9uKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQW5pbWF0aW9u
QWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JBbmlt
YXRpb25BZ2VudC5jcHAKaW5kZXggNGNhMWIzNGMwNGU0OTE5ZmExMmVjZTFlMmUyZjNlOWNlMjBl
ZjAxZi4uZjg1YWVjZDZiNmNhNzY4YzE5ZGE5OWIzODgxMGQ0MzBjMzA2YTZlZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JBbmltYXRpb25BZ2Vu
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JBbmlt
YXRpb25BZ2VudC5jcHAKQEAgLTI2Myw4ICsyNjMsNyBAQCB2b2lkIEluc3BlY3RvckFuaW1hdGlv
bkFnZW50OjplbmFibGUoRXJyb3JTdHJpbmcmIGVycm9yU3RyaW5nKQogICAgIH07CiAKICAgICB7
Ci0gICAgICAgIExvY2tIb2xkZXIgbG9jayhXZWJBbmltYXRpb246Omluc3RhbmNlc011dGV4KCkp
OwotICAgICAgICBmb3IgKGF1dG8qIGFuaW1hdGlvbiA6IFdlYkFuaW1hdGlvbjo6aW5zdGFuY2Vz
KGxvY2spKSB7CisgICAgICAgIGZvciAoYXV0byogYW5pbWF0aW9uIDogV2ViQW5pbWF0aW9uOjpp
bnN0YW5jZXMoKSkgewogICAgICAgICAgICAgaWYgKGV4aXN0c0luQ3VycmVudFBhZ2UoYW5pbWF0
aW9uLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpKQogICAgICAgICAgICAgICAgIGJpbmRBbmlt
YXRpb24oKmFuaW1hdGlvbiwgZmFsc2UpOwogICAgICAgICB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>