<?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>102456</bug_id>
          
          <creation_ts>2012-11-15 19:03:40 -0800</creation_ts>
          <short_desc>Expand PlatformCookieJar interface to allow for other ports</short_desc>
          <delta_ts>2012-11-16 11:02:15 -0800</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>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>99340</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Mark Pilgrim (Google)">pilgrim</reporter>
          <assigned_to name="Mark Pilgrim (Google)">pilgrim</assigned_to>
          <cc>abarth</cc>
    
    <cc>ap</cc>
    
    <cc>danw</cc>
    
    <cc>fishd</cc>
    
    <cc>gustavo</cc>
    
    <cc>haraken</cc>
    
    <cc>japhet</cc>
    
    <cc>mrobinson</cc>
    
    <cc>rakuco</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>768823</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Pilgrim (Google)">pilgrim</who>
    <bug_when>2012-11-15 19:03:40 -0800</bug_when>
    <thetext>Expand PlatformCookieJar interface to allow for other ports</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>768826</commentid>
    <comment_count>1</comment_count>
      <attachid>174589</attachid>
    <who name="Mark Pilgrim (Google)">pilgrim</who>
    <bug_when>2012-11-15 19:06:05 -0800</bug_when>
    <thetext>Created attachment 174589
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>768919</commentid>
    <comment_count>2</comment_count>
      <attachid>174589</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-11-15 21:44:26 -0800</bug_when>
    <thetext>Comment on attachment 174589
Patch

I understood why cookiesEnabled needs these arguments, and it&apos;s clear why cookieRequestHeaderFieldValue() does, too. What about getRawCookies? Isn&apos;t that a Web Inspector thing, which should be exempt from checks?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769156</commentid>
    <comment_count>3</comment_count>
      <attachid>174589</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-16 05:36:22 -0800</bug_when>
    <thetext>Comment on attachment 174589
Patch

Clearing flags on attachment: 174589

Committed r134936: &lt;http://trac.webkit.org/changeset/134936&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769157</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-16 05:36:26 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769324</commentid>
    <comment_count>5</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-11-16 08:47:54 -0800</bug_when>
    <thetext>Alexey, I&apos;m sorry your questions weren&apos;t answered before this patch was landed.  Let me try to answer them now.

&gt; I understood why cookiesEnabled needs these arguments, and it&apos;s clear why cookieRequestHeaderFieldValue() does, too. What about getRawCookies? Isn&apos;t that a Web Inspector thing, which should be exempt from checks?

These functions all need this information for the same reason.  In Safari, third-party cookie blocking only affects writing to the cookie jar.  In Chromium (and in some other browsers), third-party cookie block affects both reading and writing the cookie jar.  In order for cookieRequestHeaderFieldValue and getRawCookies to read the cookie jar accurately, Chromium needs to know the first party URL so that it can determine whether to block various cookies because of its third-party cookie blocking policy.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769391</commentid>
    <comment_count>6</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-11-16 09:56:04 -0800</bug_when>
    <thetext>Yes, I understand this. What I&apos;m saying is that getRawCookies appears to be used in Inspector only, and thus it&apos;s unclear why it needs the checks.

It is very clear why cookieRequestHeaderFieldValue needs the check - this function is used to build a cookie header for WebSockets.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769398</commentid>
    <comment_count>7</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-11-16 10:05:20 -0800</bug_when>
    <thetext>&gt; Yes, I understand this. What I&apos;m saying is that getRawCookies appears to be used in Inspector only, and thus it&apos;s unclear why it needs the checks.

It seems like the inspector for a given document should show the cookie related to that document in another context.  I would expect developers to be confused if the inspector showed cookies that weren&apos;t actually sent over the wire because they were blocked.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769422</commentid>
    <comment_count>8</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-11-16 10:29:23 -0800</bug_when>
    <thetext>This may be the case indeed, depending on how the data is presented. Not showing existing cookies can be confusing, too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769464</commentid>
    <comment_count>9</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-11-16 11:02:15 -0800</bug_when>
    <thetext>In any case, we should continue to pass this information.  If you don&apos;t want to use it, please feel free to ignore it.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>174589</attachid>
            <date>2012-11-15 19:06:05 -0800</date>
            <delta_ts>2012-11-16 05:36:22 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-102456-20121115220343.patch</filename>
            <type>text/plain</type>
            <size>12191</size>
            <attacher name="Mark Pilgrim (Google)">pilgrim</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEzNDg3NykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ1IEBACisyMDEyLTExLTE1ICBNYXJrIFBp
bGdyaW0gIDxwaWxncmltQGNocm9taXVtLm9yZz4KKworICAgICAgICBFeHBhbmQgUGxhdGZvcm1D
b29raWVKYXIgaW50ZXJmYWNlIHRvIGFsbG93IGZvciBvdGhlciBwb3J0cworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAyNDU2CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGZpcnN0UGFydHkgYW5kIGNv
b2tpZVVSTCBhcmd1bWVudHMgdG8gc2V2ZXJhbCBmdW5jdGlvbnMgdG8KKyAgICAgICAgcHJlcGFy
ZSBmb3IgaW50ZWdyYXRpbmcgQ2hyb21pdW0gcG9ydCBpbnRvIG5ldyBQbGF0Zm9ybUNvb2tpZUph
cgorICAgICAgICBpbnRlcmZhY2UuCisKKyAgICAgICAgKiBsb2FkZXIvQ29va2llSmFyLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OmNvb2tpZXNFbmFibGVkKToKKyAgICAgICAgKFdlYkNvcmU6OmNv
b2tpZVJlcXVlc3RIZWFkZXJGaWVsZFZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OmdldFJhd0Nv
b2tpZXMpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvUGxhdGZvcm1Db29raWVKYXIuaDoK
KyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY2YvQ29va2ll
SmFyQ0ZOZXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29va2llUmVxdWVzdEhlYWRlckZpZWxk
VmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Y29va2llc0VuYWJsZWQpOgorICAgICAgICAoV2Vi
Q29yZTo6Z2V0UmF3Q29va2llcyk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9jdXJsL0Nv
b2tpZUphckN1cmwuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29va2llUmVxdWVzdEhlYWRlckZp
ZWxkVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Y29va2llc0VuYWJsZWQpOgorICAgICAgICAo
V2ViQ29yZTo6Z2V0UmF3Q29va2llcyk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9tYWMv
Q29va2llSmFyTWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6Y29va2llUmVxdWVzdEhlYWRlckZp
ZWxkVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Y29va2llc0VuYWJsZWQpOgorICAgICAgICAo
V2ViQ29yZTo6Z2V0UmF3Q29va2llcyk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9xdC9D
b29raWVKYXJRdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjb29raWVSZXF1ZXN0SGVhZGVyRmll
bGRWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpjb29raWVzRW5hYmxlZCk6CisgICAgICAgIChX
ZWJDb3JlOjpnZXRSYXdDb29raWVzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL3NvdXAv
Q29va2llSmFyU291cC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjb29raWVSZXF1ZXN0SGVhZGVy
RmllbGRWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpjb29raWVzRW5hYmxlZCk6CisgICAgICAg
IChXZWJDb3JlOjpnZXRSYXdDb29raWVzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL3dp
bi9Db29raWVKYXJXaW4uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29va2llUmVxdWVzdEhlYWRl
ckZpZWxkVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Y29va2llc0VuYWJsZWQpOgorICAgICAg
ICAoV2ViQ29yZTo6Z2V0UmF3Q29va2llcyk6CisKIDIwMTItMTEtMTUgIFJpY2sgQnllcnMgIDxy
YnllcnNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIGN1c3RvbSBDU1MgY3Vyc29ycyBpZ25vcmUg
aG90c3BvdCB2YWx1ZXMgZW1iZWRkZWQgaW4gQ1VSIGZpbGVzCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvQ29va2llSmFyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvQ29va2llSmFyLmNwcAkocmV2aXNpb24gMTM0ODcyKQorKysgU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0Nvb2tpZUphci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTYxLDE3ICs2MSwxNyBAQCB2b2lk
IHNldENvb2tpZXMoRG9jdW1lbnQqIGRvY3VtZW50LCBjb25zCiAKIGJvb2wgY29va2llc0VuYWJs
ZWQoY29uc3QgRG9jdW1lbnQqIGRvY3VtZW50KQogewotICAgIHJldHVybiBjb29raWVzRW5hYmxl
ZChuZXR3b3JraW5nQ29udGV4dChkb2N1bWVudCkpOworICAgIHJldHVybiBjb29raWVzRW5hYmxl
ZChuZXR3b3JraW5nQ29udGV4dChkb2N1bWVudCksIGRvY3VtZW50LT5maXJzdFBhcnR5Rm9yQ29v
a2llcygpLCBkb2N1bWVudC0+Y29va2llVVJMKCkpOwogfQogCiBTdHJpbmcgY29va2llUmVxdWVz
dEhlYWRlckZpZWxkVmFsdWUoY29uc3QgRG9jdW1lbnQqIGRvY3VtZW50LCBjb25zdCBLVVJMJiB1
cmwpCiB7Ci0gICAgcmV0dXJuIGNvb2tpZVJlcXVlc3RIZWFkZXJGaWVsZFZhbHVlKG5ldHdvcmtp
bmdDb250ZXh0KGRvY3VtZW50KSwgdXJsKTsKKyAgICByZXR1cm4gY29va2llUmVxdWVzdEhlYWRl
ckZpZWxkVmFsdWUobmV0d29ya2luZ0NvbnRleHQoZG9jdW1lbnQpLCBkb2N1bWVudC0+Zmlyc3RQ
YXJ0eUZvckNvb2tpZXMoKSwgdXJsKTsKIH0KIAogYm9vbCBnZXRSYXdDb29raWVzKGNvbnN0IERv
Y3VtZW50KiBkb2N1bWVudCwgY29uc3QgS1VSTCYgdXJsLCBWZWN0b3I8Q29va2llPiYgY29va2ll
cykKIHsKLSAgICByZXR1cm4gZ2V0UmF3Q29va2llcyhuZXR3b3JraW5nQ29udGV4dChkb2N1bWVu
dCksIHVybCwgY29va2llcyk7CisgICAgcmV0dXJuIGdldFJhd0Nvb2tpZXMobmV0d29ya2luZ0Nv
bnRleHQoZG9jdW1lbnQpLCBkb2N1bWVudC0+Zmlyc3RQYXJ0eUZvckNvb2tpZXMoKSwgdXJsLCBj
b29raWVzKTsKIH0KIAogdm9pZCBkZWxldGVDb29raWUoY29uc3QgRG9jdW1lbnQqIGRvY3VtZW50
LCBjb25zdCBLVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgY29va2llTmFtZSkKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUGxhdGZvcm1Db29raWVKYXIuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1BsYXRmb3JtQ29va2llSmFyLmgJ
KHJldmlzaW9uIDEzNDg3MikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUGxh
dGZvcm1Db29raWVKYXIuaAkod29ya2luZyBjb3B5KQpAQCAtNDAsOSArNDAsOSBAQCBzdHJ1Y3Qg
Q29va2llOwogLy8gSWYgbmV0d29ya2luZyBjb250ZXh0IGlzIG51bGwsIGRlZmF1bHQgY29va2ll
IHN0b3JhZ2UgaXMgdXNlZC4KIFN0cmluZyBjb29raWVzRm9yRE9NKE5ldHdvcmtpbmdDb250ZXh0
KiwgY29uc3QgS1VSTCYgZmlyc3RQYXJ0eSwgY29uc3QgS1VSTCYpOwogdm9pZCBzZXRDb29raWVz
RnJvbURPTShOZXR3b3JraW5nQ29udGV4dCosIGNvbnN0IEtVUkwmIGZpcnN0UGFydHksIGNvbnN0
IEtVUkwmLCBjb25zdCBTdHJpbmcmKTsKLWJvb2wgY29va2llc0VuYWJsZWQoTmV0d29ya2luZ0Nv
bnRleHQqKTsKLVN0cmluZyBjb29raWVSZXF1ZXN0SGVhZGVyRmllbGRWYWx1ZShOZXR3b3JraW5n
Q29udGV4dCosIGNvbnN0IEtVUkwmKTsKLWJvb2wgZ2V0UmF3Q29va2llcyhOZXR3b3JraW5nQ29u
dGV4dCosIGNvbnN0IEtVUkwmLCBWZWN0b3I8Q29va2llPiYpOworYm9vbCBjb29raWVzRW5hYmxl
ZChOZXR3b3JraW5nQ29udGV4dCosIGNvbnN0IEtVUkwmIGZpcnN0UGFydHksIGNvbnN0IEtVUkwm
KTsKK1N0cmluZyBjb29raWVSZXF1ZXN0SGVhZGVyRmllbGRWYWx1ZShOZXR3b3JraW5nQ29udGV4
dCosIGNvbnN0IEtVUkwmIGZpcnN0UGFydHksIGNvbnN0IEtVUkwmKTsKK2Jvb2wgZ2V0UmF3Q29v
a2llcyhOZXR3b3JraW5nQ29udGV4dCosIGNvbnN0IEtVUkwmIGZpcnN0UGFydHksIGNvbnN0IEtV
UkwmLCBWZWN0b3I8Q29va2llPiYpOwogdm9pZCBkZWxldGVDb29raWUoTmV0d29ya2luZ0NvbnRl
eHQqLCBjb25zdCBLVVJMJiwgY29uc3QgU3RyaW5nJik7CiB2b2lkIGdldEhvc3RuYW1lc1dpdGhD
b29raWVzKE5ldHdvcmtpbmdDb250ZXh0KiwgSGFzaFNldDxTdHJpbmc+JiBob3N0bmFtZXMpOwog
dm9pZCBkZWxldGVDb29raWVzRm9ySG9zdG5hbWUoTmV0d29ya2luZ0NvbnRleHQqLCBjb25zdCBT
dHJpbmcmIGhvc3RuYW1lKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
Y2YvQ29va2llSmFyQ0ZOZXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvY2YvQ29va2llSmFyQ0ZOZXQuY3BwCShyZXZpc2lvbiAxMzQ4NzIpCisrKyBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL0Nvb2tpZUphckNGTmV0LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMTM2LDcgKzEzNiw3IEBAIFN0cmluZyBjb29raWVzRm9yRE9NKE5ldHdv
cmtpbmdDb250ZXh0KgogICAgIHJldHVybiAoQ0ZTdHJpbmdSZWYpQ0ZEaWN0aW9uYXJ5R2V0VmFs
dWUoaGVhZGVyQ0YuZ2V0KCksIHNfY29va2llQ0YpOwogfQogCi1TdHJpbmcgY29va2llUmVxdWVz
dEhlYWRlckZpZWxkVmFsdWUoTmV0d29ya2luZ0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IEtVUkwm
IHVybCkKK1N0cmluZyBjb29raWVSZXF1ZXN0SGVhZGVyRmllbGRWYWx1ZShOZXR3b3JraW5nQ29u
dGV4dCogY29udGV4dCwgY29uc3QgS1VSTCYgLypmaXJzdFBhcnR5Ki8sIGNvbnN0IEtVUkwmIHVy
bCkKIHsKICAgICBSZXRhaW5QdHI8Q0ZIVFRQQ29va2llU3RvcmFnZVJlZj4gY29va2llU3RvcmFn
ZSA9IGNvbnRleHQgPyBjdXJyZW50Q0ZIVFRQQ29va2llU3RvcmFnZSgpIDogZGVmYXVsdENGSFRU
UENvb2tpZVN0b3JhZ2UoKTsKICAgICBpZiAoIWNvb2tpZVN0b3JhZ2UpCkBAIC0xNTAsNyArMTUw
LDcgQEAgU3RyaW5nIGNvb2tpZVJlcXVlc3RIZWFkZXJGaWVsZFZhbHVlKE5ldAogICAgIHJldHVy
biAoQ0ZTdHJpbmdSZWYpQ0ZEaWN0aW9uYXJ5R2V0VmFsdWUoaGVhZGVyQ0YuZ2V0KCksIHNfY29v
a2llQ0YpOwogfQogCi1ib29sIGNvb2tpZXNFbmFibGVkKE5ldHdvcmtpbmdDb250ZXh0KiBjb250
ZXh0KQorYm9vbCBjb29raWVzRW5hYmxlZChOZXR3b3JraW5nQ29udGV4dCogY29udGV4dCwgY29u
c3QgS1VSTCYgLypmaXJzdFBhcnR5Ki8sIGNvbnN0IEtVUkwmIC8qdXJsKi8pCiB7CiAgICAgQ0ZI
VFRQQ29va2llU3RvcmFnZUFjY2VwdFBvbGljeSBwb2xpY3kgPSBDRkhUVFBDb29raWVTdG9yYWdl
QWNjZXB0UG9saWN5T25seUZyb21NYWluRG9jdW1lbnREb21haW47CiAgICAgUmV0YWluUHRyPENG
SFRUUENvb2tpZVN0b3JhZ2VSZWY+IGNvb2tpZVN0b3JhZ2UgPSBjb250ZXh0ID8gY3VycmVudENG
SFRUUENvb2tpZVN0b3JhZ2UoKSA6IGRlZmF1bHRDRkhUVFBDb29raWVTdG9yYWdlKCk7CkBAIC0x
NTksNyArMTU5LDcgQEAgYm9vbCBjb29raWVzRW5hYmxlZChOZXR3b3JraW5nQ29udGV4dCogYwog
ICAgIHJldHVybiBwb2xpY3kgPT0gQ0ZIVFRQQ29va2llU3RvcmFnZUFjY2VwdFBvbGljeU9ubHlG
cm9tTWFpbkRvY3VtZW50RG9tYWluIHx8IHBvbGljeSA9PSBDRkhUVFBDb29raWVTdG9yYWdlQWNj
ZXB0UG9saWN5QWx3YXlzOwogfQogCi1ib29sIGdldFJhd0Nvb2tpZXMoTmV0d29ya2luZ0NvbnRl
eHQqIGNvbnRleHQsIGNvbnN0IEtVUkwmIHVybCwgVmVjdG9yPENvb2tpZT4mIHJhd0Nvb2tpZXMp
Citib29sIGdldFJhd0Nvb2tpZXMoTmV0d29ya2luZ0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IEtV
UkwmIC8qZmlyc3RQYXJ0eSovLCBjb25zdCBLVVJMJiB1cmwsIFZlY3RvcjxDb29raWU+JiByYXdD
b29raWVzKQogewogICAgIHJhd0Nvb2tpZXMuY2xlYXIoKTsKICAgICBSZXRhaW5QdHI8Q0ZIVFRQ
Q29va2llU3RvcmFnZVJlZj4gY29va2llU3RvcmFnZSA9IGNvbnRleHQgPyBjdXJyZW50Q0ZIVFRQ
Q29va2llU3RvcmFnZSgpIDogZGVmYXVsdENGSFRUUENvb2tpZVN0b3JhZ2UoKTsKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9Db29raWVKYXJDdXJsLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ29va2llSmFy
Q3VybC5jcHAJKHJldmlzaW9uIDEzNDg3MikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvY3VybC9Db29raWVKYXJDdXJsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzcsMTggKzM3
LDE4IEBAIFN0cmluZyBjb29raWVzRm9yRE9NKE5ldHdvcmtpbmdDb250ZXh0KiwKICAgICByZXR1
cm4gY29va2llSmFyLmdldCh1cmwuc3RyaW5nKCkpOwogfQogCi1TdHJpbmcgY29va2llUmVxdWVz
dEhlYWRlckZpZWxkVmFsdWUoTmV0d29ya2luZ0NvbnRleHQqLCBjb25zdCBLVVJMJiB1cmwpCitT
dHJpbmcgY29va2llUmVxdWVzdEhlYWRlckZpZWxkVmFsdWUoTmV0d29ya2luZ0NvbnRleHQqIGNv
bnRleHQsIGNvbnN0IEtVUkwmIC8qZmlyc3RQYXJ0eSovLCBjb25zdCBLVVJMJiB1cmwpCiB7CiAg
ICAgLy8gRklYTUU6IGluY2x1ZGUgSHR0cE9ubHkgY29va2llLgogICAgIHJldHVybiBjb29raWVK
YXIuZ2V0KHVybC5zdHJpbmcoKSk7CiB9CiAKLWJvb2wgY29va2llc0VuYWJsZWQoTmV0d29ya2lu
Z0NvbnRleHQqKQorYm9vbCBjb29raWVzRW5hYmxlZChOZXR3b3JraW5nQ29udGV4dCogY29udGV4
dCwgY29uc3QgS1VSTCYgLypmaXJzdFBhcnR5Ki8sIGNvbnN0IEtVUkwmIC8qdXJsKi8pCiB7CiAg
ICAgcmV0dXJuIHRydWU7CiB9CiAKLWJvb2wgZ2V0UmF3Q29va2llcyhOZXR3b3JraW5nQ29udGV4
dCosIGNvbnN0IEtVUkwmLCBWZWN0b3I8Q29va2llPiYgcmF3Q29va2llcykKK2Jvb2wgZ2V0UmF3
Q29va2llcyhOZXR3b3JraW5nQ29udGV4dCogY29udGV4dCwgY29uc3QgS1VSTCYgLypmaXJzdFBh
cnR5Ki8sIGNvbnN0IEtVUkwmIC8qdXJsKi8sIFZlY3RvcjxDb29raWU+JiByYXdDb29raWVzKQog
ewogICAgIC8vIEZJWE1FOiBOb3QgeWV0IGltcGxlbWVudGVkCiAgICAgcmF3Q29va2llcy5jbGVh
cigpOwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvQ29va2llSmFy
TWFjLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFj
L0Nvb2tpZUphck1hYy5tbQkocmV2aXNpb24gMTM0ODcyKQorKysgU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbmV0d29yay9tYWMvQ29va2llSmFyTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC03Myw3
ICs3Myw3IEBAIFN0cmluZyBjb29raWVzRm9yRE9NKE5ldHdvcmtpbmdDb250ZXh0KgogICAgIHJl
dHVybiBTdHJpbmcoKTsKIH0KIAotU3RyaW5nIGNvb2tpZVJlcXVlc3RIZWFkZXJGaWVsZFZhbHVl
KE5ldHdvcmtpbmdDb250ZXh0KiBjb250ZXh0LCBjb25zdCBLVVJMJiB1cmwpCitTdHJpbmcgY29v
a2llUmVxdWVzdEhlYWRlckZpZWxkVmFsdWUoTmV0d29ya2luZ0NvbnRleHQqIGNvbnRleHQsIGNv
bnN0IEtVUkwmIC8qZmlyc3RQYXJ0eSovLCBjb25zdCBLVVJMJiB1cmwpCiB7CiAgICAgQkVHSU5f
QkxPQ0tfT0JKQ19FWENFUFRJT05TOwogCkBAIC0xMDgsNyArMTA4LDcgQEAgdm9pZCBzZXRDb29r
aWVzRnJvbURPTShOZXR3b3JraW5nQ29udGV4dAogICAgIEVORF9CTE9DS19PQkpDX0VYQ0VQVElP
TlM7CiB9CiAKLWJvb2wgY29va2llc0VuYWJsZWQoTmV0d29ya2luZ0NvbnRleHQqIGNvbnRleHQp
Citib29sIGNvb2tpZXNFbmFibGVkKE5ldHdvcmtpbmdDb250ZXh0KiBjb250ZXh0LCBjb25zdCBL
VVJMJiAvKmZpcnN0UGFydHkqLywgY29uc3QgS1VSTCYgLyp1cmwqLykKIHsKICAgICBCRUdJTl9C
TE9DS19PQkpDX0VYQ0VQVElPTlM7CiAKQEAgLTEyMCw3ICsxMjAsNyBAQCBib29sIGNvb2tpZXNF
bmFibGVkKE5ldHdvcmtpbmdDb250ZXh0KiBjCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi1ib29s
IGdldFJhd0Nvb2tpZXMoTmV0d29ya2luZ0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IEtVUkwmIHVy
bCwgVmVjdG9yPENvb2tpZT4mIHJhd0Nvb2tpZXMpCitib29sIGdldFJhd0Nvb2tpZXMoTmV0d29y
a2luZ0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IEtVUkwmIC8qZmlyc3RQYXJ0eSovLCBjb25zdCBL
VVJMJiB1cmwsIFZlY3RvcjxDb29raWU+JiByYXdDb29raWVzKQogewogICAgIHJhd0Nvb2tpZXMu
Y2xlYXIoKTsKICAgICBCRUdJTl9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3F0L0Nvb2tpZUphclF0LmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3F0L0Nvb2tpZUphclF0LmNwcAkocmV2
aXNpb24gMTM0ODcyKQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9xdC9Db29r
aWVKYXJRdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTk0LDcgKzk0LDcgQEAgU3RyaW5nIGNvb2tp
ZXNGb3JET00oTmV0d29ya2luZ0NvbnRleHQqCiAgICAgcmV0dXJuIHJlc3VsdENvb2tpZXMuam9p
bihRTGF0aW4xU3RyaW5nKCI7ICIpKTsKIH0KIAotU3RyaW5nIGNvb2tpZVJlcXVlc3RIZWFkZXJG
aWVsZFZhbHVlKE5ldHdvcmtpbmdDb250ZXh0KiBjb250ZXh0LCBjb25zdCBLVVJMICZ1cmwpCitT
dHJpbmcgY29va2llUmVxdWVzdEhlYWRlckZpZWxkVmFsdWUoTmV0d29ya2luZ0NvbnRleHQqIGNv
bnRleHQsIGNvbnN0IEtVUkwmIC8qZmlyc3RQYXJ0eSovLCBjb25zdCBLVVJMJiB1cmwpCiB7CiAg
ICAgUU5ldHdvcmtDb29raWVKYXIqIGphciA9IGNvbnRleHQgPyBjb250ZXh0LT5uZXR3b3JrQWNj
ZXNzTWFuYWdlcigpLT5jb29raWVKYXIoKSA6IFNoYXJlZENvb2tpZUphclF0OjpzaGFyZWQoKTsK
ICAgICBpZiAoIWphcikKQEAgLTExMSwxMyArMTExLDEzIEBAIFN0cmluZyBjb29raWVSZXF1ZXN0
SGVhZGVyRmllbGRWYWx1ZShOZXQKICAgICByZXR1cm4gcmVzdWx0Q29va2llcy5qb2luKFFMYXRp
bjFTdHJpbmcoIjsgIikpOwogfQogCi1ib29sIGNvb2tpZXNFbmFibGVkKE5ldHdvcmtpbmdDb250
ZXh0KiBjb250ZXh0KQorYm9vbCBjb29raWVzRW5hYmxlZChOZXR3b3JraW5nQ29udGV4dCogY29u
dGV4dCwgY29uc3QgS1VSTCYgLypmaXJzdFBhcnR5Ki8sIGNvbnN0IEtVUkwmIC8qdXJsKi8pCiB7
CiAgICAgUU5ldHdvcmtDb29raWVKYXIqIGphciA9IGNvbnRleHQgPyBjb250ZXh0LT5uZXR3b3Jr
QWNjZXNzTWFuYWdlcigpLT5jb29raWVKYXIoKSA6IFNoYXJlZENvb2tpZUphclF0OjpzaGFyZWQo
KTsKICAgICByZXR1cm4gISFqYXI7CiB9CiAKLWJvb2wgZ2V0UmF3Q29va2llcyhOZXR3b3JraW5n
Q29udGV4dCosIGNvbnN0IEtVUkwmLCBWZWN0b3I8Q29va2llPiYgcmF3Q29va2llcykKK2Jvb2wg
Z2V0UmF3Q29va2llcyhOZXR3b3JraW5nQ29udGV4dCogY29udGV4dCwgY29uc3QgS1VSTCYgLypm
aXJzdFBhcnR5Ki8sIGNvbnN0IEtVUkwmIC8qdXJsKi8sIFZlY3RvcjxDb29raWU+JiByYXdDb29r
aWVzKQogewogICAgIC8vIEZJWE1FOiBOb3QgeWV0IGltcGxlbWVudGVkCiAgICAgcmF3Q29va2ll
cy5jbGVhcigpOwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0Nv
b2tpZUphclNvdXAuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvc291cC9Db29raWVKYXJTb3VwLmNwcAkocmV2aXNpb24gMTM0ODcyKQorKysgU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0Nvb2tpZUphclNvdXAuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0xMjMsMTcgKzEyMywxNyBAQCBTdHJpbmcgY29va2llc0ZvckRPTShOZXR3b3Jr
aW5nQ29udGV4dCoKICAgICByZXR1cm4gY29va2llc0ZvckNvbnRleHQoY29udGV4dCwgdXJsLCBm
YWxzZSk7CiB9CiAKLVN0cmluZyBjb29raWVSZXF1ZXN0SGVhZGVyRmllbGRWYWx1ZShOZXR3b3Jr
aW5nQ29udGV4dCogY29udGV4dCwgY29uc3QgS1VSTCYgdXJsKQorU3RyaW5nIGNvb2tpZVJlcXVl
c3RIZWFkZXJGaWVsZFZhbHVlKE5ldHdvcmtpbmdDb250ZXh0KiBjb250ZXh0LCBjb25zdCBLVVJM
JiAvKmZpcnN0UGFydHkqLywgY29uc3QgS1VSTCYgdXJsKQogewogICAgIHJldHVybiBjb29raWVz
Rm9yQ29udGV4dChjb250ZXh0LCB1cmwsIHRydWUpOwogfQogCi1ib29sIGNvb2tpZXNFbmFibGVk
KE5ldHdvcmtpbmdDb250ZXh0KiBjb250ZXh0KQorYm9vbCBjb29raWVzRW5hYmxlZChOZXR3b3Jr
aW5nQ29udGV4dCogY29udGV4dCwgY29uc3QgS1VSTCYgLypmaXJzdFBhcnR5Ki8sIGNvbnN0IEtV
UkwmIC8qdXJsKi8pCiB7CiAgICAgcmV0dXJuICEhY29va2llSmFyRm9yQ29udGV4dChjb250ZXh0
KTsKIH0KIAotYm9vbCBnZXRSYXdDb29raWVzKE5ldHdvcmtpbmdDb250ZXh0KiBjb250ZXh0LCBj
b25zdCBLVVJMJiB1cmwsIFZlY3RvcjxDb29raWU+JiByYXdDb29raWVzKQorYm9vbCBnZXRSYXdD
b29raWVzKE5ldHdvcmtpbmdDb250ZXh0KiBjb250ZXh0LCBjb25zdCBLVVJMJiAvKmZpcnN0UGFy
dHkqLywgY29uc3QgS1VSTCYgdXJsLCBWZWN0b3I8Q29va2llPiYgcmF3Q29va2llcykKIHsKICAg
ICByYXdDb29raWVzLmNsZWFyKCk7CiAgICAgU291cENvb2tpZUphciogamFyID0gY29udGV4dCA/
IGNvb2tpZUphckZvckNvbnRleHQoY29udGV4dCkgOiBzb3VwQ29va2llSmFyKCk7CkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3dpbi9Db29raWVKYXJXaW4uY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvd2luL0Nvb2tpZUphcldp
bi5jcHAJKHJldmlzaW9uIDEzNDg3MikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvd2luL0Nvb2tpZUphcldpbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY0LDE4ICs2NCwxOCBA
QCBTdHJpbmcgY29va2llc0ZvckRPTShOZXR3b3JraW5nQ29udGV4dCosCiAgICAgcmV0dXJuIFN0
cmluZzo6YWRvcHQoYnVmZmVyKTsKIH0KIAotU3RyaW5nIGNvb2tpZVJlcXVlc3RIZWFkZXJGaWVs
ZFZhbHVlKE5ldHdvcmtpbmdDb250ZXh0KiwgY29uc3QgS1VSTCYgdXJsKQorU3RyaW5nIGNvb2tp
ZVJlcXVlc3RIZWFkZXJGaWVsZFZhbHVlKE5ldHdvcmtpbmdDb250ZXh0KiBjb250ZXh0LCBjb25z
dCBLVVJMJiAvKmZpcnN0UGFydHkqLywgY29uc3QgS1VSTCYgdXJsKQogewogICAgIC8vIEZJWE1F
OiBpbmNsdWRlIEh0dHBPbmx5IGNvb2tpZQogICAgIHJldHVybiBjb29raWVzRm9yRE9NKGNvbnRl
eHQsIHVybCk7CiB9CiAKLWJvb2wgY29va2llc0VuYWJsZWQoTmV0d29ya2luZ0NvbnRleHQqKQor
Ym9vbCBjb29raWVzRW5hYmxlZChOZXR3b3JraW5nQ29udGV4dCogY29udGV4dCwgY29uc3QgS1VS
TCYgLypmaXJzdFBhcnR5Ki8sIGNvbnN0IEtVUkwmIC8qdXJsKi8pCiB7CiAgICAgcmV0dXJuIHRy
dWU7CiB9CiAKLWJvb2wgZ2V0UmF3Q29va2llcyhOZXR3b3JraW5nQ29udGV4dCosIGNvbnN0IEtV
UkwmLCBWZWN0b3I8Q29va2llPiYgcmF3Q29va2llcykKK2Jvb2wgZ2V0UmF3Q29va2llcyhOZXR3
b3JraW5nQ29udGV4dCogY29udGV4dCwgY29uc3QgS1VSTCYgLypmaXJzdFBhcnR5Ki8sIGNvbnN0
IEtVUkwmIC8qdXJsKi8sIFZlY3RvcjxDb29raWU+JiByYXdDb29raWVzKQogewogICAgIC8vIEZJ
WE1FOiBOb3QgeWV0IGltcGxlbWVudGVkCiAgICAgcmF3Q29va2llcy5jbGVhcigpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>