<?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>82598</bug_id>
          
          <creation_ts>2012-03-29 04:54:29 -0700</creation_ts>
          <short_desc>[GTK] Add WebKitCookieManager::changed signal to WebKit2 GTK+ API</short_desc>
          <delta_ts>2012-04-24 08:19:03 -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>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>82441</dependson>
          <blocked>83016</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>gustavo</cc>
    
    <cc>svillar</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>591045</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-03-29 04:54:29 -0700</bug_when>
    <thetext>To notify when cookies have changed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>591053</commentid>
    <comment_count>1</comment_count>
      <attachid>134552</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-03-29 05:02:22 -0700</bug_when>
    <thetext>Created attachment 134552
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>591060</commentid>
    <comment_count>2</comment_count>
      <attachid>134552</attachid>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2012-03-29 05:06:58 -0700</bug_when>
    <thetext>Comment on attachment 134552
Patch

looks great to me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>591216</commentid>
    <comment_count>3</comment_count>
      <attachid>134552</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2012-03-29 08:44:51 -0700</bug_when>
    <thetext>Comment on attachment 134552
Patch

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

Seems good to me, but I have the following doubt:

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitCookieManager.cpp:58
&gt; +    WKCookieManagerStartObservingCookieChanges(priv-&gt;wkCookieManager.get());

Did you mean to write WKCookieManagerStopObservingCookieChanges here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>591218</commentid>
    <comment_count>4</comment_count>
      <attachid>134552</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-03-29 08:47:55 -0700</bug_when>
    <thetext>Comment on attachment 134552
Patch

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

&gt;&gt; Source/WebKit2/UIProcess/API/gtk/WebKitCookieManager.cpp:58
&gt;&gt; +    WKCookieManagerStartObservingCookieChanges(priv-&gt;wkCookieManager.get());
&gt; 
&gt; Did you mean to write WKCookieManagerStopObservingCookieChanges here?

Indeed, copy paste error, good catch! :-P</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>594294</commentid>
    <comment_count>5</comment_count>
      <attachid>135292</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-04-03 01:50:45 -0700</bug_when>
    <thetext>Created attachment 135292
Updated patch

Stop observing changes in finalize.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>608612</commentid>
    <comment_count>6</comment_count>
      <attachid>135292</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2012-04-24 06:46:11 -0700</bug_when>
    <thetext>Comment on attachment 135292
Updated patch

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

LGTM

&gt; Source/WebCore/platform/network/soup/CookieStorageSoup.cpp:36
&gt; +void setCookieStoragePrivateBrowsingEnabled(bool enabled)
&gt; +{
&gt; +    notImplemented();

Would it make sense to start/stop observing cookies there? depending on the enabled value.
I can&apos;t find this function used in WebKit2 btw, is it part of some DerivedSources or was it removed from the other ports?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>608677</commentid>
    <comment_count>7</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-04-24 08:15:05 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 135292 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=135292&amp;action=review
&gt; 
&gt; LGTM
&gt; 
&gt; &gt; Source/WebCore/platform/network/soup/CookieStorageSoup.cpp:36
&gt; &gt; +void setCookieStoragePrivateBrowsingEnabled(bool enabled)
&gt; &gt; +{
&gt; &gt; +    notImplemented();
&gt; 
&gt; Would it make sense to start/stop observing cookies there? depending on the enabled value.
&gt; I can&apos;t find this function used in WebKit2 btw, is it part of some DerivedSources or was it removed from the other ports?

This function is declared in CookieStorage.h so we need to provide an implementation even if it&apos;s empty. When private browsing is enabled, the cookie storage used for private browsing will be observed for changes, so I don&apos;t think we need to do anything here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>608681</commentid>
    <comment_count>8</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-04-24 08:19:03 -0700</bug_when>
    <thetext>Committed r115057: &lt;http://trac.webkit.org/changeset/115057&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>134552</attachid>
            <date>2012-03-29 05:02:22 -0700</date>
            <delta_ts>2012-04-03 01:50:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wk2-cookie-manager-changed.diff</filename>
            <type>text/plain</type>
            <size>11602</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmYzM1NmFkLi5hNDA1MTA1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEg
QEAKKzIwMTItMDMtMjkgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgorCisgICAgICAgIFtHVEtdIEFkZCBXZWJLaXRDb29raWVNYW5hZ2VyOjpjaGFuZ2VkIHNpZ25h
bCB0byBXZWJLaXQyIEdUSysgQVBJCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD04MjU5OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogR05VbWFrZWZpbGUubGlzdC5hbTogQWRkIG5ldyBmaWxlcyB0byBjb21w
aWxhdGlvbi4KKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvVGVtcG9yYXJ5TGlua1N0dWJzLmNwcDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ29va2llU3RvcmFnZVNvdXAuY3BwOiBB
ZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OnNldENvb2tpZVN0b3JhZ2VQcml2YXRlQnJvd3NpbmdF
bmFibGVkKToKKyAgICAgICAgKFdlYkNvcmU6OnNvdXBDb29raWVzQ2hhbmdlZCk6IE5vdGlmeSBj
b29raWVzIGNoYW5nZXMgdXNpbmcKKyAgICAgICAgcGxhdGZvcm0gc3RyYXRlZ2llcy4KKyAgICAg
ICAgKFdlYkNvcmU6OnN0YXJ0T2JzZXJ2aW5nQ29va2llQ2hhbmdlcyk6IENvbm5lY3QgdG8gY2hh
bmdlZCBzaWduYWwKKyAgICAgICAgb2YgdGhlIHNvdXAgY29va2llIGphci4KKyAgICAgICAgKFdl
YkNvcmU6OnN0b3BPYnNlcnZpbmdDb29raWVDaGFuZ2VzKTogRGlzY29ubmVjdCBzaWduYWxzIGhh
bmRsZXJzCisgICAgICAgIGZvciBjaGFuZ2VkIHNpZ25hbHMgb2YgdGhlIHNvdXAgY29va2llIGph
ci4KKwogMjAxMi0wMy0yOCAgS2VudCBUYW11cmEgIDx0a2VudEBjaHJvbWl1bS5vcmc+CiAKICAg
ICAgICAgQWRkIFRleHRGaWVsZERlY29yYXRpb25FbGVtZW50OjpkZWNvcmF0ZSgpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cK
aW5kZXggNzI2ODIxZC4uNTgxNjM5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEy
LTAzLTI5ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KKworICAg
ICAgICBbR1RLXSBBZGQgV2ViS2l0Q29va2llTWFuYWdlcjo6Y2hhbmdlZCBzaWduYWwgdG8gV2Vi
S2l0MiBHVEsrIEFQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9ODI1OTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdENvb2tpZU1hbmFnZXIuY3BwOgorICAgICAg
ICAod2Via2l0Q29va2llTWFuYWdlckZpbmFsaXplKTogU3RvcCBvYnNlcnZpbmcgY29va2llIGNo
YW5nZXMuCisgICAgICAgICh3ZWJraXRfY29va2llX21hbmFnZXJfY2xhc3NfaW5pdCk6IEFkZAor
ICAgICAgICBXZWJLaXRDb29raWVNYW5hZ2VyOjpjaGFuZ2VkIHNpZ25hbC4KKyAgICAgICAgKGNv
b2tpZXNEaWRDaGFuZ2UpOiBFbWl0IFdlYktpdENvb2tpZU1hbmFnZXI6OmNoYW5nZWQgc2lnbmFs
LgorICAgICAgICAod2Via2l0Q29va2llTWFuYWdlckNyZWF0ZSk6IEltcGxlbWVudCBXS0Nvb2tp
ZU1hbmFnZXJDbGllbnQgYW5kCisgICAgICAgIHN0YXJ0IG9ic2VydmluZyBjb29raWUgY2hhbmdl
cy4KKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2d0ay90ZXN0cy9UZXN0Q29va2llTWFuYWdlci5j
cHA6CisgICAgICAgICh0ZXN0Q29va2llTWFuYWdlckNvb2tpZXNDaGFuZ2VkKToKKyAgICAgICAg
KGJlZm9yZUFsbCk6CisKIDIwMTItMDMtMjggIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFw
cGxlLmNvbT4KIAogICAgICAgICBGaXggYSBjcmFzaCBhbmQgYW4gYXNzZXJ0aW9uIHdoZW4gcmVj
b3ZlcmluZyBmcm9tIGEgd2ViIHByb2Nlc3MgY3Jhc2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0gYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0
LmFtCmluZGV4IGZmODE5YjMuLmY2MTk3MzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0dO
VW1ha2VmaWxlLmxpc3QuYW0KKysrIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5h
bQpAQCAtMzQ0NSw2ICszNDQ1LDcgQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQXV0aGVudGljYXRpb25DaGFsbGVuZ2UuaCBcCiAJ
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0Nvb2tpZUphclNvdXAuY3BwIFwK
IAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ29va2llSmFyU291cC5oIFwK
KwlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ29va2llU3RvcmFnZVNvdXAu
Y3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ3JlZGVudGlhbFN0
b3JhZ2VTb3VwLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0RO
U1NvdXAuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvR093blB0
clNvdXAuY3BwIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9UZW1w
b3JhcnlMaW5rU3R1YnMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL1RlbXBvcmFy
eUxpbmtTdHVicy5jcHAKaW5kZXggZWVlMDdjZS4uY2IzNDQ0OSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3RrL1RlbXBvcmFyeUxpbmtTdHVicy5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3RrL1RlbXBvcmFyeUxpbmtTdHVicy5jcHAKQEAgLTQ3LDggKzQ3
LDUgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogdm9pZCBnZXRTdXBwb3J0ZWRLZXlTaXplcyhWZWN0
b3I8U3RyaW5nPiYpIHsgbm90SW1wbGVtZW50ZWQoKTsgfQogU3RyaW5nIHNpZ25lZFB1YmxpY0tl
eUFuZENoYWxsZW5nZVN0cmluZyh1bnNpZ25lZCBrZXlTaXplSW5kZXgsIGNvbnN0IFN0cmluZyAm
Y2hhbGxlbmdlU3RyaW5nLCBjb25zdCBLVVJMICZ1cmwpIHsgcmV0dXJuIFN0cmluZygpOyB9CiBm
bG9hdCB1c2VySWRsZVRpbWUoKSB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiBGTFRfTUFYOyB9
IC8vIHJldHVybiBhbiBhcmJpdHJhcmlseSBoaWdoIHVzZXJJZGxlVGltZSBzbyB0aGF0IHJlbGVh
c2luZyBwYWdlcyBmcm9tIHRoZSBwYWdlIGNhY2hlIGlzbid0IHBvc3Rwb25lZAotdm9pZCBzZXRD
b29raWVTdG9yYWdlUHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChib29sKSB7IG5vdEltcGxlbWVudGVk
KCk7IH0KLXZvaWQgc3RhcnRPYnNlcnZpbmdDb29raWVDaGFuZ2VzKCkgeyBub3RJbXBsZW1lbnRl
ZCgpOyB9Ci12b2lkIHN0b3BPYnNlcnZpbmdDb29raWVDaGFuZ2VzKCkgeyBub3RJbXBsZW1lbnRl
ZCgpOyB9CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
c291cC9Db29raWVTdG9yYWdlU291cC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL3NvdXAvQ29va2llU3RvcmFnZVNvdXAuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjJkNzE3NDcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL3NvdXAvQ29va2llU3RvcmFnZVNvdXAuY3BwCkBAIC0wLDAgKzEsNjAgQEAK
Ky8qCisgKiAgQ29weXJpZ2h0IChDKSAyMDEyIElnYWxpYSBTLkwuCisgKgorICogIFRoaXMgbGli
cmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAq
ICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVi
bGljCisgKiAgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRh
dGlvbjsgZWl0aGVyCisgKiAgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBv
cHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJp
YnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqICBidXQgV0lUSE9V
VCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICog
IE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNl
ZSB0aGUgR05VCisgKiAgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0
YWlscy4KKyAqCisgKiAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05V
IExlc3NlciBHZW5lcmFsIFB1YmxpYworICogIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJh
cnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKKyAqICBGb3VuZGF0aW9uLCBJ
bmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0x
MzAxICBVU0EKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiQ29va2llU3Rv
cmFnZS5oIgorCisjaW5jbHVkZSAiQ29va2llSmFyU291cC5oIgorI2luY2x1ZGUgIk5vdEltcGxl
bWVudGVkLmgiCisKKyNpZiBVU0UoUExBVEZPUk1fU1RSQVRFR0lFUykKKyNpbmNsdWRlICJDb29r
aWVzU3RyYXRlZ3kuaCIKKyNpbmNsdWRlICJQbGF0Zm9ybVN0cmF0ZWdpZXMuaCIKKyNlbmRpZgor
CisjaW5jbHVkZSA8c3RkaW8uaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCit2b2lkIHNldENv
b2tpZVN0b3JhZ2VQcml2YXRlQnJvd3NpbmdFbmFibGVkKGJvb2wgZW5hYmxlZCkKK3sKKyAgICBu
b3RJbXBsZW1lbnRlZCgpOworfQorCisjaWYgVVNFKFBMQVRGT1JNX1NUUkFURUdJRVMpCitzdGF0
aWMgdm9pZCBzb3VwQ29va2llc0NoYW5nZWQoU291cENvb2tpZUphciosIFNvdXBDb29raWUqLCBT
b3VwQ29va2llKiwgZ3BvaW50ZXIpCit7CisgICAgcGxhdGZvcm1TdHJhdGVnaWVzKCktPmNvb2tp
ZXNTdHJhdGVneSgpLT5ub3RpZnlDb29raWVzQ2hhbmdlZCgpOworfQorI2VuZGlmCisKK3ZvaWQg
c3RhcnRPYnNlcnZpbmdDb29raWVDaGFuZ2VzKCkKK3sKKyNpZiBVU0UoUExBVEZPUk1fU1RSQVRF
R0lFUykKKyAgICBnX3NpZ25hbF9jb25uZWN0KHNvdXBDb29raWVKYXIoKSwgImNoYW5nZWQiLCBH
X0NBTExCQUNLKHNvdXBDb29raWVzQ2hhbmdlZCksIDApOworI2VuZGlmCit9CisKK3ZvaWQgc3Rv
cE9ic2VydmluZ0Nvb2tpZUNoYW5nZXMoKQoreworI2lmIFVTRShQTEFURk9STV9TVFJBVEVHSUVT
KQorICAgIGdfc2lnbmFsX2hhbmRsZXJzX2Rpc2Nvbm5lY3RfYnlfZnVuYyhzb3VwQ29va2llSmFy
KCksIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHNvdXBDb29raWVzQ2hhbmdlZCksIDApOworI2Vu
ZGlmCit9CisKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3Rr
L1dlYktpdENvb2tpZU1hbmFnZXIuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9n
dGsvV2ViS2l0Q29va2llTWFuYWdlci5jcHAKaW5kZXggYjIwMTNlMC4uMjJlZTZiMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0Q29va2llTWFuYWdl
ci5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0Q29va2ll
TWFuYWdlci5jcHAKQEAgLTI3LDEwICsyNywxOCBAQAogCiB1c2luZyBuYW1lc3BhY2UgV2ViS2l0
OwogCitlbnVtIHsKKyAgICBDSEFOR0VELAorCisgICAgTEFTVF9TSUdOQUwKK307CisKIHN0cnVj
dCBfV2ViS2l0Q29va2llTWFuYWdlclByaXZhdGUgewogICAgIFdLUmV0YWluUHRyPFdLQ29va2ll
TWFuYWdlclJlZj4gd2tDb29raWVNYW5hZ2VyOwogfTsKIAorc3RhdGljIGd1aW50IHNpZ25hbHNb
TEFTVF9TSUdOQUxdID0geyAwLCB9OworCiBHX0RFRklORV9UWVBFKFdlYktpdENvb2tpZU1hbmFn
ZXIsIHdlYmtpdF9jb29raWVfbWFuYWdlciwgR19UWVBFX09CSkVDVCkKIAogQ09NUElMRV9BU1NF
UlRfTUFUQ0hJTkdfRU5VTShXRUJLSVRfQ09PS0lFX1BPTElDWV9BQ0NFUFRfQUxXQVlTLCBrV0tI
VFRQQ29va2llQWNjZXB0UG9saWN5QWx3YXlzKTsKQEAgLTQ2LDcgKzU0LDkgQEAgc3RhdGljIHZv
aWQgd2Via2l0X2Nvb2tpZV9tYW5hZ2VyX2luaXQoV2ViS2l0Q29va2llTWFuYWdlciogbWFuYWdl
cikKIAogc3RhdGljIHZvaWQgd2Via2l0Q29va2llTWFuYWdlckZpbmFsaXplKEdPYmplY3QqIG9i
amVjdCkKIHsKLSAgICBXRUJLSVRfQ09PS0lFX01BTkFHRVIob2JqZWN0KS0+cHJpdi0+fldlYktp
dENvb2tpZU1hbmFnZXJQcml2YXRlKCk7CisgICAgV2ViS2l0Q29va2llTWFuYWdlclByaXZhdGUq
IHByaXYgPSBXRUJLSVRfQ09PS0lFX01BTkFHRVIob2JqZWN0KS0+cHJpdjsKKyAgICBXS0Nvb2tp
ZU1hbmFnZXJTdGFydE9ic2VydmluZ0Nvb2tpZUNoYW5nZXMocHJpdi0+d2tDb29raWVNYW5hZ2Vy
LmdldCgpKTsKKyAgICBwcml2LT5+V2ViS2l0Q29va2llTWFuYWdlclByaXZhdGUoKTsKICAgICBH
X09CSkVDVF9DTEFTUyh3ZWJraXRfY29va2llX21hbmFnZXJfcGFyZW50X2NsYXNzKS0+ZmluYWxp
emUob2JqZWN0KTsKIH0KIApAQCAtNTYsMTIgKzY2LDQwIEBAIHN0YXRpYyB2b2lkIHdlYmtpdF9j
b29raWVfbWFuYWdlcl9jbGFzc19pbml0KFdlYktpdENvb2tpZU1hbmFnZXJDbGFzcyogZmluZENs
YXNzCiAgICAgZ09iamVjdENsYXNzLT5maW5hbGl6ZSA9IHdlYmtpdENvb2tpZU1hbmFnZXJGaW5h
bGl6ZTsKIAogICAgIGdfdHlwZV9jbGFzc19hZGRfcHJpdmF0ZShmaW5kQ2xhc3MsIHNpemVvZihX
ZWJLaXRDb29raWVNYW5hZ2VyUHJpdmF0ZSkpOworCisgICAgLyoqCisgICAgICogV2ViS2l0Q29v
a2llTWFuYWdlcjo6Y2hhbmdlZDoKKyAgICAgKiBAY29va2llX21hbmFnZXI6IHRoZSAjV2ViS2l0
Q29va2llTWFuYWdlcgorICAgICAqCisgICAgICogVGhpcyBzaWduYWwgaXMgZW1pdHRlZCB3aGVu
IGNvb2tpZXMgYXJlIGFkZGVkLCByZW1vdmVkIG9yIG1vZGlmaWVkLgorICAgICAqLworICAgIHNp
Z25hbHNbQ0hBTkdFRF0gPQorICAgICAgICBnX3NpZ25hbF9uZXcoImNoYW5nZWQiLAorICAgICAg
ICAgICAgICAgICAgICAgR19UWVBFX0ZST01fQ0xBU1MoZ09iamVjdENsYXNzKSwKKyAgICAgICAg
ICAgICAgICAgICAgIEdfU0lHTkFMX1JVTl9MQVNULAorICAgICAgICAgICAgICAgICAgICAgMCwg
MCwgMCwKKyAgICAgICAgICAgICAgICAgICAgIGdfY2Nsb3N1cmVfbWFyc2hhbF9WT0lEX19WT0lE
LAorICAgICAgICAgICAgICAgICAgICAgR19UWVBFX05PTkUsIDApOworfQorCitzdGF0aWMgdm9p
ZCBjb29raWVzRGlkQ2hhbmdlKFdLQ29va2llTWFuYWdlclJlZiwgY29uc3Qgdm9pZCogY2xpZW50
SW5mbykKK3sKKyAgICBnX3NpZ25hbF9lbWl0KFdFQktJVF9DT09LSUVfTUFOQUdFUihjbGllbnRJ
bmZvKSwgc2lnbmFsc1tDSEFOR0VEXSwgMCk7CiB9CiAKIFdlYktpdENvb2tpZU1hbmFnZXIqIHdl
YmtpdENvb2tpZU1hbmFnZXJDcmVhdGUoV0tDb29raWVNYW5hZ2VyUmVmIHdrQ29va2llTWFuYWdl
cikKIHsKICAgICBXZWJLaXRDb29raWVNYW5hZ2VyKiBtYW5hZ2VyID0gV0VCS0lUX0NPT0tJRV9N
QU5BR0VSKGdfb2JqZWN0X25ldyhXRUJLSVRfVFlQRV9DT09LSUVfTUFOQUdFUiwgTlVMTCkpOwog
ICAgIG1hbmFnZXItPnByaXYtPndrQ29va2llTWFuYWdlciA9IHdrQ29va2llTWFuYWdlcjsKKwor
ICAgIFdLQ29va2llTWFuYWdlckNsaWVudCB3a0Nvb2tpZU1hbmFnZXJDbGllbnQgPSB7CisgICAg
ICAgIGtXS0Nvb2tpZU1hbmFnZXJDbGllbnRDdXJyZW50VmVyc2lvbiwKKyAgICAgICAgbWFuYWdl
ciwgLy8gY2xpZW50SW5mbworICAgICAgICBjb29raWVzRGlkQ2hhbmdlCisgICAgfTsKKyAgICBX
S0Nvb2tpZU1hbmFnZXJTZXRDbGllbnQod2tDb29raWVNYW5hZ2VyLCAmd2tDb29raWVNYW5hZ2Vy
Q2xpZW50KTsKKyAgICBXS0Nvb2tpZU1hbmFnZXJTdGFydE9ic2VydmluZ0Nvb2tpZUNoYW5nZXMo
d2tDb29raWVNYW5hZ2VyKTsKKwogICAgIHJldHVybiBtYW5hZ2VyOwogfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay90ZXN0cy9UZXN0Q29va2llTWFuYWdl
ci5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay90ZXN0cy9UZXN0Q29va2ll
TWFuYWdlci5jcHAKaW5kZXggNmE3NGNiZS4uNmQyZWNmNSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvVGVzdENvb2tpZU1hbmFnZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL1Rlc3RDb29raWVNYW5hZ2Vy
LmNwcApAQCAtMzYsMTcgKzM2LDI4IEBAIGNsYXNzIENvb2tpZU1hbmFnZXJUZXN0OiBwdWJsaWMg
V2ViVmlld1Rlc3QgewogcHVibGljOgogICAgIE1BS0VfR0xJQl9URVNUX0ZJWFRVUkUoQ29va2ll
TWFuYWdlclRlc3QpOwogCisgICAgc3RhdGljIHZvaWQgY29va2llc0NoYW5nZWRDYWxsYmFjayhX
ZWJLaXRDb29raWVNYW5hZ2VyKiwgQ29va2llTWFuYWdlclRlc3QqIHRlc3QpCisgICAgeworICAg
ICAgICB0ZXN0LT5tX2Nvb2tpZXNDaGFuZ2VkID0gdHJ1ZTsKKyAgICAgICAgaWYgKHRlc3QtPm1f
ZmluaXNoTG9vcFdoZW5Db29raWVzQ2hhbmdlKQorICAgICAgICAgICAgZ19tYWluX2xvb3BfcXVp
dCh0ZXN0LT5tX21haW5Mb29wKTsKKyAgICB9CisKICAgICBDb29raWVNYW5hZ2VyVGVzdCgpCiAg
ICAgICAgIDogV2ViVmlld1Rlc3QoKQogICAgICAgICAsIG1fY29va2llTWFuYWdlcih3ZWJraXRf
d2ViX2NvbnRleHRfZ2V0X2Nvb2tpZV9tYW5hZ2VyKHdlYmtpdF93ZWJfdmlld19nZXRfY29udGV4
dChtX3dlYlZpZXcpKSkKICAgICAgICAgLCBtX2FjY2VwdFBvbGljeShXRUJLSVRfQ09PS0lFX1BP
TElDWV9BQ0NFUFRfTk9fVEhJUkRfUEFSVFkpCiAgICAgICAgICwgbV9kb21haW5zKDApCisgICAg
ICAgICwgbV9jb29raWVzQ2hhbmdlZChmYWxzZSkKKyAgICAgICAgLCBtX2ZpbmlzaExvb3BXaGVu
Q29va2llc0NoYW5nZShmYWxzZSkKICAgICB7CisgICAgICAgIGdfc2lnbmFsX2Nvbm5lY3QobV9j
b29raWVNYW5hZ2VyLCAiY2hhbmdlZCIsIEdfQ0FMTEJBQ0soY29va2llc0NoYW5nZWRDYWxsYmFj
ayksIHRoaXMpOwogICAgIH0KIAogICAgIH5Db29raWVNYW5hZ2VyVGVzdCgpCiAgICAgewogICAg
ICAgICBnX3N0cmZyZWV2KG1fZG9tYWlucyk7CisgICAgICAgIGdfc2lnbmFsX2hhbmRsZXJzX2Rp
c2Nvbm5lY3RfbWF0Y2hlZChtX2Nvb2tpZU1hbmFnZXIsIEdfU0lHTkFMX01BVENIX0RBVEEsIDAs
IDAsIDAsIDAsIHRoaXMpOwogICAgIH0KIAogICAgIHN0YXRpYyB2b2lkIGdldEFjY2VwdFBvbGlj
eVJlYWR5Q2FsbGJhY2soR09iamVjdCogb2JqZWN0LCBHQXN5bmNSZXN1bHQqIHJlc3VsdCwgZ3Bv
aW50ZXIgdXNlckRhdGEpCkBAIC0xMDUsOSArMTE2LDE5IEBAIHB1YmxpYzoKICAgICAgICAgd2Vi
a2l0X2Nvb2tpZV9tYW5hZ2VyX2RlbGV0ZV9hbGxfY29va2llcyhtX2Nvb2tpZU1hbmFnZXIpOwog
ICAgIH0KIAorICAgIHZvaWQgd2FpdFVudGlsQ29va2llc0NoYW5nZWQoKQorICAgIHsKKyAgICAg
ICAgbV9jb29raWVzQ2hhbmdlZCA9IGZhbHNlOworICAgICAgICBtX2ZpbmlzaExvb3BXaGVuQ29v
a2llc0NoYW5nZSA9IHRydWU7CisgICAgICAgIGdfbWFpbl9sb29wX3J1bihtX21haW5Mb29wKTsK
KyAgICAgICAgbV9maW5pc2hMb29wV2hlbkNvb2tpZXNDaGFuZ2UgPSBmYWxzZTsKKyAgICB9CisK
ICAgICBXZWJLaXRDb29raWVNYW5hZ2VyKiBtX2Nvb2tpZU1hbmFnZXI7CiAgICAgV2ViS2l0Q29v
a2llQWNjZXB0UG9saWN5IG1fYWNjZXB0UG9saWN5OwogICAgIGNoYXIqKiBtX2RvbWFpbnM7Cisg
ICAgYm9vbCBtX2Nvb2tpZXNDaGFuZ2VkOworICAgIGJvb2wgbV9maW5pc2hMb29wV2hlbkNvb2tp
ZXNDaGFuZ2U7CiB9OwogCiBzdGF0aWMgdm9pZCB0ZXN0Q29va2llTWFuYWdlckFjY2VwdFBvbGlj
eShDb29raWVNYW5hZ2VyVGVzdCogdGVzdCwgZ2NvbnN0cG9pbnRlcikKQEAgLTE2Niw2ICsxODcs
MjMgQEAgc3RhdGljIHZvaWQgdGVzdENvb2tpZU1hbmFnZXJEZWxldGVDb29raWVzKENvb2tpZU1h
bmFnZXJUZXN0KiB0ZXN0LCBnY29uc3Rwb2ludGUKICAgICBnX2Fzc2VydF9jbXBpbnQoZ19zdHJ2
X2xlbmd0aCh0ZXN0LT5nZXREb21haW5zKCkpLCA9PSwgMCk7CiB9CiAKK3N0YXRpYyB2b2lkIHRl
c3RDb29raWVNYW5hZ2VyQ29va2llc0NoYW5nZWQoQ29va2llTWFuYWdlclRlc3QqIHRlc3QsIGdj
b25zdHBvaW50ZXIpCit7CisgICAgZ19hc3NlcnQoIXRlc3QtPm1fY29va2llc0NoYW5nZWQpOwor
ICAgIHRlc3QtPnNldEFjY2VwdFBvbGljeShXRUJLSVRfQ09PS0lFX1BPTElDWV9BQ0NFUFRfQUxX
QVlTKTsKKyAgICB0ZXN0LT5sb2FkVVJJKGtTZXJ2ZXItPmdldFVSSUZvclBhdGgoIi9pbmRleC5o
dG1sIikuZGF0YSgpKTsKKyAgICB0ZXN0LT53YWl0VW50aWxMb2FkRmluaXNoZWQoKTsKKyAgICBn
X2Fzc2VydCh0ZXN0LT5tX2Nvb2tpZXNDaGFuZ2VkKTsKKworICAgIHRlc3QtPmRlbGV0ZUNvb2tp
ZXNGb3JEb21haW4oa0ZpcnN0UGFydHlEb21haW4pOworICAgIHRlc3QtPndhaXRVbnRpbENvb2tp
ZXNDaGFuZ2VkKCk7CisgICAgZ19hc3NlcnQodGVzdC0+bV9jb29raWVzQ2hhbmdlZCk7CisKKyAg
ICB0ZXN0LT5kZWxldGVBbGxDb29raWVzKCk7CisgICAgdGVzdC0+d2FpdFVudGlsQ29va2llc0No
YW5nZWQoKTsKKyAgICBnX2Fzc2VydCh0ZXN0LT5tX2Nvb2tpZXNDaGFuZ2VkKTsKK30KKwogc3Rh
dGljIHZvaWQgc2VydmVyQ2FsbGJhY2soU291cFNlcnZlciogc2VydmVyLCBTb3VwTWVzc2FnZSog
bWVzc2FnZSwgY29uc3QgY2hhciogcGF0aCwgR0hhc2hUYWJsZSosIFNvdXBDbGllbnRDb250ZXh0
KiwgZ3BvaW50ZXIpCiB7CiAgICAgaWYgKG1lc3NhZ2UtPm1ldGhvZCAhPSBTT1VQX01FVEhPRF9H
RVQpIHsKQEAgLTE5Miw2ICsyMzAsNyBAQCB2b2lkIGJlZm9yZUFsbCgpCiAKICAgICBDb29raWVN
YW5hZ2VyVGVzdDo6YWRkKCJXZWJLaXRDb29raWVNYW5hZ2VyIiwgImFjY2VwdC1wb2xpY3kiLCB0
ZXN0Q29va2llTWFuYWdlckFjY2VwdFBvbGljeSk7CiAgICAgQ29va2llTWFuYWdlclRlc3Q6OmFk
ZCgiV2ViS2l0Q29va2llTWFuYWdlciIsICJkZWxldGUtY29va2llcyIsIHRlc3RDb29raWVNYW5h
Z2VyRGVsZXRlQ29va2llcyk7CisgICAgQ29va2llTWFuYWdlclRlc3Q6OmFkZCgiV2ViS2l0Q29v
a2llTWFuYWdlciIsICJjb29raWVzLWNoYW5nZWQiLCB0ZXN0Q29va2llTWFuYWdlckNvb2tpZXND
aGFuZ2VkKTsKIH0KIAogdm9pZCBhZnRlckFsbCgpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>135292</attachid>
            <date>2012-04-03 01:50:45 -0700</date>
            <delta_ts>2012-04-24 06:46:11 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>wk2-cookies-changed2.diff</filename>
            <type>text/plain</type>
            <size>11759</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAyNzJkNzZjLi4yZDlkODA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMg
QEAKKzIwMTItMDQtMDMgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgorCisgICAgICAgIFtHVEtdIEFkZCBXZWJLaXRDb29raWVNYW5hZ2VyOjpjaGFuZ2VkIHNpZ25h
bCB0byBXZWJLaXQyIEdUSysgQVBJCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD04MjU5OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogR05VbWFrZWZpbGUubGlzdC5hbTogQWRkIG5ldyBmaWxlcyB0byBjb21w
aWxhdGlvbi4KKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvVGVtcG9yYXJ5TGlua1N0dWJzLmNwcDog
UmVtb3ZlIHN0dWJzIGZvcgorICAgICAgICBzZXRDb29raWVTdG9yYWdlUHJpdmF0ZUJyb3dzaW5n
RW5hYmxlZCwKKyAgICAgICAgc3RhcnRPYnNlcnZpbmdDb29raWVDaGFuZ2VzIGFuZCBzdG9wT2Jz
ZXJ2aW5nQ29va2llQ2hhbmdlcy4KKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ29v
a2llU3RvcmFnZVNvdXAuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OnNldENvb2tpZVN0
b3JhZ2VQcml2YXRlQnJvd3NpbmdFbmFibGVkKToKKyAgICAgICAgKFdlYkNvcmU6OnNvdXBDb29r
aWVzQ2hhbmdlZCk6IE5vdGlmeSBjb29raWVzIGNoYW5nZXMgdXNpbmcKKyAgICAgICAgcGxhdGZv
cm0gc3RyYXRlZ2llcy4KKyAgICAgICAgKFdlYkNvcmU6OnN0YXJ0T2JzZXJ2aW5nQ29va2llQ2hh
bmdlcyk6IENvbm5lY3QgdG8gY2hhbmdlZCBzaWduYWwKKyAgICAgICAgb2YgdGhlIHNvdXAgY29v
a2llIGphci4KKyAgICAgICAgKFdlYkNvcmU6OnN0b3BPYnNlcnZpbmdDb29raWVDaGFuZ2VzKTog
RGlzY29ubmVjdCBzaWduYWxzIGhhbmRsZXJzCisgICAgICAgIGZvciBjaGFuZ2VkIHNpZ25hbHMg
b2YgdGhlIHNvdXAgY29va2llIGphci4KKwogMjAxMi0wNC0wMiAgQ2FybG9zIEdhcmNpYSBDYW1w
b3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gRml4IG1ha2Ug
ZGlzdGNoZWNrIGlzc3Vlcy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCAxY2Y1YzE2Li5hMGFhMTEwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTItMDQtMDMgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8
Y2dhcmNpYUBpZ2FsaWEuY29tPgorCisgICAgICAgIFtHVEtdIEFkZCBXZWJLaXRDb29raWVNYW5h
Z2VyOjpjaGFuZ2VkIHNpZ25hbCB0byBXZWJLaXQyIEdUSysgQVBJCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MjU5OAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0
Q29va2llTWFuYWdlci5jcHA6CisgICAgICAgICh3ZWJraXRDb29raWVNYW5hZ2VyRmluYWxpemUp
OiBTdG9wIG9ic2VydmluZyBjb29raWUgY2hhbmdlcy4KKyAgICAgICAgKHdlYmtpdF9jb29raWVf
bWFuYWdlcl9jbGFzc19pbml0KTogQWRkCisgICAgICAgIFdlYktpdENvb2tpZU1hbmFnZXI6OmNo
YW5nZWQgc2lnbmFsLgorICAgICAgICAoY29va2llc0RpZENoYW5nZSk6IEVtaXQgV2ViS2l0Q29v
a2llTWFuYWdlcjo6Y2hhbmdlZCBzaWduYWwuCisgICAgICAgICh3ZWJraXRDb29raWVNYW5hZ2Vy
Q3JlYXRlKTogSW1wbGVtZW50IFdLQ29va2llTWFuYWdlckNsaWVudCBhbmQKKyAgICAgICAgc3Rh
cnQgb2JzZXJ2aW5nIGNvb2tpZSBjaGFuZ2VzLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3Rr
L3Rlc3RzL1Rlc3RDb29raWVNYW5hZ2VyLmNwcDoKKyAgICAgICAgKHRlc3RDb29raWVNYW5hZ2Vy
Q29va2llc0NoYW5nZWQpOgorICAgICAgICAoYmVmb3JlQWxsKToKKwogMjAxMi0wNC0wMiAgSGF5
YXRvIEl0byAgPGhheWF0b0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW1NoYWRvdyBET01dIElu
dHJvZHVjZSBDb21wb3NlZFNoYWRvd1RyZWVXYWxrZXIgYXMgYSBzdWNjZXNzb3Igb2YgUmVpZmll
ZFRyZWVUcmF2ZXJzYWwgQVBJcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvR05VbWFrZWZp
bGUubGlzdC5hbSBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KaW5kZXggNzk3
MTM3NC4uMWNhYjQ4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlz
dC5hbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCkBAIC0zNDQ3LDYg
KzM0NDcsNyBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvc291cC9BdXRoZW50aWNhdGlvbkNoYWxsZW5nZS5oIFwKIAlTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ29va2llSmFyU291cC5jcHAgXAogCVNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9Db29raWVKYXJTb3VwLmggXAorCVNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9Db29raWVTdG9yYWdlU291cC5jcHAgXAogCVNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9DcmVkZW50aWFsU3RvcmFnZVNvdXAuY3Bw
IFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvRE5TU291cC5jcHAgXAog
CVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9HT3duUHRyU291cC5jcHAgXApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL1RlbXBvcmFyeUxpbmtTdHVi
cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvVGVtcG9yYXJ5TGlua1N0dWJzLmNw
cAppbmRleCBlZWUwN2NlLi5jYjM0NDQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvVGVtcG9yYXJ5TGlua1N0dWJzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvVGVtcG9yYXJ5TGlua1N0dWJzLmNwcApAQCAtNDcsOCArNDcsNSBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiB2b2lkIGdldFN1cHBvcnRlZEtleVNpemVzKFZlY3RvcjxTdHJpbmc+Jikg
eyBub3RJbXBsZW1lbnRlZCgpOyB9CiBTdHJpbmcgc2lnbmVkUHVibGljS2V5QW5kQ2hhbGxlbmdl
U3RyaW5nKHVuc2lnbmVkIGtleVNpemVJbmRleCwgY29uc3QgU3RyaW5nICZjaGFsbGVuZ2VTdHJp
bmcsIGNvbnN0IEtVUkwgJnVybCkgeyByZXR1cm4gU3RyaW5nKCk7IH0KIGZsb2F0IHVzZXJJZGxl
VGltZSgpIHsgbm90SW1wbGVtZW50ZWQoKTsgcmV0dXJuIEZMVF9NQVg7IH0gLy8gcmV0dXJuIGFu
IGFyYml0cmFyaWx5IGhpZ2ggdXNlcklkbGVUaW1lIHNvIHRoYXQgcmVsZWFzaW5nIHBhZ2VzIGZy
b20gdGhlIHBhZ2UgY2FjaGUgaXNuJ3QgcG9zdHBvbmVkCi12b2lkIHNldENvb2tpZVN0b3JhZ2VQ
cml2YXRlQnJvd3NpbmdFbmFibGVkKGJvb2wpIHsgbm90SW1wbGVtZW50ZWQoKTsgfQotdm9pZCBz
dGFydE9ic2VydmluZ0Nvb2tpZUNoYW5nZXMoKSB7IG5vdEltcGxlbWVudGVkKCk7IH0KLXZvaWQg
c3RvcE9ic2VydmluZ0Nvb2tpZUNoYW5nZXMoKSB7IG5vdEltcGxlbWVudGVkKCk7IH0KIAogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0Nvb2tpZVN0
b3JhZ2VTb3VwLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9Db29r
aWVTdG9yYWdlU291cC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmQ3
MTc0NwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
c291cC9Db29raWVTdG9yYWdlU291cC5jcHAKQEAgLTAsMCArMSw2MCBAQAorLyoKKyAqICBDb3B5
cmlnaHQgKEMpIDIwMTIgSWdhbGlhIFMuTC4KKyAqCisgKiAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUg
c29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogIG1vZGlmeSBpdCB1
bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqICBMaWNl
bnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIK
KyAqICB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxh
dGVyIHZlcnNpb24uCisgKgorICogIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUg
aG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5U
WTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiAgTUVSQ0hBTlRBQklM
SVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAq
ICBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAq
ICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVy
YWwgUHVibGljCisgKiAgTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgaWYgbm90LCB3
cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQorICogIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5r
bGluIFN0cmVldCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAyMTEwLTEzMDEgIFVTQQorICov
CisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJDb29raWVTdG9yYWdlLmgiCisKKyNp
bmNsdWRlICJDb29raWVKYXJTb3VwLmgiCisjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKKwor
I2lmIFVTRShQTEFURk9STV9TVFJBVEVHSUVTKQorI2luY2x1ZGUgIkNvb2tpZXNTdHJhdGVneS5o
IgorI2luY2x1ZGUgIlBsYXRmb3JtU3RyYXRlZ2llcy5oIgorI2VuZGlmCisKKyNpbmNsdWRlIDxz
dGRpby5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3ZvaWQgc2V0Q29va2llU3RvcmFnZVBy
aXZhdGVCcm93c2luZ0VuYWJsZWQoYm9vbCBlbmFibGVkKQoreworICAgIG5vdEltcGxlbWVudGVk
KCk7Cit9CisKKyNpZiBVU0UoUExBVEZPUk1fU1RSQVRFR0lFUykKK3N0YXRpYyB2b2lkIHNvdXBD
b29raWVzQ2hhbmdlZChTb3VwQ29va2llSmFyKiwgU291cENvb2tpZSosIFNvdXBDb29raWUqLCBn
cG9pbnRlcikKK3sKKyAgICBwbGF0Zm9ybVN0cmF0ZWdpZXMoKS0+Y29va2llc1N0cmF0ZWd5KCkt
Pm5vdGlmeUNvb2tpZXNDaGFuZ2VkKCk7Cit9CisjZW5kaWYKKwordm9pZCBzdGFydE9ic2Vydmlu
Z0Nvb2tpZUNoYW5nZXMoKQoreworI2lmIFVTRShQTEFURk9STV9TVFJBVEVHSUVTKQorICAgIGdf
c2lnbmFsX2Nvbm5lY3Qoc291cENvb2tpZUphcigpLCAiY2hhbmdlZCIsIEdfQ0FMTEJBQ0soc291
cENvb2tpZXNDaGFuZ2VkKSwgMCk7CisjZW5kaWYKK30KKwordm9pZCBzdG9wT2JzZXJ2aW5nQ29v
a2llQ2hhbmdlcygpCit7CisjaWYgVVNFKFBMQVRGT1JNX1NUUkFURUdJRVMpCisgICAgZ19zaWdu
YWxfaGFuZGxlcnNfZGlzY29ubmVjdF9ieV9mdW5jKHNvdXBDb29raWVKYXIoKSwgcmVpbnRlcnBy
ZXRfY2FzdDx2b2lkKj4oc291cENvb2tpZXNDaGFuZ2VkKSwgMCk7CisjZW5kaWYKK30KKworfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0Q29va2ll
TWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRDb29r
aWVNYW5hZ2VyLmNwcAppbmRleCBiMjAxM2UwLi5iOTkzZDJlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRDb29raWVNYW5hZ2VyLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRDb29raWVNYW5hZ2VyLmNwcApA
QCAtMjcsMTAgKzI3LDE4IEBACiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7CiAKK2VudW0gewor
ICAgIENIQU5HRUQsCisKKyAgICBMQVNUX1NJR05BTAorfTsKKwogc3RydWN0IF9XZWJLaXRDb29r
aWVNYW5hZ2VyUHJpdmF0ZSB7CiAgICAgV0tSZXRhaW5QdHI8V0tDb29raWVNYW5hZ2VyUmVmPiB3
a0Nvb2tpZU1hbmFnZXI7CiB9OwogCitzdGF0aWMgZ3VpbnQgc2lnbmFsc1tMQVNUX1NJR05BTF0g
PSB7IDAsIH07CisKIEdfREVGSU5FX1RZUEUoV2ViS2l0Q29va2llTWFuYWdlciwgd2Via2l0X2Nv
b2tpZV9tYW5hZ2VyLCBHX1RZUEVfT0JKRUNUKQogCiBDT01QSUxFX0FTU0VSVF9NQVRDSElOR19F
TlVNKFdFQktJVF9DT09LSUVfUE9MSUNZX0FDQ0VQVF9BTFdBWVMsIGtXS0hUVFBDb29raWVBY2Nl
cHRQb2xpY3lBbHdheXMpOwpAQCAtNDYsNyArNTQsOSBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfY29v
a2llX21hbmFnZXJfaW5pdChXZWJLaXRDb29raWVNYW5hZ2VyKiBtYW5hZ2VyKQogCiBzdGF0aWMg
dm9pZCB3ZWJraXRDb29raWVNYW5hZ2VyRmluYWxpemUoR09iamVjdCogb2JqZWN0KQogewotICAg
IFdFQktJVF9DT09LSUVfTUFOQUdFUihvYmplY3QpLT5wcml2LT5+V2ViS2l0Q29va2llTWFuYWdl
clByaXZhdGUoKTsKKyAgICBXZWJLaXRDb29raWVNYW5hZ2VyUHJpdmF0ZSogcHJpdiA9IFdFQktJ
VF9DT09LSUVfTUFOQUdFUihvYmplY3QpLT5wcml2OworICAgIFdLQ29va2llTWFuYWdlclN0b3BP
YnNlcnZpbmdDb29raWVDaGFuZ2VzKHByaXYtPndrQ29va2llTWFuYWdlci5nZXQoKSk7CisgICAg
cHJpdi0+fldlYktpdENvb2tpZU1hbmFnZXJQcml2YXRlKCk7CiAgICAgR19PQkpFQ1RfQ0xBU1Mo
d2Via2l0X2Nvb2tpZV9tYW5hZ2VyX3BhcmVudF9jbGFzcyktPmZpbmFsaXplKG9iamVjdCk7CiB9
CiAKQEAgLTU2LDEyICs2Niw0MCBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfY29va2llX21hbmFnZXJf
Y2xhc3NfaW5pdChXZWJLaXRDb29raWVNYW5hZ2VyQ2xhc3MqIGZpbmRDbGFzcwogICAgIGdPYmpl
Y3RDbGFzcy0+ZmluYWxpemUgPSB3ZWJraXRDb29raWVNYW5hZ2VyRmluYWxpemU7CiAKICAgICBn
X3R5cGVfY2xhc3NfYWRkX3ByaXZhdGUoZmluZENsYXNzLCBzaXplb2YoV2ViS2l0Q29va2llTWFu
YWdlclByaXZhdGUpKTsKKworICAgIC8qKgorICAgICAqIFdlYktpdENvb2tpZU1hbmFnZXI6OmNo
YW5nZWQ6CisgICAgICogQGNvb2tpZV9tYW5hZ2VyOiB0aGUgI1dlYktpdENvb2tpZU1hbmFnZXIK
KyAgICAgKgorICAgICAqIFRoaXMgc2lnbmFsIGlzIGVtaXR0ZWQgd2hlbiBjb29raWVzIGFyZSBh
ZGRlZCwgcmVtb3ZlZCBvciBtb2RpZmllZC4KKyAgICAgKi8KKyAgICBzaWduYWxzW0NIQU5HRURd
ID0KKyAgICAgICAgZ19zaWduYWxfbmV3KCJjaGFuZ2VkIiwKKyAgICAgICAgICAgICAgICAgICAg
IEdfVFlQRV9GUk9NX0NMQVNTKGdPYmplY3RDbGFzcyksCisgICAgICAgICAgICAgICAgICAgICBH
X1NJR05BTF9SVU5fTEFTVCwKKyAgICAgICAgICAgICAgICAgICAgIDAsIDAsIDAsCisgICAgICAg
ICAgICAgICAgICAgICBnX2NjbG9zdXJlX21hcnNoYWxfVk9JRF9fVk9JRCwKKyAgICAgICAgICAg
ICAgICAgICAgIEdfVFlQRV9OT05FLCAwKTsKK30KKworc3RhdGljIHZvaWQgY29va2llc0RpZENo
YW5nZShXS0Nvb2tpZU1hbmFnZXJSZWYsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pCit7CisgICAg
Z19zaWduYWxfZW1pdChXRUJLSVRfQ09PS0lFX01BTkFHRVIoY2xpZW50SW5mbyksIHNpZ25hbHNb
Q0hBTkdFRF0sIDApOwogfQogCiBXZWJLaXRDb29raWVNYW5hZ2VyKiB3ZWJraXRDb29raWVNYW5h
Z2VyQ3JlYXRlKFdLQ29va2llTWFuYWdlclJlZiB3a0Nvb2tpZU1hbmFnZXIpCiB7CiAgICAgV2Vi
S2l0Q29va2llTWFuYWdlciogbWFuYWdlciA9IFdFQktJVF9DT09LSUVfTUFOQUdFUihnX29iamVj
dF9uZXcoV0VCS0lUX1RZUEVfQ09PS0lFX01BTkFHRVIsIE5VTEwpKTsKICAgICBtYW5hZ2VyLT5w
cml2LT53a0Nvb2tpZU1hbmFnZXIgPSB3a0Nvb2tpZU1hbmFnZXI7CisKKyAgICBXS0Nvb2tpZU1h
bmFnZXJDbGllbnQgd2tDb29raWVNYW5hZ2VyQ2xpZW50ID0geworICAgICAgICBrV0tDb29raWVN
YW5hZ2VyQ2xpZW50Q3VycmVudFZlcnNpb24sCisgICAgICAgIG1hbmFnZXIsIC8vIGNsaWVudElu
Zm8KKyAgICAgICAgY29va2llc0RpZENoYW5nZQorICAgIH07CisgICAgV0tDb29raWVNYW5hZ2Vy
U2V0Q2xpZW50KHdrQ29va2llTWFuYWdlciwgJndrQ29va2llTWFuYWdlckNsaWVudCk7CisgICAg
V0tDb29raWVNYW5hZ2VyU3RhcnRPYnNlcnZpbmdDb29raWVDaGFuZ2VzKHdrQ29va2llTWFuYWdl
cik7CisKICAgICByZXR1cm4gbWFuYWdlcjsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvVGVzdENvb2tpZU1hbmFnZXIuY3BwIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvVGVzdENvb2tpZU1hbmFnZXIuY3BwCmlu
ZGV4IDZhNzRjYmUuLjZkMmVjZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvZ3RrL3Rlc3RzL1Rlc3RDb29raWVNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL2d0ay90ZXN0cy9UZXN0Q29va2llTWFuYWdlci5jcHAKQEAgLTM2LDE3
ICszNiwyOCBAQCBjbGFzcyBDb29raWVNYW5hZ2VyVGVzdDogcHVibGljIFdlYlZpZXdUZXN0IHsK
IHB1YmxpYzoKICAgICBNQUtFX0dMSUJfVEVTVF9GSVhUVVJFKENvb2tpZU1hbmFnZXJUZXN0KTsK
IAorICAgIHN0YXRpYyB2b2lkIGNvb2tpZXNDaGFuZ2VkQ2FsbGJhY2soV2ViS2l0Q29va2llTWFu
YWdlciosIENvb2tpZU1hbmFnZXJUZXN0KiB0ZXN0KQorICAgIHsKKyAgICAgICAgdGVzdC0+bV9j
b29raWVzQ2hhbmdlZCA9IHRydWU7CisgICAgICAgIGlmICh0ZXN0LT5tX2ZpbmlzaExvb3BXaGVu
Q29va2llc0NoYW5nZSkKKyAgICAgICAgICAgIGdfbWFpbl9sb29wX3F1aXQodGVzdC0+bV9tYWlu
TG9vcCk7CisgICAgfQorCiAgICAgQ29va2llTWFuYWdlclRlc3QoKQogICAgICAgICA6IFdlYlZp
ZXdUZXN0KCkKICAgICAgICAgLCBtX2Nvb2tpZU1hbmFnZXIod2Via2l0X3dlYl9jb250ZXh0X2dl
dF9jb29raWVfbWFuYWdlcih3ZWJraXRfd2ViX3ZpZXdfZ2V0X2NvbnRleHQobV93ZWJWaWV3KSkp
CiAgICAgICAgICwgbV9hY2NlcHRQb2xpY3koV0VCS0lUX0NPT0tJRV9QT0xJQ1lfQUNDRVBUX05P
X1RISVJEX1BBUlRZKQogICAgICAgICAsIG1fZG9tYWlucygwKQorICAgICAgICAsIG1fY29va2ll
c0NoYW5nZWQoZmFsc2UpCisgICAgICAgICwgbV9maW5pc2hMb29wV2hlbkNvb2tpZXNDaGFuZ2Uo
ZmFsc2UpCiAgICAgeworICAgICAgICBnX3NpZ25hbF9jb25uZWN0KG1fY29va2llTWFuYWdlciwg
ImNoYW5nZWQiLCBHX0NBTExCQUNLKGNvb2tpZXNDaGFuZ2VkQ2FsbGJhY2spLCB0aGlzKTsKICAg
ICB9CiAKICAgICB+Q29va2llTWFuYWdlclRlc3QoKQogICAgIHsKICAgICAgICAgZ19zdHJmcmVl
dihtX2RvbWFpbnMpOworICAgICAgICBnX3NpZ25hbF9oYW5kbGVyc19kaXNjb25uZWN0X21hdGNo
ZWQobV9jb29raWVNYW5hZ2VyLCBHX1NJR05BTF9NQVRDSF9EQVRBLCAwLCAwLCAwLCAwLCB0aGlz
KTsKICAgICB9CiAKICAgICBzdGF0aWMgdm9pZCBnZXRBY2NlcHRQb2xpY3lSZWFkeUNhbGxiYWNr
KEdPYmplY3QqIG9iamVjdCwgR0FzeW5jUmVzdWx0KiByZXN1bHQsIGdwb2ludGVyIHVzZXJEYXRh
KQpAQCAtMTA1LDkgKzExNiwxOSBAQCBwdWJsaWM6CiAgICAgICAgIHdlYmtpdF9jb29raWVfbWFu
YWdlcl9kZWxldGVfYWxsX2Nvb2tpZXMobV9jb29raWVNYW5hZ2VyKTsKICAgICB9CiAKKyAgICB2
b2lkIHdhaXRVbnRpbENvb2tpZXNDaGFuZ2VkKCkKKyAgICB7CisgICAgICAgIG1fY29va2llc0No
YW5nZWQgPSBmYWxzZTsKKyAgICAgICAgbV9maW5pc2hMb29wV2hlbkNvb2tpZXNDaGFuZ2UgPSB0
cnVlOworICAgICAgICBnX21haW5fbG9vcF9ydW4obV9tYWluTG9vcCk7CisgICAgICAgIG1fZmlu
aXNoTG9vcFdoZW5Db29raWVzQ2hhbmdlID0gZmFsc2U7CisgICAgfQorCiAgICAgV2ViS2l0Q29v
a2llTWFuYWdlciogbV9jb29raWVNYW5hZ2VyOwogICAgIFdlYktpdENvb2tpZUFjY2VwdFBvbGlj
eSBtX2FjY2VwdFBvbGljeTsKICAgICBjaGFyKiogbV9kb21haW5zOworICAgIGJvb2wgbV9jb29r
aWVzQ2hhbmdlZDsKKyAgICBib29sIG1fZmluaXNoTG9vcFdoZW5Db29raWVzQ2hhbmdlOwogfTsK
IAogc3RhdGljIHZvaWQgdGVzdENvb2tpZU1hbmFnZXJBY2NlcHRQb2xpY3koQ29va2llTWFuYWdl
clRlc3QqIHRlc3QsIGdjb25zdHBvaW50ZXIpCkBAIC0xNjYsNiArMTg3LDIzIEBAIHN0YXRpYyB2
b2lkIHRlc3RDb29raWVNYW5hZ2VyRGVsZXRlQ29va2llcyhDb29raWVNYW5hZ2VyVGVzdCogdGVz
dCwgZ2NvbnN0cG9pbnRlCiAgICAgZ19hc3NlcnRfY21waW50KGdfc3Rydl9sZW5ndGgodGVzdC0+
Z2V0RG9tYWlucygpKSwgPT0sIDApOwogfQogCitzdGF0aWMgdm9pZCB0ZXN0Q29va2llTWFuYWdl
ckNvb2tpZXNDaGFuZ2VkKENvb2tpZU1hbmFnZXJUZXN0KiB0ZXN0LCBnY29uc3Rwb2ludGVyKQor
eworICAgIGdfYXNzZXJ0KCF0ZXN0LT5tX2Nvb2tpZXNDaGFuZ2VkKTsKKyAgICB0ZXN0LT5zZXRB
Y2NlcHRQb2xpY3koV0VCS0lUX0NPT0tJRV9QT0xJQ1lfQUNDRVBUX0FMV0FZUyk7CisgICAgdGVz
dC0+bG9hZFVSSShrU2VydmVyLT5nZXRVUklGb3JQYXRoKCIvaW5kZXguaHRtbCIpLmRhdGEoKSk7
CisgICAgdGVzdC0+d2FpdFVudGlsTG9hZEZpbmlzaGVkKCk7CisgICAgZ19hc3NlcnQodGVzdC0+
bV9jb29raWVzQ2hhbmdlZCk7CisKKyAgICB0ZXN0LT5kZWxldGVDb29raWVzRm9yRG9tYWluKGtG
aXJzdFBhcnR5RG9tYWluKTsKKyAgICB0ZXN0LT53YWl0VW50aWxDb29raWVzQ2hhbmdlZCgpOwor
ICAgIGdfYXNzZXJ0KHRlc3QtPm1fY29va2llc0NoYW5nZWQpOworCisgICAgdGVzdC0+ZGVsZXRl
QWxsQ29va2llcygpOworICAgIHRlc3QtPndhaXRVbnRpbENvb2tpZXNDaGFuZ2VkKCk7CisgICAg
Z19hc3NlcnQodGVzdC0+bV9jb29raWVzQ2hhbmdlZCk7Cit9CisKIHN0YXRpYyB2b2lkIHNlcnZl
ckNhbGxiYWNrKFNvdXBTZXJ2ZXIqIHNlcnZlciwgU291cE1lc3NhZ2UqIG1lc3NhZ2UsIGNvbnN0
IGNoYXIqIHBhdGgsIEdIYXNoVGFibGUqLCBTb3VwQ2xpZW50Q29udGV4dCosIGdwb2ludGVyKQog
ewogICAgIGlmIChtZXNzYWdlLT5tZXRob2QgIT0gU09VUF9NRVRIT0RfR0VUKSB7CkBAIC0xOTIs
NiArMjMwLDcgQEAgdm9pZCBiZWZvcmVBbGwoKQogCiAgICAgQ29va2llTWFuYWdlclRlc3Q6OmFk
ZCgiV2ViS2l0Q29va2llTWFuYWdlciIsICJhY2NlcHQtcG9saWN5IiwgdGVzdENvb2tpZU1hbmFn
ZXJBY2NlcHRQb2xpY3kpOwogICAgIENvb2tpZU1hbmFnZXJUZXN0OjphZGQoIldlYktpdENvb2tp
ZU1hbmFnZXIiLCAiZGVsZXRlLWNvb2tpZXMiLCB0ZXN0Q29va2llTWFuYWdlckRlbGV0ZUNvb2tp
ZXMpOworICAgIENvb2tpZU1hbmFnZXJUZXN0OjphZGQoIldlYktpdENvb2tpZU1hbmFnZXIiLCAi
Y29va2llcy1jaGFuZ2VkIiwgdGVzdENvb2tpZU1hbmFnZXJDb29raWVzQ2hhbmdlZCk7CiB9CiAK
IHZvaWQgYWZ0ZXJBbGwoKQo=
</data>
<flag name="review"
          id="139748"
          type_id="1"
          status="+"
          setter="pnormand"
    />
          </attachment>
      

    </bug>

</bugzilla>