<?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>208828</bug_id>
          
          <creation_ts>2020-03-09 13:09:19 -0700</creation_ts>
          <short_desc>Remove the special DisplayList handling in CanvasRenderingContext2DBase</short_desc>
          <delta_ts>2020-03-10 10:53:14 -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>Canvas</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="Said Abou-Hallawa">sabouhallawa</reporter>
          <assigned_to name="Said Abou-Hallawa">sabouhallawa</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1627927</commentid>
    <comment_count>0</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2020-03-09 13:09:19 -0700</bug_when>
    <thetext>Recording the drawing commands and replaying them to the backend is already implemented and should be handled by DisplayList::ImageBuffer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627929</commentid>
    <comment_count>1</comment_count>
      <attachid>393064</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2020-03-09 13:10:51 -0700</bug_when>
    <thetext>Created attachment 393064
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628044</commentid>
    <comment_count>2</comment_count>
      <attachid>393096</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2020-03-09 17:24:29 -0700</bug_when>
    <thetext>Created attachment 393096
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628117</commentid>
    <comment_count>3</comment_count>
      <attachid>393096</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2020-03-09 22:24:04 -0700</bug_when>
    <thetext>Comment on attachment 393096
Patch

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

&gt; Source/WebCore/html/canvas/CanvasRenderingContext2DBase.cpp:2062
&gt;      if (UNLIKELY(m_usesDisplayListDrawing)) {

We should probably go farther and delete the whole thing, LayoutTests and all.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628291</commentid>
    <comment_count>4</comment_count>
      <attachid>393096</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2020-03-10 09:50:50 -0700</bug_when>
    <thetext>Comment on attachment 393096
Patch

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

&gt;&gt; Source/WebCore/html/canvas/CanvasRenderingContext2DBase.cpp:2062
&gt;&gt;      if (UNLIKELY(m_usesDisplayListDrawing)) {
&gt; 
&gt; We should probably go farther and delete the whole thing, LayoutTests and all.

This DisplayList recording and replay back is used by CustomPaintCanvas, OffscreenCanvas and WebGLRenderingContextBase. A CanvasRenderingContext2DBase is created without an ImageBuffer. The drawing commands are recorded and later replayed back on the context of a temporary ImageBuffer. It will be nice if we can remove that. But at least for now I think it is okay to remove the code duplication.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628318</commentid>
    <comment_count>5</comment_count>
      <attachid>393096</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-10 10:52:12 -0700</bug_when>
    <thetext>Comment on attachment 393096
Patch

Clearing flags on attachment: 393096

Committed r258219: &lt;https://trac.webkit.org/changeset/258219&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628319</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-10 10:52:14 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628320</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-03-10 10:53:14 -0700</bug_when>
    <thetext>&lt;rdar://problem/60279998&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393064</attachid>
            <date>2020-03-09 13:10:51 -0700</date>
            <delta_ts>2020-03-09 17:24:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208828-20200309131051.patch</filename>
            <type>text/plain</type>
            <size>7099</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MTQ0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTI4NWY5ZmZkMTM5MDcw
MjUzNDQ1M2MxYTg0ODA5MGYxMzUxMTAyMi4uNTJiMDU4Mzk1M2FiNGQwNzU0OGUxMWQyNGYwOTUw
MDE3MGFkYmY1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDIwLTAzLTA5ICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3Zl
IHRoZSBzcGVjaWFsIERpc3BsYXlMaXN0IGhhbmRsaW5nIGluIENhbnZhc1JlbmRlcmluZ0NvbnRl
eHQyREJhc2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIwODgyOAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFJlY29yZGluZyB0aGUgZHJhd2luZyBjb21tYW5kcyBhbmQgcmVwbGF5aW5nIHRoZW0gdG8gdGhl
IGJhY2tlbmQgaXMgYWxyZWFkeQorICAgICAgICBpbXBsZW1lbnRlZCBhbmQgc2hvdWxkIGJlIGhh
bmRsZWQgYnkgRGlzcGxheUxpc3Q6OkltYWdlQnVmZmVyLgorCisgICAgICAgICogaHRtbC9jYW52
YXMvQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEQmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpD
YW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlOjp+Q2FudmFzUmVuZGVyaW5nQ29udGV4dDJEQmFz
ZSk6CisgICAgICAgIChXZWJDb3JlOjpDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlOjpyZXNl
dCk6CisgICAgICAgIChXZWJDb3JlOjpDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlOjpzZXRU
cmFja3NEaXNwbGF5TGlzdFJlcGxheSk6CisgICAgICAgIChXZWJDb3JlOjpDYW52YXNSZW5kZXJp
bmdDb250ZXh0MkRCYXNlOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyk6CisgICAgICAg
IChXZWJDb3JlOjpDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlOjpkcmF3aW5nQ29udGV4dCBj
b25zdCk6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdERyYXdpbmdDb250ZXh0OjpEaXNw
bGF5TGlzdERyYXdpbmdDb250ZXh0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmNvbnRl
eHREaXNwbGF5TGlzdE1hcCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpDYW52YXNSZW5k
ZXJpbmdDb250ZXh0MkRCYXNlOjpkaXNwbGF5TGlzdEFzVGV4dCBjb25zdCk6IERlbGV0ZWQuCisg
ICAgICAgIChXZWJDb3JlOjpDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlOjpyZXBsYXlEaXNw
bGF5TGlzdEFzVGV4dCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogaHRtbC9jYW52YXMvQ2Fu
dmFzUmVuZGVyaW5nQ29udGV4dDJEQmFzZS5oOgorCiAyMDIwLTAzLTA5ICBSb2IgQnVpcyAgPHJi
dWlzQGlnYWxpYS5jb20+CiAKICAgICAgICAgUmVuYW1lIHVybFNlbGVjdGVkIHRvIGNoYW5nZUxv
Y2F0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNSZW5k
ZXJpbmdDb250ZXh0MkRCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0NhbnZh
c1JlbmRlcmluZ0NvbnRleHQyREJhc2UuY3BwCmluZGV4IGQyYjhkYjgxNGQzMTM0MTg2NDEyZmE1
ZDhhZWFmN2EyMzgwYjEyODUuLmUwNzliYTIzMDRlYmRiYjc2ODRlNTVkMDM4NTQxYzJhYjVkZTc0
YjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0NhbnZhc1JlbmRlcmlu
Z0NvbnRleHQyREJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0NhbnZh
c1JlbmRlcmluZ0NvbnRleHQyREJhc2UuY3BwCkBAIC04NywzMyArODcsNiBAQCBjb25zdCBpbnQg
Q2FudmFzUmVuZGVyaW5nQ29udGV4dDJEQmFzZTo6RGVmYXVsdEZvbnRTaXplID0gMTA7CiBjb25z
dCBjaGFyKiBjb25zdCBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlOjpEZWZhdWx0Rm9udEZh
bWlseSA9ICJzYW5zLXNlcmlmIjsKIGNvbnN0IGNoYXIqIGNvbnN0IENhbnZhc1JlbmRlcmluZ0Nv
bnRleHQyREJhc2U6OkRlZmF1bHRGb250ID0gIjEwcHggc2Fucy1zZXJpZiI7CiAKLXN0cnVjdCBE
aXNwbGF5TGlzdERyYXdpbmdDb250ZXh0IHsKLSAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsK
LXB1YmxpYzoKLSAgICBHcmFwaGljc0NvbnRleHQgY29udGV4dDsKLSAgICBEaXNwbGF5TGlzdDo6
RGlzcGxheUxpc3QgZGlzcGxheUxpc3Q7Ci0gICAgCi0gICAgRGlzcGxheUxpc3REcmF3aW5nQ29u
dGV4dChHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEZsb2F0UmVjdCYgY2xpcCkKLSAg
ICAgICAgOiBEaXNwbGF5TGlzdERyYXdpbmdDb250ZXh0KGNvbnRleHQuc3RhdGUoKSwgY2xpcCkK
LSAgICB7Ci0gICAgfQotCi0gICAgRGlzcGxheUxpc3REcmF3aW5nQ29udGV4dChjb25zdCBHcmFw
aGljc0NvbnRleHRTdGF0ZSYgc3RhdGUsIGNvbnN0IEZsb2F0UmVjdCYgY2xpcCkKLSAgICAgICAg
OiBjb250ZXh0KFsmXShHcmFwaGljc0NvbnRleHQmIGRpc3BsYXlMaXN0Q29udGV4dCkgewotICAg
ICAgICAgICAgcmV0dXJuIG1ha2VVbmlxdWU8RGlzcGxheUxpc3Q6OlJlY29yZGVyPihkaXNwbGF5
TGlzdENvbnRleHQsIGRpc3BsYXlMaXN0LCBzdGF0ZSwgY2xpcCwgQWZmaW5lVHJhbnNmb3JtKCkp
OwotICAgICAgICB9KQotICAgIHsKLSAgICB9Ci19OwotCi10eXBlZGVmIEhhc2hNYXA8Y29uc3Qg
Q2FudmFzUmVuZGVyaW5nQ29udGV4dDJEQmFzZSosIHN0ZDo6dW5pcXVlX3B0cjxEaXNwbGF5TGlz
dDo6RGlzcGxheUxpc3Q+PiBDb250ZXh0RGlzcGxheUxpc3RIYXNoTWFwOwotCi1zdGF0aWMgQ29u
dGV4dERpc3BsYXlMaXN0SGFzaE1hcCYgY29udGV4dERpc3BsYXlMaXN0TWFwKCkKLXsKLSAgICBz
dGF0aWMgTmV2ZXJEZXN0cm95ZWQ8Q29udGV4dERpc3BsYXlMaXN0SGFzaE1hcD4gc2hhcmVkSGFz
aE1hcDsKLSAgICByZXR1cm4gc2hhcmVkSGFzaE1hcDsKLX0KLQogY2xhc3MgQ2FudmFzU3Ryb2tl
U3R5bGVBcHBsaWVyIDogcHVibGljIFN0cm9rZVN0eWxlQXBwbGllciB7CiBwdWJsaWM6CiAgICAg
Q2FudmFzU3Ryb2tlU3R5bGVBcHBsaWVyKENhbnZhc1JlbmRlcmluZ0NvbnRleHQyREJhc2UqIGNh
bnZhc0NvbnRleHQpCkBAIC0xNjMsOSArMTM2LDYgQEAgQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJE
QmFzZTo6fkNhbnZhc1JlbmRlcmluZ0NvbnRleHQyREJhc2UoKQogI2lmIEFTU0VSVF9FTkFCTEVE
CiAgICAgdW53aW5kU3RhdGVTdGFjaygpOwogI2VuZGlmCi0KLSAgICBpZiAoVU5MSUtFTFkodHJh
Y2tzRGlzcGxheUxpc3RSZXBsYXkoKSkpCi0gICAgICAgIGNvbnRleHREaXNwbGF5TGlzdE1hcCgp
LnJlbW92ZSh0aGlzKTsKIH0KIAogYm9vbCBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlOjpp
c0FjY2VsZXJhdGVkKCkgY29uc3QKQEAgLTE4NSw4ICsxNTUsNiBAQCB2b2lkIENhbnZhc1JlbmRl
cmluZ0NvbnRleHQyREJhc2U6OnJlc2V0KCkKICAgICBtX3N0YXRlU3RhY2suZmlyc3QoKSA9IFN0
YXRlKCk7CiAgICAgbV9wYXRoLmNsZWFyKCk7CiAgICAgbV91bnJlYWxpemVkU2F2ZUNvdW50ID0g
MDsKLSAgICAKLSAgICBtX3JlY29yZGluZ0NvbnRleHQgPSBudWxscHRyOwogfQogCiBDYW52YXNS
ZW5kZXJpbmdDb250ZXh0MkRCYXNlOjpTdGF0ZTo6U3RhdGUoKQpAQCAtMjA2NywyNyArMjAzNSw3
IEBAIHZvaWQgQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEQmFzZTo6ZGlkRHJhdyhjb25zdCBGbG9h
dFJlY3QmIHIsIHVuc2lnbmVkIG9wdGlvbnMpCiAKIHZvaWQgQ2FudmFzUmVuZGVyaW5nQ29udGV4
dDJEQmFzZTo6c2V0VHJhY2tzRGlzcGxheUxpc3RSZXBsYXkoYm9vbCB0cmFja3NEaXNwbGF5TGlz
dFJlcGxheSkKIHsKLSAgICBpZiAodHJhY2tzRGlzcGxheUxpc3RSZXBsYXkgPT0gbV90cmFja3NE
aXNwbGF5TGlzdFJlcGxheSkKLSAgICAgICAgcmV0dXJuOwotCiAgICAgbV90cmFja3NEaXNwbGF5
TGlzdFJlcGxheSA9IHRyYWNrc0Rpc3BsYXlMaXN0UmVwbGF5OwotICAgIGlmICghbV90cmFja3NE
aXNwbGF5TGlzdFJlcGxheSkKLSAgICAgICAgY29udGV4dERpc3BsYXlMaXN0TWFwKCkucmVtb3Zl
KHRoaXMpOwotfQotCi1TdHJpbmcgQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEQmFzZTo6ZGlzcGxh
eUxpc3RBc1RleHQoRGlzcGxheUxpc3Q6OkFzVGV4dEZsYWdzIGZsYWdzKSBjb25zdAotewotICAg
IGlmICghbV9yZWNvcmRpbmdDb250ZXh0KQotICAgICAgICByZXR1cm4geyB9OwotICAgIHJldHVy
biBtX3JlY29yZGluZ0NvbnRleHQtPmRpc3BsYXlMaXN0LmFzVGV4dChmbGFncyk7Ci19Ci0KLVN0
cmluZyBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlOjpyZXBsYXlEaXNwbGF5TGlzdEFzVGV4
dChEaXNwbGF5TGlzdDo6QXNUZXh0RmxhZ3MgZmxhZ3MpIGNvbnN0Ci17Ci0gICAgYXV0byogZGlz
cGxheUxpc3QgPSBjb250ZXh0RGlzcGxheUxpc3RNYXAoKS5nZXQodGhpcyk7Ci0gICAgaWYgKCFk
aXNwbGF5TGlzdCkKLSAgICAgICAgcmV0dXJuIHsgfTsKLSAgICByZXR1cm4gZGlzcGxheUxpc3Qt
PmFzVGV4dChmbGFncyk7CiB9CiAKIGNvbnN0IFZlY3RvcjxDYW52YXNSZW5kZXJpbmdDb250ZXh0
MkRCYXNlOjpTdGF0ZSwgMT4mIENhbnZhc1JlbmRlcmluZ0NvbnRleHQyREJhc2U6OnN0YXRlU3Rh
Y2soKQpAQCAtMjA5OCwzMSArMjA0NiwxNCBAQCBjb25zdCBWZWN0b3I8Q2FudmFzUmVuZGVyaW5n
Q29udGV4dDJEQmFzZTo6U3RhdGUsIDE+JiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYQogCiB2
b2lkIENhbnZhc1JlbmRlcmluZ0NvbnRleHQyREJhc2U6OnBhaW50UmVuZGVyaW5nUmVzdWx0c1Rv
Q2FudmFzKCkKIHsKLSAgICBpZiAoVU5MSUtFTFkobV91c2VzRGlzcGxheUxpc3REcmF3aW5nKSkg
ewotICAgICAgICBpZiAoIW1fcmVjb3JkaW5nQ29udGV4dCkKLSAgICAgICAgICAgIHJldHVybjsK
LQotICAgICAgICBGbG9hdFJlY3QgY2xpcChGbG9hdFBvaW50Ojp6ZXJvKCksIGNhbnZhc0Jhc2Uo
KS5zaXplKCkpOwotICAgICAgICBEaXNwbGF5TGlzdDo6UmVwbGF5ZXIgcmVwbGF5ZXIoKmNhbnZh
c0Jhc2UoKS5kcmF3aW5nQ29udGV4dCgpLCBtX3JlY29yZGluZ0NvbnRleHQtPmRpc3BsYXlMaXN0
KTsKLQotICAgICAgICBpZiAoVU5MSUtFTFkobV90cmFja3NEaXNwbGF5TGlzdFJlcGxheSkpIHsK
LSAgICAgICAgICAgIGF1dG8gcmVwbGF5TGlzdCA9IHJlcGxheWVyLnJlcGxheShjbGlwLCBtX3Ry
YWNrc0Rpc3BsYXlMaXN0UmVwbGF5KTsKLSAgICAgICAgICAgIGNvbnRleHREaXNwbGF5TGlzdE1h
cCgpLmFkZCh0aGlzLCBXVEZNb3ZlKHJlcGxheUxpc3QpKTsKLSAgICAgICAgfSBlbHNlCi0gICAg
ICAgICAgICByZXBsYXllci5yZXBsYXkoY2xpcCk7Ci0KLSAgICAgICAgbV9yZWNvcmRpbmdDb250
ZXh0LT5kaXNwbGF5TGlzdC5jbGVhcigpOworICAgIGlmIChhdXRvKiBidWZmZXIgPSBjYW52YXNC
YXNlKCkuYnVmZmVyKCkpIHsKKyAgICAgICAgQVNTRVJUX0lNUExJRVMobV91c2VzRGlzcGxheUxp
c3REcmF3aW5nLCBidWZmZXItPmRyYXdpbmdDb250ZXh0KCkpOworICAgICAgICBidWZmZXItPmZs
dXNoRHJhd2luZ0NvbnRleHQoKTsKICAgICB9CiB9CiAKIEdyYXBoaWNzQ29udGV4dCogQ2FudmFz
UmVuZGVyaW5nQ29udGV4dDJEQmFzZTo6ZHJhd2luZ0NvbnRleHQoKSBjb25zdAogewotICAgIGlm
IChVTkxJS0VMWShtX3VzZXNEaXNwbGF5TGlzdERyYXdpbmcpKSB7Ci0gICAgICAgIGlmICghbV9y
ZWNvcmRpbmdDb250ZXh0KQotICAgICAgICAgICAgbV9yZWNvcmRpbmdDb250ZXh0ID0gbWFrZVVu
aXF1ZTxEaXNwbGF5TGlzdERyYXdpbmdDb250ZXh0PihHcmFwaGljc0NvbnRleHRTdGF0ZSgpLCBG
bG9hdFJlY3QoRmxvYXRQb2ludDo6emVybygpLCBjYW52YXNCYXNlKCkuc2l6ZSgpKSk7Ci0gICAg
ICAgIHJldHVybiAmbV9yZWNvcmRpbmdDb250ZXh0LT5jb250ZXh0OwotICAgIH0KLQogICAgIHJl
dHVybiBjYW52YXNCYXNlKCkuZHJhd2luZ0NvbnRleHQoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEQmFzZS5oIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEQmFzZS5o
CmluZGV4IGRiM2ZhYzhiMDhiNzAzYmQ1NDFmYzcyZjRkMzFiZDUxNzczNTA0ZDAuLmNmYmRkNDQ1
ZjFiY2U2ZDFmZTBkYmU1ODcxZDU2ZTZjNjE4NGFhZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvY2FudmFzL0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyREJhc2UuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlLmgKQEAg
LTIyMiw5ICsyMjIsNiBAQCBwdWJsaWM6CiAgICAgYm9vbCB0cmFja3NEaXNwbGF5TGlzdFJlcGxh
eSgpIGNvbnN0IHsgcmV0dXJuIG1fdHJhY2tzRGlzcGxheUxpc3RSZXBsYXk7IH0KICAgICB2b2lk
IHNldFRyYWNrc0Rpc3BsYXlMaXN0UmVwbGF5KGJvb2wpOwogCi0gICAgU3RyaW5nIGRpc3BsYXlM
aXN0QXNUZXh0KERpc3BsYXlMaXN0OjpBc1RleHRGbGFncykgY29uc3Q7Ci0gICAgU3RyaW5nIHJl
cGxheURpc3BsYXlMaXN0QXNUZXh0KERpc3BsYXlMaXN0OjpBc1RleHRGbGFncykgY29uc3Q7Ci0K
ICAgICB1c2luZyBEaXJlY3Rpb24gPSBDYW52YXNEaXJlY3Rpb247CiAKICAgICBjbGFzcyBGb250
UHJveHkgOiBwdWJsaWMgRm9udFNlbGVjdG9yQ2xpZW50IHsKQEAgLTM4NSw3ICszODIsNiBAQCBw
cm90ZWN0ZWQ6CiAgICAgYm9vbCBtX3VzZXNDU1NDb21wYXRpYmlsaXR5UGFyc2VNb2RlOwogICAg
IGJvb2wgbV91c2VzRGlzcGxheUxpc3REcmF3aW5nIHsgZmFsc2UgfTsKICAgICBib29sIG1fdHJh
Y2tzRGlzcGxheUxpc3RSZXBsYXkgeyBmYWxzZSB9OwotICAgIG11dGFibGUgc3RkOjp1bmlxdWVf
cHRyPHN0cnVjdCBEaXNwbGF5TGlzdERyYXdpbmdDb250ZXh0PiBtX3JlY29yZGluZ0NvbnRleHQ7
CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393096</attachid>
            <date>2020-03-09 17:24:29 -0700</date>
            <delta_ts>2020-03-10 10:52:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208828-20200309172428.patch</filename>
            <type>text/plain</type>
            <size>9735</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MTQ0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTI4NWY5ZmZkMTM5MDcw
MjUzNDQ1M2MxYTg0ODA5MGYxMzUxMTAyMi4uNmZjZTUzYjVjMDBkMmEzYjA1YWY4MjNiMGUwZGQy
NzhlOTI1ZjgzZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDIwLTAzLTA5ICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3Zl
IHRoZSBzcGVjaWFsIERpc3BsYXlMaXN0IGhhbmRsaW5nIGluIENhbnZhc1JlbmRlcmluZ0NvbnRl
eHQyREJhc2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIwODgyOAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFJlbW92ZSBEaXNwbGF5TGlzdERyYXdpbmdDb250ZXh0IGFuZCB1c2UgRGlzcGxheUxpc3Q6OkRy
YXdpbmdDb250ZXh0CisgICAgICAgIGluc3RlYWQuIFJlbW92ZSAndHJhY2tzRGlzcGxheUxpc3RS
ZXBsYXknIHNpbmNlIGl0IGlzIGFsd2F5cyAnZmFsc2UnLgorICAgICAgICBSZW1vdmUgY29udGV4
dERpc3BsYXlMaXN0TWFwKCkgc2luY2UgaXRlbXMgYXJlIGFkZGVkIHRvIGl0IG9ubHkgaWYKKyAg
ICAgICAgJ3RyYWNrc0Rpc3BsYXlMaXN0UmVwbGF5JyBpcyB0cnVlIHdoaWNoIG5ldmVyIGhhcHBl
bnMuCisKKyAgICAgICAgKiBodG1sL0N1c3RvbVBhaW50Q2FudmFzLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkN1c3RvbVBhaW50Q2FudmFzOjpnZXRDb250ZXh0KToKKyAgICAgICAgKiBodG1sL2Nh
bnZhcy9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkNhbnZhc1JlbmRlcmluZ0NvbnRleHQyREJhc2U6On5DYW52YXNSZW5kZXJpbmdDb250ZXh0MkRC
YXNlKToKKyAgICAgICAgKFdlYkNvcmU6OkNhbnZhc1JlbmRlcmluZ0NvbnRleHQyREJhc2U6OnBh
aW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKToKKyAgICAgICAgKFdlYkNvcmU6OkNhbnZhc1Jl
bmRlcmluZ0NvbnRleHQyREJhc2U6OmRyYXdpbmdDb250ZXh0IGNvbnN0KToKKyAgICAgICAgKFdl
YkNvcmU6OkRpc3BsYXlMaXN0RHJhd2luZ0NvbnRleHQ6OkRpc3BsYXlMaXN0RHJhd2luZ0NvbnRl
eHQpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6Y29udGV4dERpc3BsYXlMaXN0TWFwKTog
RGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkNhbnZhc1JlbmRlcmluZ0NvbnRleHQyREJhc2U6
OnNldFRyYWNrc0Rpc3BsYXlMaXN0UmVwbGF5KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OkNhbnZhc1JlbmRlcmluZ0NvbnRleHQyREJhc2U6OmRpc3BsYXlMaXN0QXNUZXh0IGNvbnN0KTog
RGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkNhbnZhc1JlbmRlcmluZ0NvbnRleHQyREJhc2U6
OnJlcGxheURpc3BsYXlMaXN0QXNUZXh0IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKiBodG1s
L2NhbnZhcy9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlLmg6CisgICAgICAgIChXZWJDb3Jl
OjpDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlOjp0cmFja3NEaXNwbGF5TGlzdFJlcGxheSBj
b25zdCk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3Rz
L0Rpc3BsYXlMaXN0RHJhd2luZ0NvbnRleHQuaDoKKwogMjAyMC0wMy0wOSAgUm9iIEJ1aXMgIDxy
YnVpc0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFJlbmFtZSB1cmxTZWxlY3RlZCB0byBjaGFuZ2VM
b2NhdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9DdXN0b21QYWludENhbnZh
cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0N1c3RvbVBhaW50Q2FudmFzLmNwcAppbmRleCA5
MjA1YTk4MWU3OWZjODZiNWZiYjFiZTM1MjE0ZjlhNDg5MGVhMGVhLi4xYzYwZGQxZTdhNjNkOTkx
ODZiZmQ3ZTAwMzdkNmFiYjEzMGE2MzliIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0N1c3RvbVBhaW50Q2FudmFzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0N1c3RvbVBh
aW50Q2FudmFzLmNwcApAQCAtNjAsNyArNjAsNiBAQCBFeGNlcHRpb25PcjxSZWZQdHI8UGFpbnRS
ZW5kZXJpbmdDb250ZXh0MkQ+PiBDdXN0b21QYWludENhbnZhczo6Z2V0Q29udGV4dCgpCiAKICAg
ICBtX2NvbnRleHQgPSBQYWludFJlbmRlcmluZ0NvbnRleHQyRDo6Y3JlYXRlKCp0aGlzKTsKICAg
ICBkb3duY2FzdDxQYWludFJlbmRlcmluZ0NvbnRleHQyRD4oKm1fY29udGV4dCkuc2V0VXNlc0Rp
c3BsYXlMaXN0RHJhd2luZyh0cnVlKTsKLSAgICBkb3duY2FzdDxQYWludFJlbmRlcmluZ0NvbnRl
eHQyRD4oKm1fY29udGV4dCkuc2V0VHJhY2tzRGlzcGxheUxpc3RSZXBsYXkoZmFsc2UpOwogCiAg
ICAgcmV0dXJuIHsgUmVmUHRyPFBhaW50UmVuZGVyaW5nQ29udGV4dDJEPiB7ICZkb3duY2FzdDxQ
YWludFJlbmRlcmluZ0NvbnRleHQyRD4oKm1fY29udGV4dCkgfSB9OwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEQmFzZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkRC
YXNlLmNwcAppbmRleCBkMmI4ZGI4MTRkMzEzNDE4NjQxMmZhNWQ4YWVhZjdhMjM4MGIxMjg1Li42
NGNhN2VlZjBmZjg5MDA3MWFkMGE1ZDRlMTZmMzU3YzM4MmFlMjExIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkRC
YXNlLmNwcApAQCAtNDIsNiArNDIsNyBAQAogI2luY2x1ZGUgIkNhbnZhc1BhdHRlcm4uaCIKICNp
bmNsdWRlICJET01NYXRyaXguaCIKICNpbmNsdWRlICJET01NYXRyaXgyREluaXQuaCIKKyNpbmNs
dWRlICJEaXNwbGF5TGlzdERyYXdpbmdDb250ZXh0LmgiCiAjaW5jbHVkZSAiRGlzcGxheUxpc3RS
ZWNvcmRlci5oIgogI2luY2x1ZGUgIkRpc3BsYXlMaXN0UmVwbGF5ZXIuaCIKICNpbmNsdWRlICJG
bG9hdFF1YWQuaCIKQEAgLTg3LDMzICs4OCw2IEBAIGNvbnN0IGludCBDYW52YXNSZW5kZXJpbmdD
b250ZXh0MkRCYXNlOjpEZWZhdWx0Rm9udFNpemUgPSAxMDsKIGNvbnN0IGNoYXIqIGNvbnN0IENh
bnZhc1JlbmRlcmluZ0NvbnRleHQyREJhc2U6OkRlZmF1bHRGb250RmFtaWx5ID0gInNhbnMtc2Vy
aWYiOwogY29uc3QgY2hhciogY29uc3QgQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEQmFzZTo6RGVm
YXVsdEZvbnQgPSAiMTBweCBzYW5zLXNlcmlmIjsKIAotc3RydWN0IERpc3BsYXlMaXN0RHJhd2lu
Z0NvbnRleHQgewotICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwotcHVibGljOgotICAgIEdy
YXBoaWNzQ29udGV4dCBjb250ZXh0OwotICAgIERpc3BsYXlMaXN0OjpEaXNwbGF5TGlzdCBkaXNw
bGF5TGlzdDsKLSAgICAKLSAgICBEaXNwbGF5TGlzdERyYXdpbmdDb250ZXh0KEdyYXBoaWNzQ29u
dGV4dCYgY29udGV4dCwgY29uc3QgRmxvYXRSZWN0JiBjbGlwKQotICAgICAgICA6IERpc3BsYXlM
aXN0RHJhd2luZ0NvbnRleHQoY29udGV4dC5zdGF0ZSgpLCBjbGlwKQotICAgIHsKLSAgICB9Ci0K
LSAgICBEaXNwbGF5TGlzdERyYXdpbmdDb250ZXh0KGNvbnN0IEdyYXBoaWNzQ29udGV4dFN0YXRl
JiBzdGF0ZSwgY29uc3QgRmxvYXRSZWN0JiBjbGlwKQotICAgICAgICA6IGNvbnRleHQoWyZdKEdy
YXBoaWNzQ29udGV4dCYgZGlzcGxheUxpc3RDb250ZXh0KSB7Ci0gICAgICAgICAgICByZXR1cm4g
bWFrZVVuaXF1ZTxEaXNwbGF5TGlzdDo6UmVjb3JkZXI+KGRpc3BsYXlMaXN0Q29udGV4dCwgZGlz
cGxheUxpc3QsIHN0YXRlLCBjbGlwLCBBZmZpbmVUcmFuc2Zvcm0oKSk7Ci0gICAgICAgIH0pCi0g
ICAgewotICAgIH0KLX07Ci0KLXR5cGVkZWYgSGFzaE1hcDxjb25zdCBDYW52YXNSZW5kZXJpbmdD
b250ZXh0MkRCYXNlKiwgc3RkOjp1bmlxdWVfcHRyPERpc3BsYXlMaXN0OjpEaXNwbGF5TGlzdD4+
IENvbnRleHREaXNwbGF5TGlzdEhhc2hNYXA7Ci0KLXN0YXRpYyBDb250ZXh0RGlzcGxheUxpc3RI
YXNoTWFwJiBjb250ZXh0RGlzcGxheUxpc3RNYXAoKQotewotICAgIHN0YXRpYyBOZXZlckRlc3Ry
b3llZDxDb250ZXh0RGlzcGxheUxpc3RIYXNoTWFwPiBzaGFyZWRIYXNoTWFwOwotICAgIHJldHVy
biBzaGFyZWRIYXNoTWFwOwotfQotCiBjbGFzcyBDYW52YXNTdHJva2VTdHlsZUFwcGxpZXIgOiBw
dWJsaWMgU3Ryb2tlU3R5bGVBcHBsaWVyIHsKIHB1YmxpYzoKICAgICBDYW52YXNTdHJva2VTdHls
ZUFwcGxpZXIoQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEQmFzZSogY2FudmFzQ29udGV4dCkKQEAg
LTE2Myw5ICsxMzcsNiBAQCBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlOjp+Q2FudmFzUmVu
ZGVyaW5nQ29udGV4dDJEQmFzZSgpCiAjaWYgQVNTRVJUX0VOQUJMRUQKICAgICB1bndpbmRTdGF0
ZVN0YWNrKCk7CiAjZW5kaWYKLQotICAgIGlmIChVTkxJS0VMWSh0cmFja3NEaXNwbGF5TGlzdFJl
cGxheSgpKSkKLSAgICAgICAgY29udGV4dERpc3BsYXlMaXN0TWFwKCkucmVtb3ZlKHRoaXMpOwog
fQogCiBib29sIENhbnZhc1JlbmRlcmluZ0NvbnRleHQyREJhc2U6OmlzQWNjZWxlcmF0ZWQoKSBj
b25zdApAQCAtMjA2NSwzMSArMjAzNiw2IEBAIHZvaWQgQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJE
QmFzZTo6ZGlkRHJhdyhjb25zdCBGbG9hdFJlY3QmIHIsIHVuc2lnbmVkIG9wdGlvbnMpCiAgICAg
Y2FudmFzQmFzZSgpLmRpZERyYXcoZGlydHlSZWN0KTsKIH0KIAotdm9pZCBDYW52YXNSZW5kZXJp
bmdDb250ZXh0MkRCYXNlOjpzZXRUcmFja3NEaXNwbGF5TGlzdFJlcGxheShib29sIHRyYWNrc0Rp
c3BsYXlMaXN0UmVwbGF5KQotewotICAgIGlmICh0cmFja3NEaXNwbGF5TGlzdFJlcGxheSA9PSBt
X3RyYWNrc0Rpc3BsYXlMaXN0UmVwbGF5KQotICAgICAgICByZXR1cm47Ci0KLSAgICBtX3RyYWNr
c0Rpc3BsYXlMaXN0UmVwbGF5ID0gdHJhY2tzRGlzcGxheUxpc3RSZXBsYXk7Ci0gICAgaWYgKCFt
X3RyYWNrc0Rpc3BsYXlMaXN0UmVwbGF5KQotICAgICAgICBjb250ZXh0RGlzcGxheUxpc3RNYXAo
KS5yZW1vdmUodGhpcyk7Ci19Ci0KLVN0cmluZyBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNl
OjpkaXNwbGF5TGlzdEFzVGV4dChEaXNwbGF5TGlzdDo6QXNUZXh0RmxhZ3MgZmxhZ3MpIGNvbnN0
Ci17Ci0gICAgaWYgKCFtX3JlY29yZGluZ0NvbnRleHQpCi0gICAgICAgIHJldHVybiB7IH07Ci0g
ICAgcmV0dXJuIG1fcmVjb3JkaW5nQ29udGV4dC0+ZGlzcGxheUxpc3QuYXNUZXh0KGZsYWdzKTsK
LX0KLQotU3RyaW5nIENhbnZhc1JlbmRlcmluZ0NvbnRleHQyREJhc2U6OnJlcGxheURpc3BsYXlM
aXN0QXNUZXh0KERpc3BsYXlMaXN0OjpBc1RleHRGbGFncyBmbGFncykgY29uc3QKLXsKLSAgICBh
dXRvKiBkaXNwbGF5TGlzdCA9IGNvbnRleHREaXNwbGF5TGlzdE1hcCgpLmdldCh0aGlzKTsKLSAg
ICBpZiAoIWRpc3BsYXlMaXN0KQotICAgICAgICByZXR1cm4geyB9OwotICAgIHJldHVybiBkaXNw
bGF5TGlzdC0+YXNUZXh0KGZsYWdzKTsKLX0KLQogY29uc3QgVmVjdG9yPENhbnZhc1JlbmRlcmlu
Z0NvbnRleHQyREJhc2U6OlN0YXRlLCAxPiYgQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEQmFzZTo6
c3RhdGVTdGFjaygpCiB7CiAgICAgcmVhbGl6ZVNhdmVzKCk7CkBAIC0yMDk4LDIwICsyMDQ0LDE2
IEBAIGNvbnN0IFZlY3RvcjxDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlOjpTdGF0ZSwgMT4m
IENhbnZhc1JlbmRlcmluZ0NvbnRleHQyREJhCiAKIHZvaWQgQ2FudmFzUmVuZGVyaW5nQ29udGV4
dDJEQmFzZTo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoKQogewotICAgIGlmIChVTkxJ
S0VMWShtX3VzZXNEaXNwbGF5TGlzdERyYXdpbmcpKSB7Ci0gICAgICAgIGlmICghbV9yZWNvcmRp
bmdDb250ZXh0KQotICAgICAgICAgICAgcmV0dXJuOwotCi0gICAgICAgIEZsb2F0UmVjdCBjbGlw
KEZsb2F0UG9pbnQ6Onplcm8oKSwgY2FudmFzQmFzZSgpLnNpemUoKSk7Ci0gICAgICAgIERpc3Bs
YXlMaXN0OjpSZXBsYXllciByZXBsYXllcigqY2FudmFzQmFzZSgpLmRyYXdpbmdDb250ZXh0KCks
IG1fcmVjb3JkaW5nQ29udGV4dC0+ZGlzcGxheUxpc3QpOworICAgIGlmICghbV9yZWNvcmRpbmdD
b250ZXh0KQorICAgICAgICByZXR1cm47CiAKLSAgICAgICAgaWYgKFVOTElLRUxZKG1fdHJhY2tz
RGlzcGxheUxpc3RSZXBsYXkpKSB7Ci0gICAgICAgICAgICBhdXRvIHJlcGxheUxpc3QgPSByZXBs
YXllci5yZXBsYXkoY2xpcCwgbV90cmFja3NEaXNwbGF5TGlzdFJlcGxheSk7Ci0gICAgICAgICAg
ICBjb250ZXh0RGlzcGxheUxpc3RNYXAoKS5hZGQodGhpcywgV1RGTW92ZShyZXBsYXlMaXN0KSk7
Ci0gICAgICAgIH0gZWxzZQotICAgICAgICAgICAgcmVwbGF5ZXIucmVwbGF5KGNsaXApOworICAg
IEFTU0VSVChtX3VzZXNEaXNwbGF5TGlzdERyYXdpbmcpOwogCi0gICAgICAgIG1fcmVjb3JkaW5n
Q29udGV4dC0+ZGlzcGxheUxpc3QuY2xlYXIoKTsKKyAgICBhdXRvJiBkaXNwbGF5TGlzdCA9IG1f
cmVjb3JkaW5nQ29udGV4dC0+ZGlzcGxheUxpc3QoKTsKKyAgICBpZiAoZGlzcGxheUxpc3QuaXRl
bUNvdW50KCkpIHsKKyAgICAgICAgRGlzcGxheUxpc3Q6OlJlcGxheWVyIHJlcGxheWVyKCpjYW52
YXNCYXNlKCkuZHJhd2luZ0NvbnRleHQoKSwgZGlzcGxheUxpc3QpOworICAgICAgICByZXBsYXll
ci5yZXBsYXkoeyBGbG9hdFBvaW50Ojp6ZXJvKCksIGNhbnZhc0Jhc2UoKS5zaXplKCkgfSk7Cisg
ICAgICAgIGRpc3BsYXlMaXN0LmNsZWFyKCk7CiAgICAgfQogfQogCkBAIC0yMTE5LDggKzIwNjEs
OCBAQCBHcmFwaGljc0NvbnRleHQqIENhbnZhc1JlbmRlcmluZ0NvbnRleHQyREJhc2U6OmRyYXdp
bmdDb250ZXh0KCkgY29uc3QKIHsKICAgICBpZiAoVU5MSUtFTFkobV91c2VzRGlzcGxheUxpc3RE
cmF3aW5nKSkgewogICAgICAgICBpZiAoIW1fcmVjb3JkaW5nQ29udGV4dCkKLSAgICAgICAgICAg
IG1fcmVjb3JkaW5nQ29udGV4dCA9IG1ha2VVbmlxdWU8RGlzcGxheUxpc3REcmF3aW5nQ29udGV4
dD4oR3JhcGhpY3NDb250ZXh0U3RhdGUoKSwgRmxvYXRSZWN0KEZsb2F0UG9pbnQ6Onplcm8oKSwg
Y2FudmFzQmFzZSgpLnNpemUoKSkpOwotICAgICAgICByZXR1cm4gJm1fcmVjb3JkaW5nQ29udGV4
dC0+Y29udGV4dDsKKyAgICAgICAgICAgIG1fcmVjb3JkaW5nQ29udGV4dCA9IG1ha2VVbmlxdWU8
RGlzcGxheUxpc3Q6OkRyYXdpbmdDb250ZXh0PihjYW52YXNCYXNlKCkuc2l6ZSgpKTsKKyAgICAg
ICAgcmV0dXJuICZtX3JlY29yZGluZ0NvbnRleHQtPmNvbnRleHQoKTsKICAgICB9CiAKICAgICBy
ZXR1cm4gY2FudmFzQmFzZSgpLmRyYXdpbmdDb250ZXh0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlLmgKaW5k
ZXggZGIzZmFjOGIwOGI3MDNiZDU0MWZjNzJmNGQzMWJkNTE3NzM1MDRkMC4uYzZhODgwYmIzY2I5
MWQ2MGY2MzBjMzg0NzczM2E0NjIwYjQ5NmVjZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9jYW52YXMvQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEQmFzZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvY2FudmFzL0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyREJhc2UuaApAQCAtMjE5
LDEyICsyMTksNiBAQCBwdWJsaWM6CiAgICAgYm9vbCB1c2VzRGlzcGxheUxpc3REcmF3aW5nKCkg
Y29uc3QgeyByZXR1cm4gbV91c2VzRGlzcGxheUxpc3REcmF3aW5nOyB9OwogICAgIHZvaWQgc2V0
VXNlc0Rpc3BsYXlMaXN0RHJhd2luZyhib29sIGZsYWcpIHsgbV91c2VzRGlzcGxheUxpc3REcmF3
aW5nID0gZmxhZzsgfTsKIAotICAgIGJvb2wgdHJhY2tzRGlzcGxheUxpc3RSZXBsYXkoKSBjb25z
dCB7IHJldHVybiBtX3RyYWNrc0Rpc3BsYXlMaXN0UmVwbGF5OyB9Ci0gICAgdm9pZCBzZXRUcmFj
a3NEaXNwbGF5TGlzdFJlcGxheShib29sKTsKLQotICAgIFN0cmluZyBkaXNwbGF5TGlzdEFzVGV4
dChEaXNwbGF5TGlzdDo6QXNUZXh0RmxhZ3MpIGNvbnN0OwotICAgIFN0cmluZyByZXBsYXlEaXNw
bGF5TGlzdEFzVGV4dChEaXNwbGF5TGlzdDo6QXNUZXh0RmxhZ3MpIGNvbnN0OwotCiAgICAgdXNp
bmcgRGlyZWN0aW9uID0gQ2FudmFzRGlyZWN0aW9uOwogCiAgICAgY2xhc3MgRm9udFByb3h5IDog
cHVibGljIEZvbnRTZWxlY3RvckNsaWVudCB7CkBAIC0zODQsOCArMzc4LDcgQEAgcHJvdGVjdGVk
OgogICAgIHVuc2lnbmVkIG1fdW5yZWFsaXplZFNhdmVDb3VudCB7IDAgfTsKICAgICBib29sIG1f
dXNlc0NTU0NvbXBhdGliaWxpdHlQYXJzZU1vZGU7CiAgICAgYm9vbCBtX3VzZXNEaXNwbGF5TGlz
dERyYXdpbmcgeyBmYWxzZSB9OwotICAgIGJvb2wgbV90cmFja3NEaXNwbGF5TGlzdFJlcGxheSB7
IGZhbHNlIH07Ci0gICAgbXV0YWJsZSBzdGQ6OnVuaXF1ZV9wdHI8c3RydWN0IERpc3BsYXlMaXN0
RHJhd2luZ0NvbnRleHQ+IG1fcmVjb3JkaW5nQ29udGV4dDsKKyAgICBtdXRhYmxlIHN0ZDo6dW5p
cXVlX3B0cjxEaXNwbGF5TGlzdDo6RHJhd2luZ0NvbnRleHQ+IG1fcmVjb3JkaW5nQ29udGV4dDsK
IH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdERyYXdpbmdDb250ZXh0
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxh
eUxpc3REcmF3aW5nQ29udGV4dC5oCmluZGV4IGVkZmEzMWViNjc4NzJiY2ExYWUzNjljMzNhNDM4
MjZhZmNlNmNkMTAuLjM1MjFhOTNhNDAzNzU3NTc0MjdlOTNkOTRlZThjYTQxN2JjMGYwYzIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9E
aXNwbGF5TGlzdERyYXdpbmdDb250ZXh0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0RHJhd2luZ0NvbnRleHQuaApAQCAtMzMs
OCArMzMsOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBuYW1lc3BhY2UgRGlzcGxheUxpc3Qgewog
CiBjbGFzcyBEcmF3aW5nQ29udGV4dCB7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBw
dWJsaWM6Ci0gICAgV0VCQ09SRV9FWFBPUlQgRHJhd2luZ0NvbnRleHQoY29uc3QgRmxvYXRTaXpl
JiBsb2dpY2FsU2l6ZSwgUmVjb3JkZXI6Ok9ic2VydmVyKik7CisgICAgV0VCQ09SRV9FWFBPUlQg
RHJhd2luZ0NvbnRleHQoY29uc3QgRmxvYXRTaXplJiBsb2dpY2FsU2l6ZSwgUmVjb3JkZXI6Ok9i
c2VydmVyKiA9IG51bGxwdHIpOwogCiAgICAgR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0KCkgY29u
c3QgeyByZXR1cm4gY29uc3RfY2FzdDxEcmF3aW5nQ29udGV4dCY+KCp0aGlzKS5tX2NvbnRleHQ7
IH0KICAgICBXRUJDT1JFX0VYUE9SVCBSZWNvcmRlciYgcmVjb3JkZXIoKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>