<?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>225183</bug_id>
          
          <creation_ts>2021-04-28 20:23:37 -0700</creation_ts>
          <short_desc>Handle case where decoding of image lead to an empty one.</short_desc>
          <delta_ts>2021-05-20 02:25: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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <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>225999</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Jean-Yves Avenard [:jya]">jean-yves.avenard</reporter>
          <assigned_to name="Jean-Yves Avenard [:jya]">jean-yves.avenard</assigned_to>
          <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1755296</commentid>
    <comment_count>0</comment_count>
    <who name="Jean-Yves Avenard [:jya]">jean-yves.avenard</who>
    <bug_when>2021-04-28 20:23:37 -0700</bug_when>
    <thetext>Handle case where decoding of image lead to an empty one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1755297</commentid>
    <comment_count>1</comment_count>
    <who name="Jean-Yves Avenard [:jya]">jean-yves.avenard</who>
    <bug_when>2021-04-28 20:25:22 -0700</bug_when>
    <thetext>rdar://77251937</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1755300</commentid>
    <comment_count>2</comment_count>
      <attachid>427327</attachid>
    <who name="Jean-Yves Avenard [:jya]">jean-yves.avenard</who>
    <bug_when>2021-04-28 20:48:00 -0700</bug_when>
    <thetext>Created attachment 427327
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1755302</commentid>
    <comment_count>3</comment_count>
      <attachid>427328</attachid>
    <who name="Jean-Yves Avenard [:jya]">jean-yves.avenard</who>
    <bug_when>2021-04-28 21:10:42 -0700</bug_when>
    <thetext>Created attachment 427328
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1755434</commentid>
    <comment_count>4</comment_count>
      <attachid>427328</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2021-04-29 10:09:57 -0700</bug_when>
    <thetext>Comment on attachment 427328
Patch

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

&gt; Source/WebCore/Modules/mediasession/MediaMetadata.cpp:184
&gt; +            // Empty image; ignore.

Nit: I don&apos;t think this comment is necessary.

&gt; Source/WebCore/html/MediaElementSession.cpp:1160
&gt; +            ASSERT(sessionMetadata-&gt;artworkImage()-&gt;data());
&gt;              artwork = NowPlayingInfoArtwork { sessionMetadata-&gt;artworkSrc(), sessionMetadata-&gt;artworkImage()-&gt;mimeType(), sessionMetadata-&gt;artworkImage()-&gt;data() };

Is there any reason to create the artwork if `sessionMetadata-&gt;artworkImage()-&gt;data()` is NULL?

&gt; Source/WebCore/platform/audio/cocoa/MediaSessionManagerCocoa.mm:314
&gt; +        ASSERT(nowPlayingInfo.artwork-&gt;imageData);
&gt;          auto nsArtwork = nowPlayingInfo.artwork-&gt;imageData-&gt;createNSData();

This will crash in a release build, so either the assert isn&apos;t necessary or we should not try to create the artwork if the image data is NULL.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1755595</commentid>
    <comment_count>5</comment_count>
      <attachid>427328</attachid>
    <who name="Jean-Yves Avenard [:jya]">jean-yves.avenard</who>
    <bug_when>2021-04-29 17:26:55 -0700</bug_when>
    <thetext>Comment on attachment 427328
Patch

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

&gt;&gt; Source/WebCore/html/MediaElementSession.cpp:1160
&gt;&gt;              artwork = NowPlayingInfoArtwork { sessionMetadata-&gt;artworkSrc(), sessionMetadata-&gt;artworkImage()-&gt;mimeType(), sessionMetadata-&gt;artworkImage()-&gt;data() };
&gt; 
&gt; Is there any reason to create the artwork if `sessionMetadata-&gt;artworkImage()-&gt;data()` is NULL?

This is the point of the assert. An Image received here *must* have a SharedBuffer attached. It is an error if there&apos;s not.

This is the core of the change.

But Jer suggested I use a Ref rather than a RefPtr in NowPlayingInfoArtwork structure, however the code relies on the ability to set the value to a null pointer to indicate that the cached image should be used instead. So it would need to be made an Optional&lt;Ref&lt;SharedBuffer&gt;&gt; which is pretty much what a RefPtr is.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1755604</commentid>
    <comment_count>6</comment_count>
      <attachid>427393</attachid>
    <who name="Jean-Yves Avenard [:jya]">jean-yves.avenard</who>
    <bug_when>2021-04-29 17:57:15 -0700</bug_when>
    <thetext>Created attachment 427393
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1755610</commentid>
    <comment_count>7</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-29 18:42:27 -0700</bug_when>
    <thetext>Committed r276827 (237182@main): &lt;https://commits.webkit.org/237182@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 427393.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1755677</commentid>
    <comment_count>8</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2021-04-30 07:49:37 -0700</bug_when>
    <thetext>(In reply to Jean-Yves Avenard [:jya] from comment #5)
&gt; Comment on attachment 427328 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=427328&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebCore/html/MediaElementSession.cpp:1160
&gt; &gt;&gt;              artwork = NowPlayingInfoArtwork { sessionMetadata-&gt;artworkSrc(), sessionMetadata-&gt;artworkImage()-&gt;mimeType(), sessionMetadata-&gt;artworkImage()-&gt;data() };
&gt; &gt; 
&gt; &gt; Is there any reason to create the artwork if `sessionMetadata-&gt;artworkImage()-&gt;data()` is NULL?
&gt; 
&gt; This is the point of the assert. An Image received here *must* have a
&gt; SharedBuffer attached. It is an error if there&apos;s not.
&gt; 
&gt; This is the core of the change.

Right. My point was that NowPlayingInfoArtwork without image data is useless, ASSERTing in a debug build is good but why create the NowPlayingInfoArtwork in a release build?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1755829</commentid>
    <comment_count>9</comment_count>
      <attachid>427328</attachid>
    <who name="Jean-Yves Avenard [:jya]">jean-yves.avenard</who>
    <bug_when>2021-04-30 15:19:16 -0700</bug_when>
    <thetext>Comment on attachment 427328
Patch

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

&gt;&gt;&gt;&gt; Source/WebCore/html/MediaElementSession.cpp:1160
&gt;&gt;&gt;&gt;              artwork = NowPlayingInfoArtwork { sessionMetadata-&gt;artworkSrc(), sessionMetadata-&gt;artworkImage()-&gt;mimeType(), sessionMetadata-&gt;artworkImage()-&gt;data() };
&gt;&gt;&gt; 
&gt;&gt;&gt; Is there any reason to create the artwork if `sessionMetadata-&gt;artworkImage()-&gt;data()` is NULL?
&gt;&gt; 
&gt;&gt; This is the point of the assert. An Image received here *must* have a SharedBuffer attached. It is an error if there&apos;s not.
&gt;&gt; 
&gt;&gt; This is the core of the change.
&gt;&gt; 
&gt;&gt; But Jer suggested I use a Ref rather than a RefPtr in NowPlayingInfoArtwork structure, however the code relies on the ability to set the value to a null pointer to indicate that the cached image should be used instead. So it would need to be made an Optional&lt;Ref&lt;SharedBuffer&gt;&gt; which is pretty much what a RefPtr is.
&gt; 
&gt; Right. My point was that NowPlayingInfoArtwork without image data is useless, ASSERTing in a debug build is good but why create the NowPlayingInfoArtwork in a release build?

And it won’t be. As artwork will not be set if the image as no data following this change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1755865</commentid>
    <comment_count>10</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2021-04-30 16:40:25 -0700</bug_when>
    <thetext>(In reply to Jean-Yves Avenard [:jya] from comment #9)
&gt; &gt; Right. My point was that NowPlayingInfoArtwork without image data is useless, ASSERTing in a debug build is good but why create the NowPlayingInfoArtwork in a release build?
&gt; 
&gt; And it won’t be. As artwork will not be set if the image as no data
&gt; following this change.

Sorry, I am not being very clear.

I was trying to say that there is no need to create the `Optional&lt;NowPlayingInfoArtwork&gt;` if we don&apos;t have image data, because that means we will also serialize and then deserialize it only to find out we can&apos;t use it.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427327</attachid>
            <date>2021-04-28 20:48:00 -0700</date>
            <delta_ts>2021-04-28 21:10:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225183-20210429134758.patch</filename>
            <type>text/plain</type>
            <size>1730</size>
            <attacher name="Jean-Yves Avenard [:jya]">jean-yves.avenard</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2NzQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjMwNmJmNGRlN2VlYTUy
NzU2MGQyMGI3YjU3ZjFkZDZkZmM0MjQ4ZS4uOTk2OTA1ODViZjhiZGI4OTM4Yzk2MjhmMjRmMDAz
ZTFlNGQxOGZmYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTA0LTI4ICBKZWFu
LVl2ZXMgQXZlbmFyZCAgPGp5YUBhcHBsZS5jb20+CisKKyAgICAgICAgSGFuZGxlIGNhc2Ugd2hl
cmUgZGVjb2Rpbmcgb2YgaW1hZ2UgbGVhZCB0byBhbiBlbXB0eSBvbmUuCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjUxODMKKyAgICAgICAgcmRhcjov
Lzc3MjUxOTM3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgVW5kZXIgc29tZSBjaXJjdW1zdGFuY2VzLCB0aGUgZGVjb2RlZCBpbWFnZSBtYXkgZW5kIHVw
IGJlaW5nIGVtcHR5LiBXZSBuZWVkIHRvIGhhbmRsZSB0aGlzIGNhc2UuCisKKyAgICAgICAgKiBN
b2R1bGVzL21lZGlhc2Vzc2lvbi9NZWRpYU1ldGFkYXRhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
Ok1lZGlhTWV0YWRhdGE6OnJlZnJlc2hBcnR3b3JrSW1hZ2UpOiBDaGVjayBpZiB0aGUgaW1hZ2Un
cyBkYXRhIGJ1ZmZlciBpc24ndCBudWxsLCByZXR1cm4gZWFybHkgaWYgaXQgaXMuCisKIDIwMjEt
MDQtMjggIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBDcmFzaCB1
bmRlciBXZWJDb3JlOjpBdWRpb05vZGVPdXRwdXQ6OnB1bGwoV2ViQ29yZTo6QXVkaW9CdXMqLCB1
bnNpZ25lZCBsb25nKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNl
c3Npb24vTWVkaWFNZXRhZGF0YS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc2Vz
c2lvbi9NZWRpYU1ldGFkYXRhLmNwcAppbmRleCAzNDZiMjdhYmExNzE3MzhjYjQzOWQ0ZjE5MmNl
YTkzMDUwNGFmNDhmLi41YzBiOTJjMWI1NDJkZGQwNDIwYzQ5YjE5MzMwZTMyZWYzYmE1Y2FmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc2Vzc2lvbi9NZWRpYU1ldGFk
YXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc2Vzc2lvbi9NZWRpYU1l
dGFkYXRhLmNwcApAQCAtMTgwLDYgKzE4MCwxMCBAQCB2b2lkIE1lZGlhTWV0YWRhdGE6OnJlZnJl
c2hBcnR3b3JrSW1hZ2UoKQogICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgYSBoZXVyaXN0aWMgdG8g
cmV0cmlldmUgdGhlICJiZXN0IiBpbWFnZS4KICAgICBtX2FydHdvcmtJbWFnZVNyYyA9IG1lZGlh
SW1hZ2VzWzBdLnNyYzsKICAgICBtX2FydHdvcmtMb2FkZXIgPSBtYWtlVW5pcXVlPEFydHdvcmtJ
bWFnZUxvYWRlcj4oKm1fc2Vzc2lvbi0+ZG9jdW1lbnQoKSwgbV9hcnR3b3JrSW1hZ2VTcmMsIFt0
aGlzXShJbWFnZSogaW1hZ2UpIHsKKyAgICAgICAgaWYgKCFpbWFnZS0+ZGF0YSgpKSB7CisgICAg
ICAgICAgICAvLyBFbXB0eSBpbWFnZTsgaWdub3JlLgorICAgICAgICAgICAgcmV0dXJuOworICAg
ICAgICB9CiAgICAgICAgIHNldEFydHdvcmtJbWFnZShpbWFnZSk7CiAgICAgICAgIG1ldGFkYXRh
VXBkYXRlZCgpOwogICAgIH0pOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427328</attachid>
            <date>2021-04-28 21:10:42 -0700</date>
            <delta_ts>2021-04-29 17:57:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225183-20210429141041.patch</filename>
            <type>text/plain</type>
            <size>3960</size>
            <attacher name="Jean-Yves Avenard [:jya]">jean-yves.avenard</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2NzQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjMwNmJmNGRlN2VlYTUy
NzU2MGQyMGI3YjU3ZjFkZDZkZmM0MjQ4ZS4uMzljODQzOWRjZDBmOTZlOWJiNmU4ZDAwYzZkN2E2
YTFiMzQ5NjE5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDIxLTA0LTI4ICBKZWFu
LVl2ZXMgQXZlbmFyZCAgPGp5YUBhcHBsZS5jb20+CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjUxODMKKyAgICAgICAgcmRhcjovLzc3MjUxOTM3CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVW5kZXIgc29t
ZSBjaXJjdW1zdGFuY2VzLCB0aGUgZGVjb2RlZCBpbWFnZSBtYXkgZW5kIHVwIGJlaW5nIGVtcHR5
LiBXZSBuZWVkIHRvIGhhbmRsZSB0aGlzIGNhc2UuCisgCisgICAgICAgICogTW9kdWxlcy9tZWRp
YXNlc3Npb24vTWVkaWFNZXRhZGF0YS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYU1ldGFk
YXRhOjpyZWZyZXNoQXJ0d29ya0ltYWdlKTogRXhpdCBlYXJseSBpZiBpbWFnZSBpcyBlbXB0eS4K
KyAgICAgICAgKiBodG1sL01lZGlhRWxlbWVudFNlc3Npb24uY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6TWVkaWFFbGVtZW50U2Vzc2lvbjo6bm93UGxheWluZ0luZm8gY29uc3QpOiBBZGQgYXNzZXJ0
IHRvIGNsYXJpZnkgY29kZQorICAgICAgICAqIHBsYXRmb3JtL2F1ZGlvL2NvY29hL01lZGlhU2Vz
c2lvbk1hbmFnZXJDb2NvYS5tbToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU2Vzc2lvbk1hbmFn
ZXJDb2NvYTo6c2V0Tm93UGxheWluZ0luZm8pOiBBZGQgYXNzZXJ0IHRvIGNsYXJpZnkgY29kZQor
CiAyMDIxLTA0LTI4ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAg
Q3Jhc2ggdW5kZXIgV2ViQ29yZTo6QXVkaW9Ob2RlT3V0cHV0OjpwdWxsKFdlYkNvcmU6OkF1ZGlv
QnVzKiwgdW5zaWduZWQgbG9uZykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bWVkaWFzZXNzaW9uL01lZGlhTWV0YWRhdGEuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXNlc3Npb24vTWVkaWFNZXRhZGF0YS5jcHAKaW5kZXggMzQ2YjI3YWJhMTcxNzM4Y2I0Mzlk
NGYxOTJjZWE5MzA1MDRhZjQ4Zi4uNWMwYjkyYzFiNTQyZGRkMDQyMGM0OWIxOTMzMGUzMmVmM2Jh
NWNhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNlc3Npb24vTWVk
aWFNZXRhZGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNlc3Npb24v
TWVkaWFNZXRhZGF0YS5jcHAKQEAgLTE4MCw2ICsxODAsMTAgQEAgdm9pZCBNZWRpYU1ldGFkYXRh
OjpyZWZyZXNoQXJ0d29ya0ltYWdlKCkKICAgICAvLyBGSVhNRTogSW1wbGVtZW50IGEgaGV1cmlz
dGljIHRvIHJldHJpZXZlIHRoZSAiYmVzdCIgaW1hZ2UuCiAgICAgbV9hcnR3b3JrSW1hZ2VTcmMg
PSBtZWRpYUltYWdlc1swXS5zcmM7CiAgICAgbV9hcnR3b3JrTG9hZGVyID0gbWFrZVVuaXF1ZTxB
cnR3b3JrSW1hZ2VMb2FkZXI+KCptX3Nlc3Npb24tPmRvY3VtZW50KCksIG1fYXJ0d29ya0ltYWdl
U3JjLCBbdGhpc10oSW1hZ2UqIGltYWdlKSB7CisgICAgICAgIGlmICghaW1hZ2UtPmRhdGEoKSkg
eworICAgICAgICAgICAgLy8gRW1wdHkgaW1hZ2U7IGlnbm9yZS4KKyAgICAgICAgICAgIHJldHVy
bjsKKyAgICAgICAgfQogICAgICAgICBzZXRBcnR3b3JrSW1hZ2UoaW1hZ2UpOwogICAgICAgICBt
ZXRhZGF0YVVwZGF0ZWQoKTsKICAgICB9KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvTWVkaWFFbGVtZW50U2Vzc2lvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL01lZGlhRWxl
bWVudFNlc3Npb24uY3BwCmluZGV4IDVhY2Y3ODQ3NjViMmU5Yzg1NDVmYTQ0MDQzZTgzN2JjYjQ4
MWE1OGEuLjQzMTVlNDcxZDg0NjA0YTJmODNhNzliMmY4MGE4Yzg2OGI3OTQxY2MgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvTWVkaWFFbGVtZW50U2Vzc2lvbi5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9NZWRpYUVsZW1lbnRTZXNzaW9uLmNwcApAQCAtMTE1Niw2ICsxMTU2
LDcgQEAgT3B0aW9uYWw8Tm93UGxheWluZ0luZm8+IE1lZGlhRWxlbWVudFNlc3Npb246Om5vd1Bs
YXlpbmdJbmZvKCkgY29uc3QKICAgICBpZiAoc2Vzc2lvbk1ldGFkYXRhKSB7CiAgICAgICAgIE9w
dGlvbmFsPE5vd1BsYXlpbmdJbmZvQXJ0d29yaz4gYXJ0d29yazsKICAgICAgICAgaWYgKHNlc3Np
b25NZXRhZGF0YS0+YXJ0d29ya0ltYWdlKCkpIHsKKyAgICAgICAgICAgIEFTU0VSVChzZXNzaW9u
TWV0YWRhdGEtPmFydHdvcmtJbWFnZSgpLT5kYXRhKCkpOwogICAgICAgICAgICAgYXJ0d29yayA9
IE5vd1BsYXlpbmdJbmZvQXJ0d29yayB7IHNlc3Npb25NZXRhZGF0YS0+YXJ0d29ya1NyYygpLCBz
ZXNzaW9uTWV0YWRhdGEtPmFydHdvcmtJbWFnZSgpLT5taW1lVHlwZSgpLCBzZXNzaW9uTWV0YWRh
dGEtPmFydHdvcmtJbWFnZSgpLT5kYXRhKCkgfTsKICAgICAgICAgfQogICAgICAgICByZXR1cm4g
Tm93UGxheWluZ0luZm8geyBzZXNzaW9uTWV0YWRhdGEtPnRpdGxlKCksIHNlc3Npb25NZXRhZGF0
YS0+YXJ0aXN0KCksIHNlc3Npb25NZXRhZGF0YS0+YWxidW0oKSwgbV9lbGVtZW50LnNvdXJjZUFw
cGxpY2F0aW9uSWRlbnRpZmllcigpLCBkdXJhdGlvbiwgY3VycmVudFRpbWUsIHN1cHBvcnRzU2Vl
a2luZywgbV9lbGVtZW50Lm1lZGlhVW5pcXVlSWRlbnRpZmllcigpLCBpc1BsYXlpbmcsIGFsbG93
c05vd1BsYXlpbmdDb250cm9sc1Zpc2liaWxpdHksIFdURk1vdmUoYXJ0d29yaykgfTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL2NvY29hL01lZGlhU2Vzc2lvbk1h
bmFnZXJDb2NvYS5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL2NvY29hL01lZGlh
U2Vzc2lvbk1hbmFnZXJDb2NvYS5tbQppbmRleCA1NzI0OGM2YjZhNWMyZDEwZjg1NjlmMDgwYjk1
ZmI3YTEyZDk5NTAzLi44NTM0NTU3MGQ3OTc0NzUxY2QyZjI1YjFkMDIwZGI2NmNlYTlmNTRkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9jb2NvYS9NZWRpYVNlc3Np
b25NYW5hZ2VyQ29jb2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vY29j
b2EvTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLm1tCkBAIC0zMTAsNiArMzEwLDcgQEAgdm9pZCBN
ZWRpYVNlc3Npb25NYW5hZ2VyQ29jb2E6OnNldE5vd1BsYXlpbmdJbmZvKGJvb2wgc2V0QXNOb3dQ
bGF5aW5nQXBwbGljYXRpb24KICAgICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUoaW5mby5nZXQo
KSwga01STWVkaWFSZW1vdGVOb3dQbGF5aW5nSW5mb0VsYXBzZWRUaW1lLCBjZkN1cnJlbnRUaW1l
LmdldCgpKTsKICAgICB9CiAgICAgaWYgKG5vd1BsYXlpbmdJbmZvLmFydHdvcmspIHsKKyAgICAg
ICAgQVNTRVJUKG5vd1BsYXlpbmdJbmZvLmFydHdvcmstPmltYWdlRGF0YSk7CiAgICAgICAgIGF1
dG8gbnNBcnR3b3JrID0gbm93UGxheWluZ0luZm8uYXJ0d29yay0+aW1hZ2VEYXRhLT5jcmVhdGVO
U0RhdGEoKTsKICAgICAgICAgQ0ZEaWN0aW9uYXJ5U2V0VmFsdWUoaW5mby5nZXQoKSwga01STWVk
aWFSZW1vdGVOb3dQbGF5aW5nSW5mb0FydHdvcmtEYXRhLCBuc0FydHdvcmsuZ2V0KCkpOwogICAg
ICAgICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShpbmZvLmdldCgpLCBrTVJNZWRpYVJlbW90ZU5vd1Bs
YXlpbmdJbmZvQXJ0d29ya01JTUVUeXBlLCBub3dQbGF5aW5nSW5mby5hcnR3b3JrLT5taW1lVHlw
ZS5jcmVhdGVDRlN0cmluZygpLmdldCgpKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427393</attachid>
            <date>2021-04-29 17:57:15 -0700</date>
            <delta_ts>2021-04-29 18:42:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225183-20210430105713.patch</filename>
            <type>text/plain</type>
            <size>2796</size>
            <attacher name="Jean-Yves Avenard [:jya]">jean-yves.avenard</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2NzQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjMwNmJmNGRlN2VlYTUy
NzU2MGQyMGI3YjU3ZjFkZDZkZmM0MjQ4ZS4uZWQ1N2E3MzEwOTFlMjcxZjc0MjJkYTU1ZWJiM2E4
YzU3NjEwOGVlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTA0LTI4ICBKZWFu
LVl2ZXMgQXZlbmFyZCAgPGp5YUBhcHBsZS5jb20+CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjUxODMKKyAgICAgICAgcmRhcjovLzc3MjUxOTM3CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBDYXJsc29uLgorCisgICAgICAgIFVuZGVyIHNvbWUg
Y2lyY3Vtc3RhbmNlcywgdGhlIGRlY29kZWQgaW1hZ2UgbWF5IGVuZCB1cCBiZWluZyBlbXB0eS4g
V2UgbmVlZCB0byBoYW5kbGUgdGhpcyBjYXNlLgorCisgICAgICAgICogTW9kdWxlcy9tZWRpYXNl
c3Npb24vTWVkaWFNZXRhZGF0YS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYU1ldGFkYXRh
OjpyZWZyZXNoQXJ0d29ya0ltYWdlKTogRXhpdCBlYXJseSBpZiBpbWFnZSBpcyBlbXB0eS4KKyAg
ICAgICAgKiBodG1sL01lZGlhRWxlbWVudFNlc3Npb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6
TWVkaWFFbGVtZW50U2Vzc2lvbjo6bm93UGxheWluZ0luZm8gY29uc3QpOiBBZGQgYXNzZXJ0IHRv
IGNsYXJpZnkgY29kZQorCiAyMDIxLTA0LTI4ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5j
b20+CiAKICAgICAgICAgQ3Jhc2ggdW5kZXIgV2ViQ29yZTo6QXVkaW9Ob2RlT3V0cHV0OjpwdWxs
KFdlYkNvcmU6OkF1ZGlvQnVzKiwgdW5zaWduZWQgbG9uZykKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzZXNzaW9uL01lZGlhTWV0YWRhdGEuY3BwIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXNlc3Npb24vTWVkaWFNZXRhZGF0YS5jcHAKaW5kZXggMzQ2YjI3
YWJhMTcxNzM4Y2I0MzlkNGYxOTJjZWE5MzA1MDRhZjQ4Zi4uMmEyYTBjNTQyNmQxZThhZmE3NmUy
NTU4ZjYzM2M4OWZjODBjNGQ5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXNlc3Npb24vTWVkaWFNZXRhZGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXNlc3Npb24vTWVkaWFNZXRhZGF0YS5jcHAKQEAgLTE4MCw2ICsxODAsOCBAQCB2b2lk
IE1lZGlhTWV0YWRhdGE6OnJlZnJlc2hBcnR3b3JrSW1hZ2UoKQogICAgIC8vIEZJWE1FOiBJbXBs
ZW1lbnQgYSBoZXVyaXN0aWMgdG8gcmV0cmlldmUgdGhlICJiZXN0IiBpbWFnZS4KICAgICBtX2Fy
dHdvcmtJbWFnZVNyYyA9IG1lZGlhSW1hZ2VzWzBdLnNyYzsKICAgICBtX2FydHdvcmtMb2FkZXIg
PSBtYWtlVW5pcXVlPEFydHdvcmtJbWFnZUxvYWRlcj4oKm1fc2Vzc2lvbi0+ZG9jdW1lbnQoKSwg
bV9hcnR3b3JrSW1hZ2VTcmMsIFt0aGlzXShJbWFnZSogaW1hZ2UpIHsKKyAgICAgICAgaWYgKCFp
bWFnZS0+ZGF0YSgpKQorICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICBzZXRBcnR3b3JrSW1h
Z2UoaW1hZ2UpOwogICAgICAgICBtZXRhZGF0YVVwZGF0ZWQoKTsKICAgICB9KTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvTWVkaWFFbGVtZW50U2Vzc2lvbi5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL01lZGlhRWxlbWVudFNlc3Npb24uY3BwCmluZGV4IDVhY2Y3ODQ3NjViMmU5
Yzg1NDVmYTQ0MDQzZTgzN2JjYjQ4MWE1OGEuLjA5NjBiZDA3NmQzMmEyYmQ0N2JhMmM3MTM3NWJk
MjJlN2VmODBkNDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvTWVkaWFFbGVtZW50
U2Vzc2lvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9NZWRpYUVsZW1lbnRTZXNzaW9u
LmNwcApAQCAtMTE1Niw2ICsxMTU2LDcgQEAgT3B0aW9uYWw8Tm93UGxheWluZ0luZm8+IE1lZGlh
RWxlbWVudFNlc3Npb246Om5vd1BsYXlpbmdJbmZvKCkgY29uc3QKICAgICBpZiAoc2Vzc2lvbk1l
dGFkYXRhKSB7CiAgICAgICAgIE9wdGlvbmFsPE5vd1BsYXlpbmdJbmZvQXJ0d29yaz4gYXJ0d29y
azsKICAgICAgICAgaWYgKHNlc3Npb25NZXRhZGF0YS0+YXJ0d29ya0ltYWdlKCkpIHsKKyAgICAg
ICAgICAgIEFTU0VSVChzZXNzaW9uTWV0YWRhdGEtPmFydHdvcmtJbWFnZSgpLT5kYXRhKCksICJB
biBpbWFnZSBtdXN0IGFsd2F5cyBoYXZlIGFzc29jaWF0ZWQgZGF0YSIpOwogICAgICAgICAgICAg
YXJ0d29yayA9IE5vd1BsYXlpbmdJbmZvQXJ0d29yayB7IHNlc3Npb25NZXRhZGF0YS0+YXJ0d29y
a1NyYygpLCBzZXNzaW9uTWV0YWRhdGEtPmFydHdvcmtJbWFnZSgpLT5taW1lVHlwZSgpLCBzZXNz
aW9uTWV0YWRhdGEtPmFydHdvcmtJbWFnZSgpLT5kYXRhKCkgfTsKICAgICAgICAgfQogICAgICAg
ICByZXR1cm4gTm93UGxheWluZ0luZm8geyBzZXNzaW9uTWV0YWRhdGEtPnRpdGxlKCksIHNlc3Np
b25NZXRhZGF0YS0+YXJ0aXN0KCksIHNlc3Npb25NZXRhZGF0YS0+YWxidW0oKSwgbV9lbGVtZW50
LnNvdXJjZUFwcGxpY2F0aW9uSWRlbnRpZmllcigpLCBkdXJhdGlvbiwgY3VycmVudFRpbWUsIHN1
cHBvcnRzU2Vla2luZywgbV9lbGVtZW50Lm1lZGlhVW5pcXVlSWRlbnRpZmllcigpLCBpc1BsYXlp
bmcsIGFsbG93c05vd1BsYXlpbmdDb250cm9sc1Zpc2liaWxpdHksIFdURk1vdmUoYXJ0d29yaykg
fTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>