<?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>111083</bug_id>
          
          <creation_ts>2013-02-28 09:23:01 -0800</creation_ts>
          <short_desc>[BlackBerry] Set-Cookie headers received while loading is deferred should be processed immediately</short_desc>
          <delta_ts>2013-02-28 10:55:08 -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>Page Loading</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>Other</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Joe Mason">joenotcharles</reporter>
          <assigned_to name="Joe Mason">joenotcharles</assigned_to>
          <cc>mifenton</cc>
    
    <cc>rwlbuis</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>844147</commentid>
    <comment_count>0</comment_count>
    <who name="Joe Mason">joenotcharles</who>
    <bug_when>2013-02-28 09:23:01 -0800</bug_when>
    <thetext>While loading is deferred, incoming headers are buffered until loading resumes. But new requests (which need to read cookie headers) can be created, and these are expected to include the cookies from those requests.

A specific scenario is when request receives a 401 response with a Set-Cookie header is received. First NetworkJob is signalled that there was an authentication failure and credentials are needed, so it opens a password dialog and defers loading until it is closed. Then the headers and data from the response arrive and are buffered. After the user closes the dialog, first the credentials are processed - meaning a followup request is created, identical to the original but with new Cookie and Authorization headers - and then loading is resumed - and now the Set-Cookie headers are processed.

Since some custom auth schemes depend on setting a cookie with the 401 response and receiving it back with the followup, the cookies from the Set-Cookie headers must be added to the cookie jar before creating the followup request, even if loading is deferred due to the auth dialog.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>844150</commentid>
    <comment_count>1</comment_count>
      <attachid>190740</attachid>
    <who name="Joe Mason">joenotcharles</who>
    <bug_when>2013-02-28 09:34:35 -0800</bug_when>
    <thetext>Created attachment 190740
fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>844200</commentid>
    <comment_count>2</comment_count>
      <attachid>190740</attachid>
    <who name="Yong Li">yong.li.webkit</who>
    <bug_when>2013-02-28 10:29:44 -0800</bug_when>
    <thetext>Comment on attachment 190740
fix

based on Leo&apos;s review</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>844224</commentid>
    <comment_count>3</comment_count>
      <attachid>190740</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-28 10:55:04 -0800</bug_when>
    <thetext>Comment on attachment 190740
fix

Clearing flags on attachment: 190740

Committed r144326: &lt;http://trac.webkit.org/changeset/144326&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>844225</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-28 10:55:08 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>190740</attachid>
            <date>2013-02-28 09:34:35 -0800</date>
            <delta_ts>2013-02-28 10:55:04 -0800</delta_ts>
            <desc>fix</desc>
            <filename>0001-BlackBerry-Handle-Set-Cookie-immediately-even-when-l.patch</filename>
            <type>text/plain</type>
            <size>5273</size>
            <attacher name="Joe Mason">joenotcharles</attacher>
            
              <data encoding="base64">RnJvbSA3Yzk1MTQzOTdlOTRkYjViNjAwOWMyZDFmMTNkZTFiN2JhNmE5ZDJjIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBKb2UgTWFzb24gPGptYXNvbkByaW0uY29tPgpEYXRlOiBXZWQs
IDI3IEZlYiAyMDEzIDIzOjE2OjM3IC0wNTAwClN1YmplY3Q6IFtQQVRDSCAxLzRdIFtCbGFja0Jl
cnJ5XSBIYW5kbGUgU2V0LUNvb2tpZSBpbW1lZGlhdGVseSBldmVuIHdoZW4KIGxvYWRpbmcgaXMg
ZGVmZXJyZWQKIGlodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTExMDgz
CgpSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCkludGVybmFsIFBSOiAyOTg4MDUKSW50ZXJu
YWxseSBSZXZpZXdlZCBCeTogTGVvIFlhbmcKCkhhbmRsZSBTZXQtQ29va2llIGhlYWRlcnMgaW1t
ZWRpYXRlbHksIGV2ZW4gaWYgbG9hZGluZyBpcyBiZWluZyBkZWZlcnJlZCwgc2luY2UgYW55IHJl
cXVlc3QKY3JlYXRlZCB3aGlsZSBsb2FkaW5nIGlzIGRlZmVycmVkIHNob3VsZCBpbmNsdWRlIGFs
bCBjb29raWVzIHJlY2VpdmVkLiAoVGhpcyBlc3BlY2lhbGx5CmFmZmVjdHMgU2V0LUNvb2tpZSBo
ZWFkZXJzIHNlbnQgd2l0aCBhIDQwMSByZXNwb25zZSAtIG9mdGVuIHRoaXMgY2F1c2VzIGFuIGF1
dGggZGlhbG9nIHRvIGJlCm9wZW5lZCwgd2hpY2ggZGVmZXJzIGxvYWRpbmcsIGJ1dCB0aGUgZm9s
bG93dXAgcmVxdWVzdCB1c2luZyB0aGUgY3JlZGVudGlhbHMgZnJvbSB0aGUgZGlhbG9nCm5lZWRz
IHRvIGluY2x1ZGUgdGhlIGNvb2tpZS4pCgpUaGlzIGlzIHNhZmUgYmVjYXVzZSBoYW5kbGVTZXRD
b29raWVIZWFkZXIgb25seSB1cGRhdGVzIHRoZSBjb29raWVqYXIsIGl0IGRvZXNuJ3QgY2FsbCBi
YWNrCmludG8gdGhlIGxvYWRlci4KCiogcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L05ldHdv
cmtKb2IuY3BwOgooV2ViQ29yZTo6TmV0d29ya0pvYjo6bm90aWZ5SGVhZGVyc1JlY2VpdmVkKToK
KFdlYkNvcmU6Ok5ldHdvcmtKb2I6OmhhbmRsZU5vdGlmeUhlYWRlclJlY2VpdmVkKToKLS0tCiBT
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMjMg
KysrKysrKysrKysrKysrKysrKysKIC4uLi9wbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvTmV0
d29ya0pvYi5jcHAgICAgIHwgICAyMCArKysrKysrKysrKysrLS0tCiAyIGZpbGVzIGNoYW5nZWQs
IDM5IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGM2MDk1ZDUu
LmY2ZTZhNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAxMy0wMi0yNyAgSm9lIE1h
c29uICA8am1hc29uQHJpbS5jb20+CisKKyAgICAgICAgW0JsYWNrQmVycnldIEhhbmRsZSBTZXQt
Q29va2llIGltbWVkaWF0ZWx5IGV2ZW4gd2hlbiBsb2FkaW5nIGlzIGRlZmVycmVkCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTEwODMKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbnRlcm5hbCBQUjogMjk4
ODA1CisgICAgICAgIEludGVybmFsbHkgUmV2aWV3ZWQgQnk6IExlbyBZYW5nCisKKyAgICAgICAg
SGFuZGxlIFNldC1Db29raWUgaGVhZGVycyBpbW1lZGlhdGVseSwgZXZlbiBpZiBsb2FkaW5nIGlz
IGJlaW5nIGRlZmVycmVkLCBzaW5jZSBhbnkgcmVxdWVzdAorICAgICAgICBjcmVhdGVkIHdoaWxl
IGxvYWRpbmcgaXMgZGVmZXJyZWQgc2hvdWxkIGluY2x1ZGUgYWxsIGNvb2tpZXMgcmVjZWl2ZWQu
IChUaGlzIGVzcGVjaWFsbHkKKyAgICAgICAgYWZmZWN0cyBTZXQtQ29va2llIGhlYWRlcnMgc2Vu
dCB3aXRoIGEgNDAxIHJlc3BvbnNlIC0gb2Z0ZW4gdGhpcyBjYXVzZXMgYW4gYXV0aCBkaWFsb2cg
dG8gYmUKKyAgICAgICAgb3BlbmVkLCB3aGljaCBkZWZlcnMgbG9hZGluZywgYnV0IHRoZSBmb2xs
b3d1cCByZXF1ZXN0IHVzaW5nIHRoZSBjcmVkZW50aWFscyBmcm9tIHRoZSBkaWFsb2cKKyAgICAg
ICAgbmVlZHMgdG8gaW5jbHVkZSB0aGUgY29va2llLikKKworICAgICAgICBUaGlzIGlzIHNhZmUg
YmVjYXVzZSBoYW5kbGVTZXRDb29raWVIZWFkZXIgb25seSB1cGRhdGVzIHRoZSBjb29raWVqYXIs
IGl0IGRvZXNuJ3QgY2FsbCBiYWNrCisgICAgICAgIGludG8gdGhlIGxvYWRlci4KKworICAgICAg
ICAqIHBsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9OZXR3b3JrSm9iLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6Ok5ldHdvcmtKb2I6Om5vdGlmeUhlYWRlcnNSZWNlaXZlZCk6CisgICAgICAgIChX
ZWJDb3JlOjpOZXR3b3JrSm9iOjpoYW5kbGVOb3RpZnlIZWFkZXJSZWNlaXZlZCk6CisKIDIwMTMt
MDItMjcgIEVsaSBGaWRsZXIgIDxlZmlkbGVyQHJpbS5jb20+CiAKICAgICAgICAgW0JsYWNrQmVy
cnldIEZpeCBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6U3RyaW5nIHRvIFdURjo6U3RyaW5nIGNvbnZl
cnNpb24gd2hlbiB0aGUgc3RyaW5nIGlzIExhdGluLTEtZW5jb2RlZC4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9OZXR3b3JrSm9iLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9OZXR3b3JrSm9iLmNw
cAppbmRleCBlYTRjOGRhLi4xNDdlNDNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvTmV0d29ya0pvYi5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L05ldHdvcmtKb2IuY3BwCkBAIC0yMzUsMTIg
KzIzNSwyNyBAQCB2b2lkIE5ldHdvcmtKb2I6OmhhbmRsZU5vdGlmeVN0YXR1c1JlY2VpdmVkKGlu
dCBzdGF0dXMsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSkKIAogdm9pZCBOZXR3b3JrSm9iOjpub3Rp
ZnlIZWFkZXJzUmVjZWl2ZWQoY29uc3QgQmxhY2tCZXJyeTo6UGxhdGZvcm06Ok5ldHdvcmtSZXF1
ZXN0OjpIZWFkZXJMaXN0JiBoZWFkZXJzKQogeworICAgIGJvb2wgY29va2llc0VuYWJsZWQgPSBt
X2ZyYW1lICYmIG1fZnJhbWUtPmxvYWRlcigpICYmIG1fZnJhbWUtPmxvYWRlcigpLT5jbGllbnQo
KQorICAgICAgICAmJiBzdGF0aWNfY2FzdDxGcmFtZUxvYWRlckNsaWVudEJsYWNrQmVycnkqPiht
X2ZyYW1lLT5sb2FkZXIoKS0+Y2xpZW50KCkpLT5jb29raWVzRW5hYmxlZCgpOworCiAgICAgQmxh
Y2tCZXJyeTo6UGxhdGZvcm06Ok5ldHdvcmtSZXF1ZXN0OjpIZWFkZXJMaXN0Ojpjb25zdF9pdGVy
YXRvciBlbmRJdCA9IGhlYWRlcnMuZW5kKCk7CiAgICAgZm9yIChCbGFja0JlcnJ5OjpQbGF0Zm9y
bTo6TmV0d29ya1JlcXVlc3Q6OkhlYWRlckxpc3Q6OmNvbnN0X2l0ZXJhdG9yIGl0ID0gaGVhZGVy
cy5iZWdpbigpOyBpdCAhPSBlbmRJdDsgKytpdCkgeworCisgICAgICAgIC8vIEhhbmRsZSBTZXQt
Q29va2llIGhlYWRlcnMgaW1tZWRpYXRlbHksIGV2ZW4gaWYgbG9hZGluZyBpcyBiZWluZyBkZWZl
cnJlZCwgc2luY2UgYW55IHJlcXVlc3QKKyAgICAgICAgLy8gY3JlYXRlZCB3aGlsZSBsb2FkaW5n
IGlzIGRlZmVycmVkIHNob3VsZCBpbmNsdWRlIGFsbCBjb29raWVzIHJlY2VpdmVkLiAoVGhpcyBl
c3BlY2lhbGx5CisgICAgICAgIC8vIGFmZmVjdHMgU2V0LUNvb2tpZSBoZWFkZXJzIHNlbnQgd2l0
aCBhIDQwMSByZXNwb25zZSAtIG9mdGVuIHRoaXMgY2F1c2VzIGFuIGF1dGggZGlhbG9nIHRvIGJl
CisgICAgICAgIC8vIG9wZW5lZCwgd2hpY2ggZGVmZXJzIGxvYWRpbmcsIGJ1dCB0aGUgZm9sbG93
dXAgcmVxdWVzdCB1c2luZyB0aGUgY3JlZGVudGlhbHMgZnJvbSB0aGUgZGlhbG9nCisgICAgICAg
IC8vIG5lZWRzIHRvIGluY2x1ZGUgdGhlIGNvb2tpZS4pCisgICAgICAgIC8vCisgICAgICAgIC8v
IFRoaXMgaXMgc2FmZSBiZWNhdXNlIGhhbmRsZVNldENvb2tpZUhlYWRlciBvbmx5IHVwZGF0ZXMg
dGhlIGNvb2tpZWphciwgaXQgZG9lc24ndCBjYWxsIGJhY2sKKyAgICAgICAgLy8gaW50byB0aGUg
bG9hZGVyLgorICAgICAgICBTdHJpbmcga2V5U3RyaW5nKGl0LT5maXJzdCk7CisgICAgICAgIGlm
IChjb29raWVzRW5hYmxlZCAmJiBlcXVhbElnbm9yaW5nQ2FzZShrZXlTdHJpbmcsICJzZXQtY29v
a2llIikpCisgICAgICAgICAgICBoYW5kbGVTZXRDb29raWVIZWFkZXIoaXQtPnNlY29uZCk7CisK
ICAgICAgICAgaWYgKHNob3VsZERlZmVyTG9hZGluZygpKQogICAgICAgICAgICAgbV9kZWZlcnJl
ZERhdGEuZGVmZXJIZWFkZXJSZWNlaXZlZChpdC0+Zmlyc3QsIGl0LT5zZWNvbmQpOwogICAgICAg
ICBlbHNlIHsKLSAgICAgICAgICAgIFN0cmluZyBrZXlTdHJpbmcoaXQtPmZpcnN0KTsKICAgICAg
ICAgICAgIFN0cmluZyB2YWx1ZVN0cmluZzsKICAgICAgICAgICAgIGlmIChlcXVhbElnbm9yaW5n
Q2FzZShrZXlTdHJpbmcsICJMb2NhdGlvbiIpKSB7CiAgICAgICAgICAgICAgICAgLy8gTG9jYXRp
b24sIGxpa2UgYWxsIGhlYWRlcnMsIGlzIHN1cHBvc2VkIHRvIGJlIExhdGluLTEuIEJ1dCBzb21l
IHNpdGVzICh3aWtpcGVkaWEpIHNlbmQgaXQgaW4gVVRGLTguCkBAIC0zODgsOSArNDAzLDYgQEAg
dm9pZCBOZXR3b3JrSm9iOjpoYW5kbGVOb3RpZnlIZWFkZXJSZWNlaXZlZChjb25zdCBTdHJpbmcm
IGtleSwgY29uc3QgU3RyaW5nJiB2YWwKICAgICAgICAgbV9jb250ZW50VHlwZSA9IHZhbHVlLmxv
d2VyKCk7CiAgICAgZWxzZSBpZiAobG93ZXJLZXkgPT0gImNvbnRlbnQtZGlzcG9zaXRpb24iKQog
ICAgICAgICBtX2NvbnRlbnREaXNwb3NpdGlvbiA9IHZhbHVlOwotICAgIGVsc2UgaWYgKGxvd2Vy
S2V5ID09ICJzZXQtY29va2llIiAmJiBtX2ZyYW1lICYmIG1fZnJhbWUtPmxvYWRlcigpICYmIG1f
ZnJhbWUtPmxvYWRlcigpLT5jbGllbnQoKQotICAgICAgICAmJiBzdGF0aWNfY2FzdDxGcmFtZUxv
YWRlckNsaWVudEJsYWNrQmVycnkqPihtX2ZyYW1lLT5sb2FkZXIoKS0+Y2xpZW50KCkpLT5jb29r
aWVzRW5hYmxlZCgpKQotICAgICAgICBoYW5kbGVTZXRDb29raWVIZWFkZXIodmFsdWUpOwogICAg
IGVsc2UgaWYgKGVxdWFsSWdub3JpbmdDYXNlKGtleSwgQmxhY2tCZXJyeTo6UGxhdGZvcm06Ok5l
dHdvcmtSZXF1ZXN0OjpIRUFERVJfQkxBQ0tCRVJSWV9GVFApKQogICAgICAgICBoYW5kbGVGVFBI
ZWFkZXIodmFsdWUpOwogCi0tIAoxLjcuNS40Cgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>