<?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>178567</bug_id>
          
          <creation_ts>2017-10-19 22:11:18 -0700</creation_ts>
          <short_desc>When destroying a resource, register &quot;only&quot; the clients who are losing their resource as having pending resources</short_desc>
          <delta_ts>2017-10-20 13:34:33 -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>SVG</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>commit-queue</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1362560</commentid>
    <comment_count>0</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2017-10-19 22:11:18 -0700</bug_when>
    <thetext>In &lt;http://trac.webkit.org/changeset/95047&gt;, we tried to fix this issue. But instead of registering the clients of the destroyed resource, we registered all the clients in the cache as having pending resources.

In SVGResourcesCache::resourceDestroyed(), we call resourcesCacheFromRenderer() which returns a cache that maps &lt;RenderElement, SVGResources&gt;.
We loop through all the elements in the cache and we call SVGResources::resourceDestroyed() which will remove the reference to the destroyed resource if it&apos;s one of the resources of SVGResources
Then we call SVGDocumentExtensions::addPendingResource() with the ID of the destroyed resource and the Element of the RenderElement.

This is wrong if the SVGResources does not have a reference to the destroyed resource. It is waste of time to register the Element of the RenderElement to have a pending resources in this caae.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1362570</commentid>
    <comment_count>1</comment_count>
      <attachid>324358</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2017-10-19 22:31:34 -0700</bug_when>
    <thetext>Created attachment 324358
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1362574</commentid>
    <comment_count>2</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2017-10-19 22:34:05 -0700</bug_when>
    <thetext>&lt;rdar://problem/35064781&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1362772</commentid>
    <comment_count>3</comment_count>
      <attachid>324358</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2017-10-20 11:01:40 -0700</bug_when>
    <thetext>Comment on attachment 324358
Patch

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

&gt; Source/WebCore/rendering/svg/SVGResources.cpp:391
&gt;              m_clipperFilterMaskerData-&gt;masker = 0;

These 0 should all be nullptr, right?

&gt; Source/WebCore/rendering/svg/SVGResources.h:70
&gt; +    bool resourceDestroyed(RenderSVGResourceContainer&amp;);

Please add a comment saying what the return value means, or use an enum.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1362789</commentid>
    <comment_count>4</comment_count>
      <attachid>324424</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2017-10-20 12:02:19 -0700</bug_when>
    <thetext>Created attachment 324424
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1362840</commentid>
    <comment_count>5</comment_count>
      <attachid>324424</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-10-20 13:34:31 -0700</bug_when>
    <thetext>Comment on attachment 324424
Patch

Clearing flags on attachment: 324424

Committed r223789: &lt;https://trac.webkit.org/changeset/223789&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1362841</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-10-20 13:34:33 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>324358</attachid>
            <date>2017-10-19 22:31:34 -0700</date>
            <delta_ts>2017-10-20 12:02:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178567-20171019223134.patch</filename>
            <type>text/plain</type>
            <size>6996</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIzNTgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDdlNDZlNmQ0MzNiNzI3
NzE1OTMzNjRlYTEzNjcxZDBhMThlZjg2ZC4uYzU1YjYwYTY3MzE3MDJlMzM2YTgxNmZkZjIzZmNm
OWU2MjE3MTQ5NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE3LTEwLTE5ICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgV2hlbiBk
ZXN0cm95aW5nIGEgcmVzb3VyY2UsIHJlZ2lzdGVyICJvbmx5IiB0aGUgY2xpZW50cyB3aG8gYXJl
IGxvc2luZyB0aGVpciByZXNvdXJjZSBhcyBoYXZpbmcgcGVuZGluZyByZXNvdXJjZXMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODU2NworCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFNWR1Jlc291cmNlczo6
cmVzb3VyY2VEZXN0cm95ZWQoKSB3aWxsIHJldHVybiBhIGJvb2wgaW5kaWNhdGluZyB3aGV0aGVy
IAorICAgICAgICBpdCBoYWQgYSByZWZlcmVuY2UgdG8gdGhlIGRlc3Ryb3llZCByZXNvdXJjZSBv
ciBub3QuIElmIGl0IHJldHVybnMgdHJ1ZQorICAgICAgICBTVkdSZXNvdXJjZXNDYWNoZTo6cmVz
b3VyY2VEZXN0cm95ZWQoKSB3aWxsIHJlZ2lzdGVyIHRoZSBjbGllbnQgRWxlbWVudAorICAgICAg
ICBhcyBoYXZpbmcgcGVuZGluZyByZXNvdXJjZXMuCisKKyAgICAgICAgKiByZW5kZXJpbmcvc3Zn
L1NWR1Jlc291cmNlcy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdSZXNvdXJjZXM6OnJlc291
cmNlRGVzdHJveWVkKToKKyAgICAgICAgKiByZW5kZXJpbmcvc3ZnL1NWR1Jlc291cmNlcy5oOgor
ICAgICAgICAqIHJlbmRlcmluZy9zdmcvU1ZHUmVzb3VyY2VzQ2FjaGUuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6U1ZHUmVzb3VyY2VzQ2FjaGU6OnJlc291cmNlRGVzdHJveWVkKToKKwogMjAxNy0x
MC0xNiAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW0FwcGxlIFBh
eV0gQWRkIHN1YkxvY2FsaXR5IGFuZCBzdWJBZG1pbmlzdHJhdGl2ZUFyZWEgdG8gQXBwbGVQYXlQ
YXltZW50Q29udGFjdCBhbmQgQXBwbGVQYXlFcnJvcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N2Zy9TVkdSZXNvdXJjZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N2Zy9TVkdSZXNvdXJjZXMuY3BwCmluZGV4IGYwMjM3ZTM3YzAwYjJlMTYxOGRlYzkxYjBh
ZWYxMmRkZGEyYjA3NDAuLmZjNDEzZDAzMTFmZmY4ZDEyN2Q5N2YyNTA1NjY4MTQ3YTg1ZTNmN2Qg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHUmVzb3VyY2VzLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1Jlc291cmNlcy5jcHAKQEAg
LTM2NywxMCArMzY3LDEwIEBAIHZvaWQgU1ZHUmVzb3VyY2VzOjpyZW1vdmVDbGllbnRGcm9tQ2Fj
aGUoUmVuZGVyRWxlbWVudCYgcmVuZGVyZXIsIGJvb2wgbWFya0ZvckluCiAgICAgfQogfQogCi12
b2lkIFNWR1Jlc291cmNlczo6cmVzb3VyY2VEZXN0cm95ZWQoUmVuZGVyU1ZHUmVzb3VyY2VDb250
YWluZXImIHJlc291cmNlKQorYm9vbCBTVkdSZXNvdXJjZXM6OnJlc291cmNlRGVzdHJveWVkKFJl
bmRlclNWR1Jlc291cmNlQ29udGFpbmVyJiByZXNvdXJjZSkKIHsKICAgICBpZiAoIW1fY2xpcHBl
ckZpbHRlck1hc2tlckRhdGEgJiYgIW1fbWFya2VyRGF0YSAmJiAhbV9maWxsU3Ryb2tlRGF0YSAm
JiAhbV9saW5rZWRSZXNvdXJjZSkKLSAgICAgICAgcmV0dXJuOworICAgICAgICByZXR1cm4gZmFs
c2U7CiAKICAgICBpZiAobV9saW5rZWRSZXNvdXJjZSA9PSAmcmVzb3VyY2UpIHsKICAgICAgICAg
QVNTRVJUKCFtX2NsaXBwZXJGaWx0ZXJNYXNrZXJEYXRhKTsKQEAgLTM3OCw5ICszNzgsMTAgQEAg
dm9pZCBTVkdSZXNvdXJjZXM6OnJlc291cmNlRGVzdHJveWVkKFJlbmRlclNWR1Jlc291cmNlQ29u
dGFpbmVyJiByZXNvdXJjZSkKICAgICAgICAgQVNTRVJUKCFtX2ZpbGxTdHJva2VEYXRhKTsKICAg
ICAgICAgbV9saW5rZWRSZXNvdXJjZS0+cmVtb3ZlQWxsQ2xpZW50c0Zyb21DYWNoZSgpOwogICAg
ICAgICBtX2xpbmtlZFJlc291cmNlID0gMDsKLSAgICAgICAgcmV0dXJuOworICAgICAgICByZXR1
cm4gdHJ1ZTsKICAgICB9CiAKKyAgICBib29sIGZvdW5kID0gZmFsc2U7CiAgICAgc3dpdGNoIChy
ZXNvdXJjZS5yZXNvdXJjZVR5cGUoKSkgewogICAgIGNhc2UgTWFza2VyUmVzb3VyY2VUeXBlOgog
ICAgICAgICBpZiAoIW1fY2xpcHBlckZpbHRlck1hc2tlckRhdGEpCkBAIC0zODgsNiArMzg5LDcg
QEAgdm9pZCBTVkdSZXNvdXJjZXM6OnJlc291cmNlRGVzdHJveWVkKFJlbmRlclNWR1Jlc291cmNl
Q29udGFpbmVyJiByZXNvdXJjZSkKICAgICAgICAgaWYgKG1fY2xpcHBlckZpbHRlck1hc2tlckRh
dGEtPm1hc2tlciA9PSAmcmVzb3VyY2UpIHsKICAgICAgICAgICAgIG1fY2xpcHBlckZpbHRlck1h
c2tlckRhdGEtPm1hc2tlci0+cmVtb3ZlQWxsQ2xpZW50c0Zyb21DYWNoZSgpOwogICAgICAgICAg
ICAgbV9jbGlwcGVyRmlsdGVyTWFza2VyRGF0YS0+bWFza2VyID0gMDsKKyAgICAgICAgICAgIGZv
dW5kID0gdHJ1ZTsKICAgICAgICAgfQogICAgICAgICBicmVhazsKICAgICBjYXNlIE1hcmtlclJl
c291cmNlVHlwZToKQEAgLTM5NiwxNCArMzk4LDE3IEBAIHZvaWQgU1ZHUmVzb3VyY2VzOjpyZXNv
dXJjZURlc3Ryb3llZChSZW5kZXJTVkdSZXNvdXJjZUNvbnRhaW5lciYgcmVzb3VyY2UpCiAgICAg
ICAgIGlmIChtX21hcmtlckRhdGEtPm1hcmtlclN0YXJ0ID09ICZyZXNvdXJjZSkgewogICAgICAg
ICAgICAgbV9tYXJrZXJEYXRhLT5tYXJrZXJTdGFydC0+cmVtb3ZlQWxsQ2xpZW50c0Zyb21DYWNo
ZSgpOwogICAgICAgICAgICAgbV9tYXJrZXJEYXRhLT5tYXJrZXJTdGFydCA9IDA7CisgICAgICAg
ICAgICBmb3VuZCA9IHRydWU7CiAgICAgICAgIH0KICAgICAgICAgaWYgKG1fbWFya2VyRGF0YS0+
bWFya2VyTWlkID09ICZyZXNvdXJjZSkgewogICAgICAgICAgICAgbV9tYXJrZXJEYXRhLT5tYXJr
ZXJNaWQtPnJlbW92ZUFsbENsaWVudHNGcm9tQ2FjaGUoKTsKICAgICAgICAgICAgIG1fbWFya2Vy
RGF0YS0+bWFya2VyTWlkID0gMDsKKyAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTsKICAgICAgICAg
fQogICAgICAgICBpZiAobV9tYXJrZXJEYXRhLT5tYXJrZXJFbmQgPT0gJnJlc291cmNlKSB7CiAg
ICAgICAgICAgICBtX21hcmtlckRhdGEtPm1hcmtlckVuZC0+cmVtb3ZlQWxsQ2xpZW50c0Zyb21D
YWNoZSgpOwogICAgICAgICAgICAgbV9tYXJrZXJEYXRhLT5tYXJrZXJFbmQgPSAwOworICAgICAg
ICAgICAgZm91bmQgPSB0cnVlOwogICAgICAgICB9CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2Ug
UGF0dGVyblJlc291cmNlVHlwZToKQEAgLTQxNCwxMCArNDE5LDEyIEBAIHZvaWQgU1ZHUmVzb3Vy
Y2VzOjpyZXNvdXJjZURlc3Ryb3llZChSZW5kZXJTVkdSZXNvdXJjZUNvbnRhaW5lciYgcmVzb3Vy
Y2UpCiAgICAgICAgIGlmIChtX2ZpbGxTdHJva2VEYXRhLT5maWxsID09ICZyZXNvdXJjZSkgewog
ICAgICAgICAgICAgbV9maWxsU3Ryb2tlRGF0YS0+ZmlsbC0+cmVtb3ZlQWxsQ2xpZW50c0Zyb21D
YWNoZSgpOwogICAgICAgICAgICAgbV9maWxsU3Ryb2tlRGF0YS0+ZmlsbCA9IDA7CisgICAgICAg
ICAgICBmb3VuZCA9IHRydWU7CiAgICAgICAgIH0KICAgICAgICAgaWYgKG1fZmlsbFN0cm9rZURh
dGEtPnN0cm9rZSA9PSAmcmVzb3VyY2UpIHsKICAgICAgICAgICAgIG1fZmlsbFN0cm9rZURhdGEt
PnN0cm9rZS0+cmVtb3ZlQWxsQ2xpZW50c0Zyb21DYWNoZSgpOwogICAgICAgICAgICAgbV9maWxs
U3Ryb2tlRGF0YS0+c3Ryb2tlID0gMDsKKyAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTsKICAgICAg
ICAgfQogICAgICAgICBicmVhazsKICAgICBjYXNlIEZpbHRlclJlc291cmNlVHlwZToKQEAgLTQy
Niw2ICs0MzMsNyBAQCB2b2lkIFNWR1Jlc291cmNlczo6cmVzb3VyY2VEZXN0cm95ZWQoUmVuZGVy
U1ZHUmVzb3VyY2VDb250YWluZXImIHJlc291cmNlKQogICAgICAgICBpZiAobV9jbGlwcGVyRmls
dGVyTWFza2VyRGF0YS0+ZmlsdGVyID09ICZyZXNvdXJjZSkgewogICAgICAgICAgICAgbV9jbGlw
cGVyRmlsdGVyTWFza2VyRGF0YS0+ZmlsdGVyLT5yZW1vdmVBbGxDbGllbnRzRnJvbUNhY2hlKCk7
CiAgICAgICAgICAgICBtX2NsaXBwZXJGaWx0ZXJNYXNrZXJEYXRhLT5maWx0ZXIgPSAwOworICAg
ICAgICAgICAgZm91bmQgPSB0cnVlOwogICAgICAgICB9CiAgICAgICAgIGJyZWFrOwogICAgIGNh
c2UgQ2xpcHBlclJlc291cmNlVHlwZToKQEAgLTQzNCwxMSArNDQyLDEzIEBAIHZvaWQgU1ZHUmVz
b3VyY2VzOjpyZXNvdXJjZURlc3Ryb3llZChSZW5kZXJTVkdSZXNvdXJjZUNvbnRhaW5lciYgcmVz
b3VyY2UpCiAgICAgICAgIGlmIChtX2NsaXBwZXJGaWx0ZXJNYXNrZXJEYXRhLT5jbGlwcGVyID09
ICZyZXNvdXJjZSkgewogICAgICAgICAgICAgbV9jbGlwcGVyRmlsdGVyTWFza2VyRGF0YS0+Y2xp
cHBlci0+cmVtb3ZlQWxsQ2xpZW50c0Zyb21DYWNoZSgpOwogICAgICAgICAgICAgbV9jbGlwcGVy
RmlsdGVyTWFza2VyRGF0YS0+Y2xpcHBlciA9IDA7CisgICAgICAgICAgICBmb3VuZCA9IHRydWU7
CiAgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBTb2xpZENvbG9yUmVzb3VyY2VU
eXBlOgogICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICB9CisgICAgfSAgICAKKyAg
ICByZXR1cm4gZm91bmQ7CiB9CiAKIHZvaWQgU1ZHUmVzb3VyY2VzOjpidWlsZFNldE9mUmVzb3Vy
Y2VzKEhhc2hTZXQ8UmVuZGVyU1ZHUmVzb3VyY2VDb250YWluZXIqPiYgc2V0KQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9TVkdSZXNvdXJjZXMuaCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHUmVzb3VyY2VzLmgKaW5kZXggMzY1ZGIxYjY2YjVlNDIy
NDljZTk1N2EwZDY4MTg0M2Q5ZDNhNDcxNy4uNjIxM2IwMzE3MjY4NzUxZDUyOGJiMGM1MDFlMjhi
ZWUyMzVhOGY3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9TVkdS
ZXNvdXJjZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1Jlc291cmNl
cy5oCkBAIC02Nyw3ICs2Nyw3IEBAIHB1YmxpYzoKIAogICAgIC8vIE1ldGhvZHMgb3BlcmF0aW5n
IG9uIGFsbCBjYWNoZWQgcmVzb3VyY2VzCiAgICAgdm9pZCByZW1vdmVDbGllbnRGcm9tQ2FjaGUo
UmVuZGVyRWxlbWVudCYsIGJvb2wgbWFya0ZvckludmFsaWRhdGlvbiA9IHRydWUpIGNvbnN0Owot
ICAgIHZvaWQgcmVzb3VyY2VEZXN0cm95ZWQoUmVuZGVyU1ZHUmVzb3VyY2VDb250YWluZXImKTsK
KyAgICBib29sIHJlc291cmNlRGVzdHJveWVkKFJlbmRlclNWR1Jlc291cmNlQ29udGFpbmVyJik7
CiAKICNpZiBFTkFCTEUoVFJFRV9ERUJVR0dJTkcpCiAgICAgdm9pZCBkdW1wKGNvbnN0IFJlbmRl
ck9iamVjdCopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9TVkdS
ZXNvdXJjZXNDYWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1Jlc291
cmNlc0NhY2hlLmNwcAppbmRleCA4M2Q5MTJlZWJlOGZlNDI4Mzg2OGQyZDEzYWRjNDM5MjhkYTI1
OTY3Li5hZDg4YTQxNjg2NGU5YWZiOWQ3Yzk2Yzc3MjJjN2M3NDE4ZDY0ZjJmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1Jlc291cmNlc0NhY2hlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1Jlc291cmNlc0NhY2hlLmNwcApAQCAt
MTY1LDEyICsxNjUsMTIgQEAgdm9pZCBTVkdSZXNvdXJjZXNDYWNoZTo6cmVzb3VyY2VEZXN0cm95
ZWQoUmVuZGVyU1ZHUmVzb3VyY2VDb250YWluZXImIHJlc291cmNlKQogICAgIGNhY2hlLnJlbW92
ZVJlc291cmNlc0Zyb21SZW5kZXJlcihyZXNvdXJjZSk7CiAKICAgICBmb3IgKGF1dG8mIGl0IDog
Y2FjaGUubV9jYWNoZSkgewotICAgICAgICBpdC52YWx1ZS0+cmVzb3VyY2VEZXN0cm95ZWQocmVz
b3VyY2UpOwotCi0gICAgICAgIC8vIE1hcmsgdXNlcnMgb2YgZGVzdHJveWVkIHJlc291cmNlcyBh
cyBwZW5kaW5nIHJlc29sdXRpb24gYmFzZWQgb24gdGhlIGlkIG9mIHRoZSBvbGQgcmVzb3VyY2Uu
Ci0gICAgICAgIEVsZW1lbnQmIHJlc291cmNlRWxlbWVudCA9IHJlc291cmNlLmVsZW1lbnQoKTsK
LSAgICAgICAgRWxlbWVudCogY2xpZW50RWxlbWVudCA9IGl0LmtleS0+ZWxlbWVudCgpOwotICAg
ICAgICBjbGllbnRFbGVtZW50LT5kb2N1bWVudCgpLmFjY2Vzc1NWR0V4dGVuc2lvbnMoKS5hZGRQ
ZW5kaW5nUmVzb3VyY2UocmVzb3VyY2VFbGVtZW50LmdldElkQXR0cmlidXRlKCksIGNsaWVudEVs
ZW1lbnQpOworICAgICAgICBpZiAoaXQudmFsdWUtPnJlc291cmNlRGVzdHJveWVkKHJlc291cmNl
KSkgeworICAgICAgICAgICAgLy8gTWFyayB1c2VycyBvZiBkZXN0cm95ZWQgcmVzb3VyY2VzIGFz
IHBlbmRpbmcgcmVzb2x1dGlvbiBiYXNlZCBvbiB0aGUgaWQgb2YgdGhlIG9sZCByZXNvdXJjZS4K
KyAgICAgICAgICAgIEVsZW1lbnQmIHJlc291cmNlRWxlbWVudCA9IHJlc291cmNlLmVsZW1lbnQo
KTsKKyAgICAgICAgICAgIEVsZW1lbnQqIGNsaWVudEVsZW1lbnQgPSBpdC5rZXktPmVsZW1lbnQo
KTsKKyAgICAgICAgICAgIGNsaWVudEVsZW1lbnQtPmRvY3VtZW50KCkuYWNjZXNzU1ZHRXh0ZW5z
aW9ucygpLmFkZFBlbmRpbmdSZXNvdXJjZShyZXNvdXJjZUVsZW1lbnQuZ2V0SWRBdHRyaWJ1dGUo
KSwgY2xpZW50RWxlbWVudCk7CisgICAgICAgIH0KICAgICB9CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>324424</attachid>
            <date>2017-10-20 12:02:19 -0700</date>
            <delta_ts>2017-10-20 13:34:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178567-20171020120219.patch</filename>
            <type>text/plain</type>
            <size>14795</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIzNTgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDdlNDZlNmQ0MzNiNzI3
NzE1OTMzNjRlYTEzNjcxZDBhMThlZjg2ZC4uNTZlM2QzYWJjMTU1Nzg0Y2VhNTFhYWJkZmQyNmY5
MTFiMzM3ZTg3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDE3LTEwLTIwICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgV2hlbiBk
ZXN0cm95aW5nIGEgcmVzb3VyY2UsIHJlZ2lzdGVyICJvbmx5IiB0aGUgY2xpZW50cyB3aG8gYXJl
IGxvc2luZyB0aGVpciByZXNvdXJjZSBhcyBoYXZpbmcgcGVuZGluZyByZXNvdXJjZXMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODU2NworICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vMzUwNjQ3ODE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24g
RnJhc2VyLgorCisgICAgICAgIFNWR1Jlc291cmNlczo6cmVzb3VyY2VEZXN0cm95ZWQoKSB3aWxs
IHJldHVybiBhIGJvb2wgaW5kaWNhdGluZyB3aGV0aGVyIAorICAgICAgICBpdCBoYWQgYSByZWZl
cmVuY2UgdG8gdGhlIGRlc3Ryb3llZCByZXNvdXJjZSBvciBub3QuIElmIGl0IHJldHVybnMgdHJ1
ZQorICAgICAgICBTVkdSZXNvdXJjZXNDYWNoZTo6cmVzb3VyY2VEZXN0cm95ZWQoKSB3aWxsIHJl
Z2lzdGVyIHRoZSBjbGllbnQgRWxlbWVudAorICAgICAgICBhcyBoYXZpbmcgcGVuZGluZyByZXNv
dXJjZXMuCisKKyAgICAgICAgKiByZW5kZXJpbmcvc3ZnL1NWR1Jlc291cmNlcy5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpwYWludGluZ1Jlc291cmNlRnJvbVNWR1BhaW50KToKKyAgICAgICAgKFdl
YkNvcmU6OlNWR1Jlc291cmNlczo6cmVtb3ZlQ2xpZW50RnJvbUNhY2hlIGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OlNWR1Jlc291cmNlczo6cmVzb3VyY2VEZXN0cm95ZWQpOgorICAgICAgICAo
V2ViQ29yZTo6U1ZHUmVzb3VyY2VzOjpidWlsZFNldE9mUmVzb3VyY2VzKToKKyAgICAgICAgKFdl
YkNvcmU6OlNWR1Jlc291cmNlczo6cmVzZXRDbGlwcGVyKToKKyAgICAgICAgKFdlYkNvcmU6OlNW
R1Jlc291cmNlczo6cmVzZXRGaWx0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHUmVzb3VyY2Vz
OjpyZXNldE1hcmtlclN0YXJ0KToKKyAgICAgICAgKFdlYkNvcmU6OlNWR1Jlc291cmNlczo6cmVz
ZXRNYXJrZXJNaWQpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHUmVzb3VyY2VzOjpyZXNldE1hcmtl
ckVuZCk6CisgICAgICAgIChXZWJDb3JlOjpTVkdSZXNvdXJjZXM6OnJlc2V0TWFza2VyKToKKyAg
ICAgICAgKFdlYkNvcmU6OlNWR1Jlc291cmNlczo6cmVzZXRGaWxsKToKKyAgICAgICAgKFdlYkNv
cmU6OlNWR1Jlc291cmNlczo6cmVzZXRTdHJva2UpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHUmVz
b3VyY2VzOjpyZXNldExpbmtlZFJlc291cmNlKToKKyAgICAgICAgKiByZW5kZXJpbmcvc3ZnL1NW
R1Jlc291cmNlcy5oOgorICAgICAgICAoV2ViQ29yZTo6U1ZHUmVzb3VyY2VzOjppc0VtcHR5IGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlNWR1Jlc291cmNlczo6Q2xpcHBlckZpbHRlck1hc2tl
ckRhdGE6OkNsaXBwZXJGaWx0ZXJNYXNrZXJEYXRhKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OlNWR1Jlc291cmNlczo6TWFya2VyRGF0YTo6TWFya2VyRGF0YSk6IERlbGV0ZWQuCisgICAg
ICAgIChXZWJDb3JlOjpTVkdSZXNvdXJjZXM6OkZpbGxTdHJva2VEYXRhOjpGaWxsU3Ryb2tlRGF0
YSk6IERlbGV0ZWQuCisgICAgICAgICogcmVuZGVyaW5nL3N2Zy9TVkdSZXNvdXJjZXNDYWNoZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdSZXNvdXJjZXNDYWNoZTo6cmVzb3VyY2VEZXN0cm95
ZWQpOgorCiAyMDE3LTEwLTE2ICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KIAogICAg
ICAgICBbQXBwbGUgUGF5XSBBZGQgc3ViTG9jYWxpdHkgYW5kIHN1YkFkbWluaXN0cmF0aXZlQXJl
YSB0byBBcHBsZVBheVBheW1lbnRDb250YWN0IGFuZCBBcHBsZVBheUVycm9yCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1Jlc291cmNlcy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1Jlc291cmNlcy5jcHAKaW5kZXggZjAyMzdlMzdjMDBi
MmUxNjE4ZGVjOTFiMGFlZjEyZGRkYTJiMDc0MC4uOGFlNjFjOGY1MWY2OGE0MDhmMzI4OTZjZjJk
YzQ4OTU4YWQwMTNiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9T
VkdSZXNvdXJjZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHUmVz
b3VyY2VzLmNwcApAQCAtMTcxLDE4ICsxNzEsMTggQEAgc3RhdGljIGlubGluZSBib29sIGlzQ2hh
aW5hYmxlUmVzb3VyY2UoY29uc3QgU1ZHRWxlbWVudCYgZWxlbWVudCwgY29uc3QgU1ZHRWxlbWUK
IHN0YXRpYyBpbmxpbmUgUmVuZGVyU1ZHUmVzb3VyY2VDb250YWluZXIqIHBhaW50aW5nUmVzb3Vy
Y2VGcm9tU1ZHUGFpbnQoRG9jdW1lbnQmIGRvY3VtZW50LCBjb25zdCBTVkdQYWludFR5cGUmIHBh
aW50VHlwZSwgY29uc3QgU3RyaW5nJiBwYWludFVyaSwgQXRvbWljU3RyaW5nJiBpZCwgYm9vbCYg
aGFzUGVuZGluZ1Jlc291cmNlKQogewogICAgIGlmIChwYWludFR5cGUgIT0gU1ZHX1BBSU5UVFlQ
RV9VUkkgJiYgcGFpbnRUeXBlICE9IFNWR19QQUlOVFRZUEVfVVJJX1JHQkNPTE9SICYmIHBhaW50
VHlwZSAhPSBTVkdfUEFJTlRUWVBFX1VSSV9DVVJSRU5UQ09MT1IpCi0gICAgICAgIHJldHVybiAw
OworICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAogICAgIGlkID0gU1ZHVVJJUmVmZXJlbmNlOjpm
cmFnbWVudElkZW50aWZpZXJGcm9tSVJJU3RyaW5nKHBhaW50VXJpLCBkb2N1bWVudCk7CiAgICAg
UmVuZGVyU1ZHUmVzb3VyY2VDb250YWluZXIqIGNvbnRhaW5lciA9IGdldFJlbmRlclNWR1Jlc291
cmNlQ29udGFpbmVyQnlJZChkb2N1bWVudCwgaWQpOwogICAgIGlmICghY29udGFpbmVyKSB7CiAg
ICAgICAgIGhhc1BlbmRpbmdSZXNvdXJjZSA9IHRydWU7Ci0gICAgICAgIHJldHVybiAwOworICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9CiAKICAgICBSZW5kZXJTVkdSZXNvdXJjZVR5cGUg
cmVzb3VyY2VUeXBlID0gY29udGFpbmVyLT5yZXNvdXJjZVR5cGUoKTsKICAgICBpZiAocmVzb3Vy
Y2VUeXBlICE9IFBhdHRlcm5SZXNvdXJjZVR5cGUgJiYgcmVzb3VyY2VUeXBlICE9IExpbmVhckdy
YWRpZW50UmVzb3VyY2VUeXBlICYmIHJlc291cmNlVHlwZSAhPSBSYWRpYWxHcmFkaWVudFJlc291
cmNlVHlwZSkKLSAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiBudWxscHRyOwogCiAg
ICAgcmV0dXJuIGNvbnRhaW5lcjsKIH0KQEAgLTMzMCw3ICszMzAsNyBAQCBib29sIFNWR1Jlc291
cmNlczo6bWFya2VyUmV2ZXJzZVN0YXJ0KCkgY29uc3QKIAogdm9pZCBTVkdSZXNvdXJjZXM6OnJl
bW92ZUNsaWVudEZyb21DYWNoZShSZW5kZXJFbGVtZW50JiByZW5kZXJlciwgYm9vbCBtYXJrRm9y
SW52YWxpZGF0aW9uKSBjb25zdAogewotICAgIGlmICghbV9jbGlwcGVyRmlsdGVyTWFza2VyRGF0
YSAmJiAhbV9tYXJrZXJEYXRhICYmICFtX2ZpbGxTdHJva2VEYXRhICYmICFtX2xpbmtlZFJlc291
cmNlKQorICAgIGlmIChpc0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmIChtX2xp
bmtlZFJlc291cmNlKSB7CkBAIC0zNjcsMjcgKzM2NywyOSBAQCB2b2lkIFNWR1Jlc291cmNlczo6
cmVtb3ZlQ2xpZW50RnJvbUNhY2hlKFJlbmRlckVsZW1lbnQmIHJlbmRlcmVyLCBib29sIG1hcmtG
b3JJbgogICAgIH0KIH0KIAotdm9pZCBTVkdSZXNvdXJjZXM6OnJlc291cmNlRGVzdHJveWVkKFJl
bmRlclNWR1Jlc291cmNlQ29udGFpbmVyJiByZXNvdXJjZSkKK2Jvb2wgU1ZHUmVzb3VyY2VzOjpy
ZXNvdXJjZURlc3Ryb3llZChSZW5kZXJTVkdSZXNvdXJjZUNvbnRhaW5lciYgcmVzb3VyY2UpCiB7
Ci0gICAgaWYgKCFtX2NsaXBwZXJGaWx0ZXJNYXNrZXJEYXRhICYmICFtX21hcmtlckRhdGEgJiYg
IW1fZmlsbFN0cm9rZURhdGEgJiYgIW1fbGlua2VkUmVzb3VyY2UpCi0gICAgICAgIHJldHVybjsK
KyAgICBpZiAoaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICBpZiAobV9s
aW5rZWRSZXNvdXJjZSA9PSAmcmVzb3VyY2UpIHsKICAgICAgICAgQVNTRVJUKCFtX2NsaXBwZXJG
aWx0ZXJNYXNrZXJEYXRhKTsKICAgICAgICAgQVNTRVJUKCFtX21hcmtlckRhdGEpOwogICAgICAg
ICBBU1NFUlQoIW1fZmlsbFN0cm9rZURhdGEpOwogICAgICAgICBtX2xpbmtlZFJlc291cmNlLT5y
ZW1vdmVBbGxDbGllbnRzRnJvbUNhY2hlKCk7Ci0gICAgICAgIG1fbGlua2VkUmVzb3VyY2UgPSAw
OwotICAgICAgICByZXR1cm47CisgICAgICAgIG1fbGlua2VkUmVzb3VyY2UgPSBudWxscHRyOwor
ICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAKKyAgICBib29sIGZvdW5kUmVzb3VyY2VzID0g
ZmFsc2U7CiAgICAgc3dpdGNoIChyZXNvdXJjZS5yZXNvdXJjZVR5cGUoKSkgewogICAgIGNhc2Ug
TWFza2VyUmVzb3VyY2VUeXBlOgogICAgICAgICBpZiAoIW1fY2xpcHBlckZpbHRlck1hc2tlckRh
dGEpCiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgaWYgKG1fY2xpcHBlckZpbHRlck1hc2tl
ckRhdGEtPm1hc2tlciA9PSAmcmVzb3VyY2UpIHsKICAgICAgICAgICAgIG1fY2xpcHBlckZpbHRl
ck1hc2tlckRhdGEtPm1hc2tlci0+cmVtb3ZlQWxsQ2xpZW50c0Zyb21DYWNoZSgpOwotICAgICAg
ICAgICAgbV9jbGlwcGVyRmlsdGVyTWFza2VyRGF0YS0+bWFza2VyID0gMDsKKyAgICAgICAgICAg
IG1fY2xpcHBlckZpbHRlck1hc2tlckRhdGEtPm1hc2tlciA9IG51bGxwdHI7CisgICAgICAgICAg
ICBmb3VuZFJlc291cmNlcyA9IHRydWU7CiAgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAgICAg
Y2FzZSBNYXJrZXJSZXNvdXJjZVR5cGU6CkBAIC0zOTUsMTUgKzM5NywxOCBAQCB2b2lkIFNWR1Jl
c291cmNlczo6cmVzb3VyY2VEZXN0cm95ZWQoUmVuZGVyU1ZHUmVzb3VyY2VDb250YWluZXImIHJl
c291cmNlKQogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGlmIChtX21hcmtlckRhdGEtPm1h
cmtlclN0YXJ0ID09ICZyZXNvdXJjZSkgewogICAgICAgICAgICAgbV9tYXJrZXJEYXRhLT5tYXJr
ZXJTdGFydC0+cmVtb3ZlQWxsQ2xpZW50c0Zyb21DYWNoZSgpOwotICAgICAgICAgICAgbV9tYXJr
ZXJEYXRhLT5tYXJrZXJTdGFydCA9IDA7CisgICAgICAgICAgICBtX21hcmtlckRhdGEtPm1hcmtl
clN0YXJ0ID0gbnVsbHB0cjsKKyAgICAgICAgICAgIGZvdW5kUmVzb3VyY2VzID0gdHJ1ZTsKICAg
ICAgICAgfQogICAgICAgICBpZiAobV9tYXJrZXJEYXRhLT5tYXJrZXJNaWQgPT0gJnJlc291cmNl
KSB7CiAgICAgICAgICAgICBtX21hcmtlckRhdGEtPm1hcmtlck1pZC0+cmVtb3ZlQWxsQ2xpZW50
c0Zyb21DYWNoZSgpOwotICAgICAgICAgICAgbV9tYXJrZXJEYXRhLT5tYXJrZXJNaWQgPSAwOwor
ICAgICAgICAgICAgbV9tYXJrZXJEYXRhLT5tYXJrZXJNaWQgPSBudWxscHRyOworICAgICAgICAg
ICAgZm91bmRSZXNvdXJjZXMgPSB0cnVlOwogICAgICAgICB9CiAgICAgICAgIGlmIChtX21hcmtl
ckRhdGEtPm1hcmtlckVuZCA9PSAmcmVzb3VyY2UpIHsKICAgICAgICAgICAgIG1fbWFya2VyRGF0
YS0+bWFya2VyRW5kLT5yZW1vdmVBbGxDbGllbnRzRnJvbUNhY2hlKCk7Ci0gICAgICAgICAgICBt
X21hcmtlckRhdGEtPm1hcmtlckVuZCA9IDA7CisgICAgICAgICAgICBtX21hcmtlckRhdGEtPm1h
cmtlckVuZCA9IG51bGxwdHI7CisgICAgICAgICAgICBmb3VuZFJlc291cmNlcyA9IHRydWU7CiAg
ICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBQYXR0ZXJuUmVzb3VyY2VUeXBlOgpA
QCAtNDEzLDExICs0MTgsMTMgQEAgdm9pZCBTVkdSZXNvdXJjZXM6OnJlc291cmNlRGVzdHJveWVk
KFJlbmRlclNWR1Jlc291cmNlQ29udGFpbmVyJiByZXNvdXJjZSkKICAgICAgICAgICAgIGJyZWFr
OwogICAgICAgICBpZiAobV9maWxsU3Ryb2tlRGF0YS0+ZmlsbCA9PSAmcmVzb3VyY2UpIHsKICAg
ICAgICAgICAgIG1fZmlsbFN0cm9rZURhdGEtPmZpbGwtPnJlbW92ZUFsbENsaWVudHNGcm9tQ2Fj
aGUoKTsKLSAgICAgICAgICAgIG1fZmlsbFN0cm9rZURhdGEtPmZpbGwgPSAwOworICAgICAgICAg
ICAgbV9maWxsU3Ryb2tlRGF0YS0+ZmlsbCA9IG51bGxwdHI7CisgICAgICAgICAgICBmb3VuZFJl
c291cmNlcyA9IHRydWU7CiAgICAgICAgIH0KICAgICAgICAgaWYgKG1fZmlsbFN0cm9rZURhdGEt
PnN0cm9rZSA9PSAmcmVzb3VyY2UpIHsKICAgICAgICAgICAgIG1fZmlsbFN0cm9rZURhdGEtPnN0
cm9rZS0+cmVtb3ZlQWxsQ2xpZW50c0Zyb21DYWNoZSgpOwotICAgICAgICAgICAgbV9maWxsU3Ry
b2tlRGF0YS0+c3Ryb2tlID0gMDsKKyAgICAgICAgICAgIG1fZmlsbFN0cm9rZURhdGEtPnN0cm9r
ZSA9IG51bGxwdHI7CisgICAgICAgICAgICBmb3VuZFJlc291cmNlcyA9IHRydWU7CiAgICAgICAg
IH0KICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBGaWx0ZXJSZXNvdXJjZVR5cGU6CkBAIC00MjUs
NyArNDMyLDggQEAgdm9pZCBTVkdSZXNvdXJjZXM6OnJlc291cmNlRGVzdHJveWVkKFJlbmRlclNW
R1Jlc291cmNlQ29udGFpbmVyJiByZXNvdXJjZSkKICAgICAgICAgICAgIGJyZWFrOwogICAgICAg
ICBpZiAobV9jbGlwcGVyRmlsdGVyTWFza2VyRGF0YS0+ZmlsdGVyID09ICZyZXNvdXJjZSkgewog
ICAgICAgICAgICAgbV9jbGlwcGVyRmlsdGVyTWFza2VyRGF0YS0+ZmlsdGVyLT5yZW1vdmVBbGxD
bGllbnRzRnJvbUNhY2hlKCk7Ci0gICAgICAgICAgICBtX2NsaXBwZXJGaWx0ZXJNYXNrZXJEYXRh
LT5maWx0ZXIgPSAwOworICAgICAgICAgICAgbV9jbGlwcGVyRmlsdGVyTWFza2VyRGF0YS0+Zmls
dGVyID0gbnVsbHB0cjsKKyAgICAgICAgICAgIGZvdW5kUmVzb3VyY2VzID0gdHJ1ZTsKICAgICAg
ICAgfQogICAgICAgICBicmVhazsKICAgICBjYXNlIENsaXBwZXJSZXNvdXJjZVR5cGU6CkBAIC00
MzMsMTcgKzQ0MSwxOSBAQCB2b2lkIFNWR1Jlc291cmNlczo6cmVzb3VyY2VEZXN0cm95ZWQoUmVu
ZGVyU1ZHUmVzb3VyY2VDb250YWluZXImIHJlc291cmNlKQogICAgICAgICAgICAgYnJlYWs7IAog
ICAgICAgICBpZiAobV9jbGlwcGVyRmlsdGVyTWFza2VyRGF0YS0+Y2xpcHBlciA9PSAmcmVzb3Vy
Y2UpIHsKICAgICAgICAgICAgIG1fY2xpcHBlckZpbHRlck1hc2tlckRhdGEtPmNsaXBwZXItPnJl
bW92ZUFsbENsaWVudHNGcm9tQ2FjaGUoKTsKLSAgICAgICAgICAgIG1fY2xpcHBlckZpbHRlck1h
c2tlckRhdGEtPmNsaXBwZXIgPSAwOworICAgICAgICAgICAgbV9jbGlwcGVyRmlsdGVyTWFza2Vy
RGF0YS0+Y2xpcHBlciA9IG51bGxwdHI7CisgICAgICAgICAgICBmb3VuZFJlc291cmNlcyA9IHRy
dWU7CiAgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBTb2xpZENvbG9yUmVzb3Vy
Y2VUeXBlOgogICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICB9CisgICAgcmV0dXJu
IGZvdW5kUmVzb3VyY2VzOwogfQogCiB2b2lkIFNWR1Jlc291cmNlczo6YnVpbGRTZXRPZlJlc291
cmNlcyhIYXNoU2V0PFJlbmRlclNWR1Jlc291cmNlQ29udGFpbmVyKj4mIHNldCkKIHsKLSAgICBp
ZiAoIW1fY2xpcHBlckZpbHRlck1hc2tlckRhdGEgJiYgIW1fbWFya2VyRGF0YSAmJiAhbV9maWxs
U3Ryb2tlRGF0YSAmJiAhbV9saW5rZWRSZXNvdXJjZSkKKyAgICBpZiAoaXNFbXB0eSgpKQogICAg
ICAgICByZXR1cm47CiAKICAgICBpZiAobV9saW5rZWRSZXNvdXJjZSkgewpAQCAtNDk4LDcgKzUw
OCw3IEBAIHZvaWQgU1ZHUmVzb3VyY2VzOjpyZXNldENsaXBwZXIoKQogewogICAgIEFTU0VSVCht
X2NsaXBwZXJGaWx0ZXJNYXNrZXJEYXRhKTsKICAgICBBU1NFUlQobV9jbGlwcGVyRmlsdGVyTWFz
a2VyRGF0YS0+Y2xpcHBlcik7Ci0gICAgbV9jbGlwcGVyRmlsdGVyTWFza2VyRGF0YS0+Y2xpcHBl
ciA9IDA7CisgICAgbV9jbGlwcGVyRmlsdGVyTWFza2VyRGF0YS0+Y2xpcHBlciA9IG51bGxwdHI7
CiB9CiAKIGJvb2wgU1ZHUmVzb3VyY2VzOjpzZXRGaWx0ZXIoUmVuZGVyU1ZHUmVzb3VyY2VGaWx0
ZXIqIGZpbHRlcikKQEAgLTUxOSw3ICs1MjksNyBAQCB2b2lkIFNWR1Jlc291cmNlczo6cmVzZXRG
aWx0ZXIoKQogewogICAgIEFTU0VSVChtX2NsaXBwZXJGaWx0ZXJNYXNrZXJEYXRhKTsKICAgICBB
U1NFUlQobV9jbGlwcGVyRmlsdGVyTWFza2VyRGF0YS0+ZmlsdGVyKTsKLSAgICBtX2NsaXBwZXJG
aWx0ZXJNYXNrZXJEYXRhLT5maWx0ZXIgPSAwOworICAgIG1fY2xpcHBlckZpbHRlck1hc2tlckRh
dGEtPmZpbHRlciA9IG51bGxwdHI7CiB9CiAKIGJvb2wgU1ZHUmVzb3VyY2VzOjpzZXRNYXJrZXJT
dGFydChSZW5kZXJTVkdSZXNvdXJjZU1hcmtlciogbWFya2VyU3RhcnQpCkBAIC01NDAsNyArNTUw
LDcgQEAgdm9pZCBTVkdSZXNvdXJjZXM6OnJlc2V0TWFya2VyU3RhcnQoKQogewogICAgIEFTU0VS
VChtX21hcmtlckRhdGEpOwogICAgIEFTU0VSVChtX21hcmtlckRhdGEtPm1hcmtlclN0YXJ0KTsK
LSAgICBtX21hcmtlckRhdGEtPm1hcmtlclN0YXJ0ID0gMDsKKyAgICBtX21hcmtlckRhdGEtPm1h
cmtlclN0YXJ0ID0gbnVsbHB0cjsKIH0KIAogYm9vbCBTVkdSZXNvdXJjZXM6OnNldE1hcmtlck1p
ZChSZW5kZXJTVkdSZXNvdXJjZU1hcmtlciogbWFya2VyTWlkKQpAQCAtNTYxLDcgKzU3MSw3IEBA
IHZvaWQgU1ZHUmVzb3VyY2VzOjpyZXNldE1hcmtlck1pZCgpCiB7CiAgICAgQVNTRVJUKG1fbWFy
a2VyRGF0YSk7CiAgICAgQVNTRVJUKG1fbWFya2VyRGF0YS0+bWFya2VyTWlkKTsKLSAgICBtX21h
cmtlckRhdGEtPm1hcmtlck1pZCA9IDA7CisgICAgbV9tYXJrZXJEYXRhLT5tYXJrZXJNaWQgPSBu
dWxscHRyOwogfQogCiBib29sIFNWR1Jlc291cmNlczo6c2V0TWFya2VyRW5kKFJlbmRlclNWR1Jl
c291cmNlTWFya2VyKiBtYXJrZXJFbmQpCkBAIC01ODIsNyArNTkyLDcgQEAgdm9pZCBTVkdSZXNv
dXJjZXM6OnJlc2V0TWFya2VyRW5kKCkKIHsKICAgICBBU1NFUlQobV9tYXJrZXJEYXRhKTsKICAg
ICBBU1NFUlQobV9tYXJrZXJEYXRhLT5tYXJrZXJFbmQpOwotICAgIG1fbWFya2VyRGF0YS0+bWFy
a2VyRW5kID0gMDsKKyAgICBtX21hcmtlckRhdGEtPm1hcmtlckVuZCA9IG51bGxwdHI7CiB9CiAK
IGJvb2wgU1ZHUmVzb3VyY2VzOjpzZXRNYXNrZXIoUmVuZGVyU1ZHUmVzb3VyY2VNYXNrZXIqIG1h
c2tlcikKQEAgLTYwMyw3ICs2MTMsNyBAQCB2b2lkIFNWR1Jlc291cmNlczo6cmVzZXRNYXNrZXIo
KQogewogICAgIEFTU0VSVChtX2NsaXBwZXJGaWx0ZXJNYXNrZXJEYXRhKTsKICAgICBBU1NFUlQo
bV9jbGlwcGVyRmlsdGVyTWFza2VyRGF0YS0+bWFza2VyKTsKLSAgICBtX2NsaXBwZXJGaWx0ZXJN
YXNrZXJEYXRhLT5tYXNrZXIgPSAwOworICAgIG1fY2xpcHBlckZpbHRlck1hc2tlckRhdGEtPm1h
c2tlciA9IG51bGxwdHI7CiB9CiAKIGJvb2wgU1ZHUmVzb3VyY2VzOjpzZXRGaWxsKFJlbmRlclNW
R1Jlc291cmNlQ29udGFpbmVyKiBmaWxsKQpAQCAtNjI2LDcgKzYzNiw3IEBAIHZvaWQgU1ZHUmVz
b3VyY2VzOjpyZXNldEZpbGwoKQogewogICAgIEFTU0VSVChtX2ZpbGxTdHJva2VEYXRhKTsKICAg
ICBBU1NFUlQobV9maWxsU3Ryb2tlRGF0YS0+ZmlsbCk7Ci0gICAgbV9maWxsU3Ryb2tlRGF0YS0+
ZmlsbCA9IDA7CisgICAgbV9maWxsU3Ryb2tlRGF0YS0+ZmlsbCA9IG51bGxwdHI7CiB9CiAKIGJv
b2wgU1ZHUmVzb3VyY2VzOjpzZXRTdHJva2UoUmVuZGVyU1ZHUmVzb3VyY2VDb250YWluZXIqIHN0
cm9rZSkKQEAgLTY0OSw3ICs2NTksNyBAQCB2b2lkIFNWR1Jlc291cmNlczo6cmVzZXRTdHJva2Uo
KQogewogICAgIEFTU0VSVChtX2ZpbGxTdHJva2VEYXRhKTsKICAgICBBU1NFUlQobV9maWxsU3Ry
b2tlRGF0YS0+c3Ryb2tlKTsKLSAgICBtX2ZpbGxTdHJva2VEYXRhLT5zdHJva2UgPSAwOworICAg
IG1fZmlsbFN0cm9rZURhdGEtPnN0cm9rZSA9IG51bGxwdHI7CiB9CiAKIGJvb2wgU1ZHUmVzb3Vy
Y2VzOjpzZXRMaW5rZWRSZXNvdXJjZShSZW5kZXJTVkdSZXNvdXJjZUNvbnRhaW5lciogbGlua2Vk
UmVzb3VyY2UpCkBAIC02NjQsNyArNjc0LDcgQEAgYm9vbCBTVkdSZXNvdXJjZXM6OnNldExpbmtl
ZFJlc291cmNlKFJlbmRlclNWR1Jlc291cmNlQ29udGFpbmVyKiBsaW5rZWRSZXNvdXJjZSkKIHZv
aWQgU1ZHUmVzb3VyY2VzOjpyZXNldExpbmtlZFJlc291cmNlKCkKIHsKICAgICBBU1NFUlQobV9s
aW5rZWRSZXNvdXJjZSk7Ci0gICAgbV9saW5rZWRSZXNvdXJjZSA9IDA7CisgICAgbV9saW5rZWRS
ZXNvdXJjZSA9IG51bGxwdHI7CiB9CiAKICNpZiBFTkFCTEUoVFJFRV9ERUJVR0dJTkcpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1Jlc291cmNlcy5oIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9TVkdSZXNvdXJjZXMuaAppbmRleCAzNjVkYjFiNjZi
NWU0MjI0OWNlOTU3YTBkNjgxODQzZDlkM2E0NzE3Li5jOGI0NzM0YjNjZDNhY2RhNGQ2ODc4Y2M4
ODgyMmVjZTgyNzJjZTUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3Zn
L1NWR1Jlc291cmNlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHUmVz
b3VyY2VzLmgKQEAgLTY3LDcgKzY3LDggQEAgcHVibGljOgogCiAgICAgLy8gTWV0aG9kcyBvcGVy
YXRpbmcgb24gYWxsIGNhY2hlZCByZXNvdXJjZXMKICAgICB2b2lkIHJlbW92ZUNsaWVudEZyb21D
YWNoZShSZW5kZXJFbGVtZW50JiwgYm9vbCBtYXJrRm9ySW52YWxpZGF0aW9uID0gdHJ1ZSkgY29u
c3Q7Ci0gICAgdm9pZCByZXNvdXJjZURlc3Ryb3llZChSZW5kZXJTVkdSZXNvdXJjZUNvbnRhaW5l
ciYpOworICAgIC8vIFJldHVybnMgdHJ1ZSBpZiB0aGUgcmVzb3VyY2UtdG8tYmUtZGVzdHJveWVk
IGlzIG9uZSBvZiBvdXIgcmVzb3VyY2VzLgorICAgIGJvb2wgcmVzb3VyY2VEZXN0cm95ZWQoUmVu
ZGVyU1ZHUmVzb3VyY2VDb250YWluZXImKTsKIAogI2lmIEVOQUJMRShUUkVFX0RFQlVHR0lORykK
ICAgICB2b2lkIGR1bXAoY29uc3QgUmVuZGVyT2JqZWN0Kik7CkBAIC05Nyw2ICs5OCw4IEBAIHBy
aXZhdGU6CiAgICAgYm9vbCBzZXRGaWxsKFJlbmRlclNWR1Jlc291cmNlQ29udGFpbmVyKik7CiAg
ICAgYm9vbCBzZXRTdHJva2UoUmVuZGVyU1ZHUmVzb3VyY2VDb250YWluZXIqKTsKICAgICBib29s
IHNldExpbmtlZFJlc291cmNlKFJlbmRlclNWR1Jlc291cmNlQ29udGFpbmVyKik7CisgICAgCisg
ICAgYm9vbCBpc0VtcHR5KCkgY29uc3QgeyByZXR1cm4gIW1fY2xpcHBlckZpbHRlck1hc2tlckRh
dGEgJiYgIW1fbWFya2VyRGF0YSAmJiAhbV9maWxsU3Ryb2tlRGF0YSAmJiAhbV9saW5rZWRSZXNv
dXJjZTsgfQogCiAgICAgLy8gRnJvbSBTVkcgMS4xIDJuZCBFZGl0aW9uCiAgICAgLy8gY2xpcHBl
cjogJ2NvbnRhaW5lciBlbGVtZW50cycgYW5kICdncmFwaGljcyBlbGVtZW50cycKQEAgLTEwNiwx
NiArMTA5LDEwIEBAIHByaXZhdGU6CiAgICAgc3RydWN0IENsaXBwZXJGaWx0ZXJNYXNrZXJEYXRh
IHsKICAgICAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiAgICAgcHVibGljOgotICAgICAg
ICBDbGlwcGVyRmlsdGVyTWFza2VyRGF0YSgpCi0gICAgICAgICAgICA6IGNsaXBwZXIoMCkKLSAg
ICAgICAgICAgICwgZmlsdGVyKDApCi0gICAgICAgICAgICAsIG1hc2tlcigwKQotICAgICAgICB7
Ci0gICAgICAgIH0KLQotICAgICAgICBSZW5kZXJTVkdSZXNvdXJjZUNsaXBwZXIqIGNsaXBwZXI7
Ci0gICAgICAgIFJlbmRlclNWR1Jlc291cmNlRmlsdGVyKiBmaWx0ZXI7Ci0gICAgICAgIFJlbmRl
clNWR1Jlc291cmNlTWFza2VyKiBtYXNrZXI7CisgICAgICAgIENsaXBwZXJGaWx0ZXJNYXNrZXJE
YXRhKCkgPSBkZWZhdWx0OworICAgICAgICBSZW5kZXJTVkdSZXNvdXJjZUNsaXBwZXIqIGNsaXBw
ZXIgeyBudWxscHRyIH07CisgICAgICAgIFJlbmRlclNWR1Jlc291cmNlRmlsdGVyKiBmaWx0ZXIg
eyBudWxscHRyIH07CisgICAgICAgIFJlbmRlclNWR1Jlc291cmNlTWFza2VyKiBtYXNrZXIgeyBu
dWxscHRyIH07CiAgICAgfTsKIAogICAgIC8vIEZyb20gU1ZHIDEuMSAybmQgRWRpdGlvbgpAQCAt
MTIzLDE2ICsxMjAsMTAgQEAgcHJpdmF0ZToKICAgICBzdHJ1Y3QgTWFya2VyRGF0YSB7CiAgICAg
ICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogICAgIHB1YmxpYzoKLSAgICAgICAgTWFya2Vy
RGF0YSgpCi0gICAgICAgICAgICA6IG1hcmtlclN0YXJ0KDApCi0gICAgICAgICAgICAsIG1hcmtl
ck1pZCgwKQotICAgICAgICAgICAgLCBtYXJrZXJFbmQoMCkKLSAgICAgICAgewotICAgICAgICB9
Ci0KLSAgICAgICAgUmVuZGVyU1ZHUmVzb3VyY2VNYXJrZXIqIG1hcmtlclN0YXJ0OwotICAgICAg
ICBSZW5kZXJTVkdSZXNvdXJjZU1hcmtlciogbWFya2VyTWlkOwotICAgICAgICBSZW5kZXJTVkdS
ZXNvdXJjZU1hcmtlciogbWFya2VyRW5kOworICAgICAgICBNYXJrZXJEYXRhKCkgPSBkZWZhdWx0
OworICAgICAgICBSZW5kZXJTVkdSZXNvdXJjZU1hcmtlciogbWFya2VyU3RhcnQgeyBudWxscHRy
IH07CisgICAgICAgIFJlbmRlclNWR1Jlc291cmNlTWFya2VyKiBtYXJrZXJNaWQgeyBudWxscHRy
IH07CisgICAgICAgIFJlbmRlclNWR1Jlc291cmNlTWFya2VyKiBtYXJrZXJFbmQgeyBudWxscHRy
IH07CiAgICAgfTsKIAogICAgIC8vIEZyb20gU1ZHIDEuMSAybmQgRWRpdGlvbgpAQCAtMTQyLDE0
ICsxMzMsOSBAQCBwcml2YXRlOgogICAgIHN0cnVjdCBGaWxsU3Ryb2tlRGF0YSB7CiAgICAgICAg
IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogICAgIHB1YmxpYzoKLSAgICAgICAgRmlsbFN0cm9r
ZURhdGEoKQotICAgICAgICAgICAgOiBmaWxsKDApCi0gICAgICAgICAgICAsIHN0cm9rZSgwKQot
ICAgICAgICB7Ci0gICAgICAgIH0KLQotICAgICAgICBSZW5kZXJTVkdSZXNvdXJjZUNvbnRhaW5l
ciogZmlsbDsKLSAgICAgICAgUmVuZGVyU1ZHUmVzb3VyY2VDb250YWluZXIqIHN0cm9rZTsKKyAg
ICAgICAgRmlsbFN0cm9rZURhdGEoKSA9IGRlZmF1bHQ7CisgICAgICAgIFJlbmRlclNWR1Jlc291
cmNlQ29udGFpbmVyKiBmaWxsIHsgbnVsbHB0ciB9OworICAgICAgICBSZW5kZXJTVkdSZXNvdXJj
ZUNvbnRhaW5lciogc3Ryb2tlIHsgbnVsbHB0ciB9OwogICAgIH07CiAKICAgICBzdGQ6OnVuaXF1
ZV9wdHI8Q2xpcHBlckZpbHRlck1hc2tlckRhdGE+IG1fY2xpcHBlckZpbHRlck1hc2tlckRhdGE7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1Jlc291cmNlc0Nh
Y2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHUmVzb3VyY2VzQ2FjaGUu
Y3BwCmluZGV4IDgzZDkxMmVlYmU4ZmU0MjgzODY4ZDJkMTNhZGM0MzkyOGRhMjU5NjcuLmFkODhh
NDE2ODY0ZTlhZmI5ZDdjOTZjNzcyMmM3Yzc0MThkNjRmMmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHUmVzb3VyY2VzQ2FjaGUuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHUmVzb3VyY2VzQ2FjaGUuY3BwCkBAIC0xNjUsMTIgKzE2
NSwxMiBAQCB2b2lkIFNWR1Jlc291cmNlc0NhY2hlOjpyZXNvdXJjZURlc3Ryb3llZChSZW5kZXJT
VkdSZXNvdXJjZUNvbnRhaW5lciYgcmVzb3VyY2UpCiAgICAgY2FjaGUucmVtb3ZlUmVzb3VyY2Vz
RnJvbVJlbmRlcmVyKHJlc291cmNlKTsKIAogICAgIGZvciAoYXV0byYgaXQgOiBjYWNoZS5tX2Nh
Y2hlKSB7Ci0gICAgICAgIGl0LnZhbHVlLT5yZXNvdXJjZURlc3Ryb3llZChyZXNvdXJjZSk7Ci0K
LSAgICAgICAgLy8gTWFyayB1c2VycyBvZiBkZXN0cm95ZWQgcmVzb3VyY2VzIGFzIHBlbmRpbmcg
cmVzb2x1dGlvbiBiYXNlZCBvbiB0aGUgaWQgb2YgdGhlIG9sZCByZXNvdXJjZS4KLSAgICAgICAg
RWxlbWVudCYgcmVzb3VyY2VFbGVtZW50ID0gcmVzb3VyY2UuZWxlbWVudCgpOwotICAgICAgICBF
bGVtZW50KiBjbGllbnRFbGVtZW50ID0gaXQua2V5LT5lbGVtZW50KCk7Ci0gICAgICAgIGNsaWVu
dEVsZW1lbnQtPmRvY3VtZW50KCkuYWNjZXNzU1ZHRXh0ZW5zaW9ucygpLmFkZFBlbmRpbmdSZXNv
dXJjZShyZXNvdXJjZUVsZW1lbnQuZ2V0SWRBdHRyaWJ1dGUoKSwgY2xpZW50RWxlbWVudCk7Cisg
ICAgICAgIGlmIChpdC52YWx1ZS0+cmVzb3VyY2VEZXN0cm95ZWQocmVzb3VyY2UpKSB7CisgICAg
ICAgICAgICAvLyBNYXJrIHVzZXJzIG9mIGRlc3Ryb3llZCByZXNvdXJjZXMgYXMgcGVuZGluZyBy
ZXNvbHV0aW9uIGJhc2VkIG9uIHRoZSBpZCBvZiB0aGUgb2xkIHJlc291cmNlLgorICAgICAgICAg
ICAgRWxlbWVudCYgcmVzb3VyY2VFbGVtZW50ID0gcmVzb3VyY2UuZWxlbWVudCgpOworICAgICAg
ICAgICAgRWxlbWVudCogY2xpZW50RWxlbWVudCA9IGl0LmtleS0+ZWxlbWVudCgpOworICAgICAg
ICAgICAgY2xpZW50RWxlbWVudC0+ZG9jdW1lbnQoKS5hY2Nlc3NTVkdFeHRlbnNpb25zKCkuYWRk
UGVuZGluZ1Jlc291cmNlKHJlc291cmNlRWxlbWVudC5nZXRJZEF0dHJpYnV0ZSgpLCBjbGllbnRF
bGVtZW50KTsKKyAgICAgICAgfQogICAgIH0KIH0KIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>