<?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>224019</bug_id>
          
          <creation_ts>2021-03-31 14:22:16 -0700</creation_ts>
          <short_desc>List of extents should be bounds-checked when iterating display list items</short_desc>
          <delta_ts>2021-03-31 18:39:42 -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>WebKit2</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="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>kkinnunen</cc>
    
    <cc>sabouhallawa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1745779</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-03-31 14:22:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/71851600&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1745809</commentid>
    <comment_count>1</comment_count>
      <attachid>424828</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-03-31 15:17:31 -0700</bug_when>
    <thetext>Created attachment 424828
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1745810</commentid>
    <comment_count>2</comment_count>
      <attachid>424828</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-03-31 15:21:55 -0700</bug_when>
    <thetext>Comment on attachment 424828
Patch

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

&gt; Tools/TestWebKitAPI/Tests/WebCore/cg/DisplayListTestsCG.cpp:135
&gt; -    EXPECT_EQ(result.reasonForStopping, StopReplayReason::InvalidItem);
&gt; +    EXPECT_EQ(result.reasonForStopping, StopReplayReason::InvalidItemOrExtent);

Neither of these tests the extent validation, right? Is it possible to write a test?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1745815</commentid>
    <comment_count>3</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-03-31 15:27:11 -0700</bug_when>
    <thetext>(In reply to Tim Horton from comment #2)
&gt; Comment on attachment 424828 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=424828&amp;action=review
&gt; 
&gt; &gt; Tools/TestWebKitAPI/Tests/WebCore/cg/DisplayListTestsCG.cpp:135
&gt; &gt; -    EXPECT_EQ(result.reasonForStopping, StopReplayReason::InvalidItem);
&gt; &gt; +    EXPECT_EQ(result.reasonForStopping, StopReplayReason::InvalidItemOrExtent);
&gt; 
&gt; Neither of these tests the extent validation, right? Is it possible to write
&gt; a test?

Thanks for the review!

As it turns out, I tried to write a test but unfortunately I don&apos;t think it&apos;s possible unless I expose `DisplayList::addDrawingItemExtent` as a public method (but that test would be a bit contrived anyways :P).

Using just the public interfaces of DisplayList, when appending a drawing item to a display list, we&apos;ll always keep the drawing item extents in sync. I also thought of perhaps enabling drawing extent tracking halfway through appending display list items, but then recalled that doing so would simply trip the release assertion that I adjusted slightly in this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1745905</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-03-31 18:39:41 -0700</bug_when>
    <thetext>Committed r275334: &lt;https://commits.webkit.org/r275334&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 424828.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>424828</attachid>
            <date>2021-03-31 15:17:31 -0700</date>
            <delta_ts>2021-03-31 18:39:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224019-20210331151731.patch</filename>
            <type>text/plain</type>
            <size>11182</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1Mjk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmRkZmQ5YTc0ODNkMWUx
ZDA0ZTlmMTg5MzM4ZDg3ZjVkNGY0OTMwZS4uZTYyMzk5YjgxY2JhNTliZjUxODQ2YTBhNTY0M2E1
NmNjZWZlZjE5NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIxLTAzLTMxICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIExpc3Qgb2YgZXh0
ZW50cyBzaG91bGQgYmUgYm91bmRzLWNoZWNrZWQgd2hlbiBpdGVyYXRpbmcgZGlzcGxheSBsaXN0
IGl0ZW1zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MjQwMTkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzcxODUxNjAwPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhIGJvdW5kcyBjaGVjayBiZWZv
cmUgYXR0ZW1wdGluZyB0byBhY2Nlc3MgdGhlIHZlY3RvciBvZiBkaXNwbGF5IGxpc3QgZHJhd2lu
ZyBpdGVtIGV4dGVudHMuIEluIHRoZSBjYXNlCisgICAgICAgIHdoZXJlIHdlIHdvdWxkJ3ZlIG90
aGVyd2lzZSBhdHRlbXB0ZWQgdG8gYWNjZXNzIGFuIG91dC1vZi1ib3VuZHMgaXRlbSwgd2UgaW5z
dGVhZCBmbGFnIG91cnNlbHZlcyBhcyBpbnZhbGlkIGFuZAorICAgICAgICBzdG9wIGVhcmx5IHdp
dGggYFN0b3BSZXBsYXlSZWFzb246OkludmFsaWRJdGVtT3JFeHRlbnRgLgorCisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpEaXNwbGF5TGlzdDo6c2V0VHJhY2tzRHJhd2luZ0l0ZW1F
eHRlbnRzKToKKworICAgICAgICBEcml2ZS1ieSBmaXg6IHVzZSBgaXNFbXB0eSgpYCBpbiB0aGUg
cmVsZWFzZSBhc3NlcnRpb24gaW5zdGVhZCBvZiBkdXBsaWNhdGluZyBjb2RlLgorCisgICAgICAg
IChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6RGlzcGxheUxpc3Q6Oml0ZXJhdG9yOjp1cGRhdGVDdXJy
ZW50RHJhd2luZ0l0ZW1FeHRlbnQpOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OkRp
c3BsYXlMaXN0OjppdGVyYXRvcjo6dXBkYXRlQ3VycmVudEl0ZW0pOgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdC5oOgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlcGxheWVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpSZXBsYXllcjo6YXBwbHlJdGVtKToKKyAgICAgICAg
KFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpSZXBsYXllcjo6cmVwbGF5KToKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZXBsYXllci5oOgorCisgICAg
ICAgIFJlbmFtZSB0aGUgYFN0b3BSZXBsYXlSZWFzb246OkludmFsaWRJdGVtYCB0byBgU3RvcFJl
cGxheVJlYXNvbjo6SW52YWxpZEl0ZW1PckV4dGVudGAsIHRvIHJlZmxlY3QgdGhhdCB3ZSBtYXkK
KyAgICAgICAgYWxzbyBzdG9wIHJlcGxheSB3aGVuIGVuY291bnRlcmluZyBpbnZhbGlkIGl0ZW0g
ZXh0ZW50cy4KKwogMjAyMS0wMy0zMSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3
ZWJraXQub3JnPgogCiAgICAgICAgIEFkZCBkZXByZWNhdGlvbiBtYWNyb3MuCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4
IDVjYjcyOWJkNjg1ZDZiMTMzNmIyMTU5Y2JlYWNlMzAzMDg1OTE0ZGQuLjZmYjkxZDkwZmRjYmY1
NDBhMjc3NTU5YTZiOWQ3YmNkZjIxZWRkMzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hh
bmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIw
MjEtMDMtMzEgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAg
ICAgTGlzdCBvZiBleHRlbnRzIHNob3VsZCBiZSBib3VuZHMtY2hlY2tlZCB3aGVuIGl0ZXJhdGlu
ZyBkaXNwbGF5IGxpc3QgaXRlbXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIyNDAxOQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzE4NTE2MDA+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVuYW1lIGBJ
bnZhbGlkSXRlbWAgdG8gYEludmFsaWRJdGVtT3JFeHRlbnRgLgorCisgICAgICAgICogR1BVUHJv
Y2Vzcy9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6UmVtb3RlUmVuZGVyaW5nQmFja2VuZDo6bmV4dERlc3RpbmF0aW9uSW1hZ2VCdWZmZXJBZnRl
ckFwcGx5aW5nRGlzcGxheUxpc3RzKToKKwogMjAyMS0wMy0zMSAgV2Vuc29uIEhzaWVoICA8d2Vu
c29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXSBVcGRhdGUgYSBjb3VwbGUgb2Yg
aWNvbnMgaW4gdGhlIGZpbGUgdXBsb2FkIGNvbnRleHQgbWVudQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlz
dC5jcHAKaW5kZXggMTc5NzBkMDEyYjkxZGUwMjNhNjk3MTI2M2VkZDhmZTI0YzhjNjAxZC4uMWFj
MGY2NDJiYTMzYTczNTA0YmU5MGUyMTk1MzdjMTAyM2FiOTUwNCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxh
eUxpc3QuY3BwCkBAIC0xODIsNyArMTgyLDcgQEAgdm9pZCBEaXNwbGF5TGlzdDo6Zm9yRWFjaEl0
ZW1CdWZmZXIoRnVuY3Rpb248dm9pZChjb25zdCBJdGVtQnVmZmVySGFuZGxlJik+JiYgbWEKIAog
dm9pZCBEaXNwbGF5TGlzdDo6c2V0VHJhY2tzRHJhd2luZ0l0ZW1FeHRlbnRzKGJvb2wgdmFsdWUp
CiB7Ci0gICAgUkVMRUFTRV9BU1NFUlQoIW1faXRlbXMgfHwgbV9pdGVtcy0+aXNFbXB0eSgpKTsK
KyAgICBSRUxFQVNFX0FTU0VSVChpc0VtcHR5KCkpOwogICAgIG1fdHJhY2tzRHJhd2luZ0l0ZW1F
eHRlbnRzID0gdmFsdWU7CiB9CiAKQEAgLTMzMiw2ICszMzIsMjUgQEAgYm9vbCBEaXNwbGF5TGlz
dDo6aXRlcmF0b3I6OmF0RW5kKCkgY29uc3QKICAgICByZXR1cm4gbV9jdXJzb3IgPT0gZW5kQ3Vy
c29yOwogfQogCitEaXNwbGF5TGlzdDo6aXRlcmF0b3I6OkV4dGVudFVwZGF0ZVJlc3VsdCBEaXNw
bGF5TGlzdDo6aXRlcmF0b3I6OnVwZGF0ZUN1cnJlbnREcmF3aW5nSXRlbUV4dGVudChJdGVtVHlw
ZSBpdGVtVHlwZSkKK3sKKyAgICBhdXRvJiBleHRlbnRzID0gbV9kaXNwbGF5TGlzdC5tX2RyYXdp
bmdJdGVtRXh0ZW50czsKKyAgICBpZiAoZXh0ZW50cy5pc0VtcHR5KCkpCisgICAgICAgIHJldHVy
biBFeHRlbnRVcGRhdGVSZXN1bHQ6OlN1Y2Nlc3M7CisKKyAgICBpZiAoIWlzRHJhd2luZ0l0ZW0o
aXRlbVR5cGUpKSB7CisgICAgICAgIG1fY3VycmVudEV4dGVudCA9IFdURjo6bnVsbG9wdDsKKyAg
ICAgICAgcmV0dXJuIEV4dGVudFVwZGF0ZVJlc3VsdDo6U3VjY2VzczsKKyAgICB9CisKKyAgICBp
ZiAobV9kcmF3aW5nSXRlbUluZGV4ID49IGV4dGVudHMuc2l6ZSgpKQorICAgICAgICByZXR1cm4g
RXh0ZW50VXBkYXRlUmVzdWx0OjpGYWlsdXJlOworCisgICAgbV9jdXJyZW50RXh0ZW50ID0gZXh0
ZW50c1ttX2RyYXdpbmdJdGVtSW5kZXhdOworICAgIG1fZHJhd2luZ0l0ZW1JbmRleCsrOworICAg
IHJldHVybiBFeHRlbnRVcGRhdGVSZXN1bHQ6OlN1Y2Nlc3M7Cit9CisKIHZvaWQgRGlzcGxheUxp
c3Q6Oml0ZXJhdG9yOjp1cGRhdGVDdXJyZW50SXRlbSgpCiB7CiAgICAgY2xlYXJDdXJyZW50SXRl
bSgpOwpAQCAtMzQxLDExICszNjAsMTEgQEAgdm9pZCBEaXNwbGF5TGlzdDo6aXRlcmF0b3I6OnVw
ZGF0ZUN1cnJlbnRJdGVtKCkKIAogICAgIGF1dG8mIGl0ZW1zID0gKml0ZW1CdWZmZXIoKTsKICAg
ICBhdXRvIGl0ZW1UeXBlID0gc3RhdGljX2Nhc3Q8SXRlbVR5cGU+KG1fY3Vyc29yWzBdKTsKLSAg
ICBpZiAoaXNEcmF3aW5nSXRlbShpdGVtVHlwZSkgJiYgIW1fZGlzcGxheUxpc3QubV9kcmF3aW5n
SXRlbUV4dGVudHMuaXNFbXB0eSgpKSB7Ci0gICAgICAgIG1fY3VycmVudEV4dGVudCA9IG1fZGlz
cGxheUxpc3QubV9kcmF3aW5nSXRlbUV4dGVudHNbbV9kcmF3aW5nSXRlbUluZGV4XTsKLSAgICAg
ICAgbV9kcmF3aW5nSXRlbUluZGV4Kys7Ci0gICAgfSBlbHNlCi0gICAgICAgIG1fY3VycmVudEV4
dGVudCA9IFdURjo6bnVsbG9wdDsKKworICAgIGlmICh1cGRhdGVDdXJyZW50RHJhd2luZ0l0ZW1F
eHRlbnQoaXRlbVR5cGUpID09IEV4dGVudFVwZGF0ZVJlc3VsdDo6RmFpbHVyZSkgeworICAgICAg
ICBtX2lzVmFsaWQgPSBmYWxzZTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KIAogICAgIGF1dG8q
IGNsaWVudCA9IGl0ZW1zLm1fcmVhZGluZ0NsaWVudDsKICAgICBhdXRvIHBhZGRlZFNpemVPZlR5
cGVBbmRJdGVtID0gcGFkZGVkU2l6ZU9mVHlwZUFuZEl0ZW1JbkJ5dGVzKGl0ZW1UeXBlKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9E
aXNwbGF5TGlzdC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxp
c3RzL0Rpc3BsYXlMaXN0LmgKaW5kZXggMDEzMTMwZGMxNTE2YWQzYmJiOGFlNzY0MTQyNzkzYTk1
MWE4ZWE3YS4uODEyYmFiODNlOTU3NzhmMGM2ZmM2NDBkMmEzMjZiY2NhMmVmMjA1OSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3Bs
YXlMaXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxp
c3RzL0Rpc3BsYXlMaXN0LmgKQEAgLTE0MCw2ICsxNDAsMTAgQEAgcHVibGljOgogICAgICAgICBX
RUJDT1JFX0VYUE9SVCB2b2lkIGNsZWFyQ3VycmVudEl0ZW0oKTsKICAgICAgICAgV0VCQ09SRV9F
WFBPUlQgdm9pZCB1cGRhdGVDdXJyZW50SXRlbSgpOwogICAgICAgICBXRUJDT1JFX0VYUE9SVCB2
b2lkIGFkdmFuY2UoKTsKKworICAgICAgICBlbnVtIGNsYXNzIEV4dGVudFVwZGF0ZVJlc3VsdCA6
IGJvb2wgeyBGYWlsdXJlLCBTdWNjZXNzIH07CisgICAgICAgIEV4dGVudFVwZGF0ZVJlc3VsdCB1
cGRhdGVDdXJyZW50RHJhd2luZ0l0ZW1FeHRlbnQoSXRlbVR5cGUpOworCiAgICAgICAgIGJvb2wg
YXRFbmQoKSBjb25zdDsKIAogICAgICAgICBJdGVtQnVmZmVyKiBpdGVtQnVmZmVyKCkgY29uc3Qg
eyByZXR1cm4gbV9kaXNwbGF5TGlzdC5pdGVtQnVmZmVySWZFeGlzdHMoKTsgfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlM
aXN0UmVwbGF5ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxh
eWxpc3RzL0Rpc3BsYXlMaXN0UmVwbGF5ZXIuY3BwCmluZGV4IGQxNzM3YTI3OWMzOTdlMDkwOTNk
MTM4NDMzZGIzODQ3ZDZmNDc0OTIuLjMyZjA3Yjk2OTVkMmNjYjE2NzIyMGVjMGY4NTA4ZTQzZGYz
NTY0NjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3Bs
YXlsaXN0cy9EaXNwbGF5TGlzdFJlcGxheWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZXBsYXllci5jcHAKQEAgLTE1
Myw3ICsxNTMsNyBAQCBzdGQ6OnBhaXI8T3B0aW9uYWw8U3RvcFJlcGxheVJlYXNvbj4sIE9wdGlv
bmFsPFJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllcj4+IFJlcAogCiAgICAgaWYgKGl0ZW0uaXM8
QmVnaW5DbGlwVG9EcmF3aW5nQ29tbWFuZHM+KCkpIHsKICAgICAgICAgaWYgKG1fbWFza0ltYWdl
QnVmZmVyKQotICAgICAgICAgICAgcmV0dXJuIHsgU3RvcFJlcGxheVJlYXNvbjo6SW52YWxpZEl0
ZW0sIFdURjo6bnVsbG9wdCB9OworICAgICAgICAgICAgcmV0dXJuIHsgU3RvcFJlcGxheVJlYXNv
bjo6SW52YWxpZEl0ZW1PckV4dGVudCwgV1RGOjpudWxsb3B0IH07CiAgICAgICAgIGF1dG8mIGNs
aXBJdGVtID0gaXRlbS5nZXQ8QmVnaW5DbGlwVG9EcmF3aW5nQ29tbWFuZHM+KCk7CiAgICAgICAg
IG1fbWFza0ltYWdlQnVmZmVyID0gSW1hZ2VCdWZmZXI6OmNyZWF0ZUNvbXBhdGlibGVCdWZmZXIo
Y2xpcEl0ZW0uZGVzdGluYXRpb24oKS5zaXplKCksIGNsaXBJdGVtLmNvbG9yU3BhY2UoKSwgbV9j
b250ZXh0KTsKICAgICAgICAgaWYgKCFtX21hc2tJbWFnZUJ1ZmZlcikKQEAgLTE2Myw3ICsxNjMs
NyBAQCBzdGQ6OnBhaXI8T3B0aW9uYWw8U3RvcFJlcGxheVJlYXNvbj4sIE9wdGlvbmFsPFJlbmRl
cmluZ1Jlc291cmNlSWRlbnRpZmllcj4+IFJlcAogCiAgICAgaWYgKGl0ZW0uaXM8RW5kQ2xpcFRv
RHJhd2luZ0NvbW1hbmRzPigpKSB7CiAgICAgICAgIGlmICghbV9tYXNrSW1hZ2VCdWZmZXIpCi0g
ICAgICAgICAgICByZXR1cm4geyBTdG9wUmVwbGF5UmVhc29uOjpJbnZhbGlkSXRlbSwgV1RGOjpu
dWxsb3B0IH07CisgICAgICAgICAgICByZXR1cm4geyBTdG9wUmVwbGF5UmVhc29uOjpJbnZhbGlk
SXRlbU9yRXh0ZW50LCBXVEY6Om51bGxvcHQgfTsKICAgICAgICAgYXV0byYgY2xpcEl0ZW0gPSBp
dGVtLmdldDxFbmRDbGlwVG9EcmF3aW5nQ29tbWFuZHM+KCk7CiAgICAgICAgIG1fY29udGV4dC5j
bGlwVG9JbWFnZUJ1ZmZlcigqbV9tYXNrSW1hZ2VCdWZmZXIsIGNsaXBJdGVtLmRlc3RpbmF0aW9u
KCkpOwogICAgICAgICBtX21hc2tJbWFnZUJ1ZmZlciA9IG51bGxwdHI7CkBAIC0xOTUsNyArMTk1
LDcgQEAgUmVwbGF5UmVzdWx0IFJlcGxheWVyOjpyZXBsYXkoY29uc3QgRmxvYXRSZWN0JiBpbml0
aWFsQ2xpcCwgYm9vbCB0cmFja1JlcGxheUxpc3QKICAgICAgICAgfQogCiAgICAgICAgIGlmICgh
aXRlbSkgewotICAgICAgICAgICAgcmVzdWx0LnJlYXNvbkZvclN0b3BwaW5nID0gU3RvcFJlcGxh
eVJlYXNvbjo6SW52YWxpZEl0ZW07CisgICAgICAgICAgICByZXN1bHQucmVhc29uRm9yU3RvcHBp
bmcgPSBTdG9wUmVwbGF5UmVhc29uOjpJbnZhbGlkSXRlbU9yRXh0ZW50OwogICAgICAgICAgICAg
YnJlYWs7CiAgICAgICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVwbGF5ZXIuaCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlcGxheWVyLmgK
aW5kZXggMTgxYTEyYjBlNTE4ZThkYzIxZDNiNzQ5ZjI3MTAxZDJhM2U5NmYzOS4uMjQ1Yzc4MDkz
M2I1YmQzNDZhYTcxYmFkODUyOWM1Yzc3MWE2ZmE4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVwbGF5ZXIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxh
eUxpc3RSZXBsYXllci5oCkBAIC00Miw3ICs0Miw3IEBAIGVudW0gY2xhc3MgU3RvcFJlcGxheVJl
YXNvbiA6IHVpbnQ4X3QgewogICAgIFJlcGxheWVkQWxsSXRlbXMsCiAgICAgTWlzc2luZ0NhY2hl
ZFJlc291cmNlLAogICAgIENoYW5nZURlc3RpbmF0aW9uSW1hZ2VCdWZmZXIsCi0gICAgSW52YWxp
ZEl0ZW0sCisgICAgSW52YWxpZEl0ZW1PckV4dGVudCwKICAgICBPdXRPZk1lbW9yeQogfTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZVJlbmRl
cmluZ0JhY2tlbmQuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90
ZVJlbmRlcmluZ0JhY2tlbmQuY3BwCmluZGV4IDIwODk2NWUzYjdmYzhlNjMxYzVlYTUzMDhjMWRl
Nzc5NDYwYWFmNTEuLjAwYjVjZmRlNjFhMWI1ZTQxMThmYWY3NzAxOWY2OTQ0ODI0ZmJmNjMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVSZW5kZXJp
bmdCYWNrZW5kLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVt
b3RlUmVuZGVyaW5nQmFja2VuZC5jcHAKQEAgLTIwOCw3ICsyMDgsNyBAQCBSZWZQdHI8SW1hZ2VC
dWZmZXI+IFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQ6Om5leHREZXN0aW5hdGlvbkltYWdlQnVmZmVy
QWZ0ZXJBcHBseQogICAgICAgICBNRVNTQUdFX0NIRUNLX1dJVEhfUkVUVVJOX1ZBTFVFKGRpc3Bs
YXlMaXN0LCBudWxscHRyLCAiRmFpbGVkIHRvIG1hcCBkaXNwbGF5IGxpc3QgZnJvbSBzaGFyZWQg
bWVtb3J5Iik7CiAKICAgICAgICAgYXV0byByZXN1bHQgPSBzdWJtaXQoKmRpc3BsYXlMaXN0LCAq
ZGVzdGluYXRpb24pOwotICAgICAgICBNRVNTQUdFX0NIRUNLX1dJVEhfUkVUVVJOX1ZBTFVFKHJl
c3VsdC5yZWFzb25Gb3JTdG9wcGluZyAhPSBEaXNwbGF5TGlzdDo6U3RvcFJlcGxheVJlYXNvbjo6
SW52YWxpZEl0ZW0sIG51bGxwdHIsICJEZXRlY3RlZCBpbnZhbGlkIGRpc3BsYXkgbGlzdCBpdGVt
Iik7CisgICAgICAgIE1FU1NBR0VfQ0hFQ0tfV0lUSF9SRVRVUk5fVkFMVUUocmVzdWx0LnJlYXNv
bkZvclN0b3BwaW5nICE9IERpc3BsYXlMaXN0OjpTdG9wUmVwbGF5UmVhc29uOjpJbnZhbGlkSXRl
bU9yRXh0ZW50LCBudWxscHRyLCAiRGV0ZWN0ZWQgaW52YWxpZCBkaXNwbGF5IGxpc3QgaXRlbSBv
ciBleHRlbnQiKTsKICAgICAgICAgTUVTU0FHRV9DSEVDS19XSVRIX1JFVFVSTl9WQUxVRShyZXN1
bHQucmVhc29uRm9yU3RvcHBpbmcgIT0gRGlzcGxheUxpc3Q6OlN0b3BSZXBsYXlSZWFzb246Ok91
dE9mTWVtb3J5LCBudWxscHRyLCAiQ291bmQgbm90IGFsbG9jYXRlIG1lbW9yeSIpOwogCiAgICAg
ICAgIGF1dG8gYWR2YW5jZVJlc3VsdCA9IGhhbmRsZS5hZHZhbmNlKHJlc3VsdC5udW1iZXJPZkJ5
dGVzUmVhZCk7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cK
aW5kZXggYTA0OWIxYWYxNjRiZGFmZTMxZTVhNTUzYTUyYzhjZTIzMmM0MmRhYy4uZjY4MDhlZjJj
OGIyZGFiZDVjMzZlOTc2MWRhYWJlZTU0NjEyMWE2OSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdl
TG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTAzLTMxICBX
ZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIExpc3Qgb2Yg
ZXh0ZW50cyBzaG91bGQgYmUgYm91bmRzLWNoZWNrZWQgd2hlbiBpdGVyYXRpbmcgZGlzcGxheSBs
aXN0IGl0ZW1zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMjQwMTkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzcxODUxNjAwPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbmFtZSBgSW52YWxpZEl0ZW1g
IHRvIGBJbnZhbGlkSXRlbU9yRXh0ZW50YC4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViQ29yZS9jZy9EaXNwbGF5TGlzdFRlc3RzQ0cuY3BwOgorICAgICAgICAoVGVzdFdlYktp
dEFQSTo6VEVTVCk6CisKIDIwMjEtMDMtMzEgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5z
ZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBBZGQgZGVwcmVjYXRpb24gbWFjcm9zLgpkaWZmIC0t
Z2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJDb3JlL2NnL0Rpc3BsYXlMaXN0VGVz
dHNDRy5jcHAgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNvcmUvY2cvRGlzcGxheUxp
c3RUZXN0c0NHLmNwcAppbmRleCBjMWYxOWZmMGQyYjljNWNlYTgzNjhiNzUyM2NlYzEyNDBmMDRk
OThmLi5kZTZkZTZjNmFmMzFiNjhlZjZlZjgxNjNlMjAyNzMxODhmNjExNGFkIDEwMDY0NAotLS0g
YS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNvcmUvY2cvRGlzcGxheUxpc3RUZXN0c0NH
LmNwcAorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNvcmUvY2cvRGlzcGxheUxp
c3RUZXN0c0NHLmNwcApAQCAtMTMyLDcgKzEzMiw3IEBAIFRFU1QoRGlzcGxheUxpc3RUZXN0cywg
T3V0T2ZMaW5lSXRlbURlY29kaW5nRmFpbHVyZSkKICAgICBFWFBFQ1RfR1QocmVzdWx0Lm51bWJl
ck9mQnl0ZXNSZWFkLCAwVSk7CiAgICAgRVhQRUNUX0VRKHJlc3VsdC5uZXh0RGVzdGluYXRpb25J
bWFnZUJ1ZmZlciwgV1RGOjpudWxsb3B0KTsKICAgICBFWFBFQ1RfRVEocmVzdWx0Lm1pc3NpbmdD
YWNoZWRSZXNvdXJjZUlkZW50aWZpZXIsIFdURjo6bnVsbG9wdCk7Ci0gICAgRVhQRUNUX0VRKHJl
c3VsdC5yZWFzb25Gb3JTdG9wcGluZywgU3RvcFJlcGxheVJlYXNvbjo6SW52YWxpZEl0ZW0pOwor
ICAgIEVYUEVDVF9FUShyZXN1bHQucmVhc29uRm9yU3RvcHBpbmcsIFN0b3BSZXBsYXlSZWFzb246
OkludmFsaWRJdGVtT3JFeHRlbnQpOwogfQogCiBURVNUKERpc3BsYXlMaXN0VGVzdHMsIElubGlu
ZUl0ZW1WYWxpZGF0aW9uRmFpbHVyZSkKQEAgLTE1Myw3ICsxNTMsNyBAQCBURVNUKERpc3BsYXlM
aXN0VGVzdHMsIElubGluZUl0ZW1WYWxpZGF0aW9uRmFpbHVyZSkKICAgICBFWFBFQ1RfRVEocmVz
dWx0Lm51bWJlck9mQnl0ZXNSZWFkLCAwVSk7CiAgICAgRVhQRUNUX0VRKHJlc3VsdC5uZXh0RGVz
dGluYXRpb25JbWFnZUJ1ZmZlciwgV1RGOjpudWxsb3B0KTsKICAgICBFWFBFQ1RfRVEocmVzdWx0
Lm1pc3NpbmdDYWNoZWRSZXNvdXJjZUlkZW50aWZpZXIsIFdURjo6bnVsbG9wdCk7Ci0gICAgRVhQ
RUNUX0VRKHJlc3VsdC5yZWFzb25Gb3JTdG9wcGluZywgU3RvcFJlcGxheVJlYXNvbjo6SW52YWxp
ZEl0ZW0pOworICAgIEVYUEVDVF9FUShyZXN1bHQucmVhc29uRm9yU3RvcHBpbmcsIFN0b3BSZXBs
YXlSZWFzb246OkludmFsaWRJdGVtT3JFeHRlbnQpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBUZXN0
V2ViS2l0QVBJCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>