<?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>145406</bug_id>
          
          <creation_ts>2015-05-27 01:00:51 -0700</creation_ts>
          <short_desc>[SOUP] Network Cache: Handle the case when we fail to create the IO stream</short_desc>
          <delta_ts>2015-05-27 01:37:58 -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>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>Gtk, Soup</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>koivisto</cc>
    
    <cc>svillar</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1097618</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-05-27 01:00:51 -0700</bug_when>
    <thetext>We are currently asserting in that case, but it can happen that we fail to create the stream. It happened to me after r184690, that changed the NetworkCache::Key hashes. 

(process:11766): GLib-GIO-CRITICAL **: g_input_stream_read_async: assertion &apos;G_IS_INPUT_STREAM (stream)&apos; failed

(process:11766): GLib-GIO-CRITICAL **: g_input_stream_read_async: assertion &apos;G_IS_INPUT_STREAM (stream)&apos; failed

(process:11766): GLib-GIO-CRITICAL **: g_input_stream_read_async: assertion &apos;G_IS_INPUT_STREAM (stream)&apos; failed

(process:11766): GLib-GIO-CRITICAL **: g_input_stream_read_async: assertion &apos;G_IS_INPUT_STREAM (stream)&apos; failed

(process:11766): GLib-GIO-CRITICAL **: g_input_stream_read_async: assertion &apos;G_IS_INPUT_STREAM (stream)&apos; failed

(process:11766): GLib-GIO-CRITICAL **: g_input_stream_read_async: assertion &apos;G_IS_INPUT_STREAM (stream)&apos; failed

Since this was not expected to happen, the async operation never finished and then the completion handler never called, leaving those resources loading forever. We should make sure we call the completion handler with an error code, so that the load finishes and the entry is silently removed from the cache.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1097619</commentid>
    <comment_count>1</comment_count>
      <attachid>253787</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-05-27 01:04:10 -0700</bug_when>
    <thetext>Created attachment 253787
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1097624</commentid>
    <comment_count>2</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-05-27 01:37:58 -0700</bug_when>
    <thetext>Committed r184901: &lt;http://trac.webkit.org/changeset/184901&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>253787</attachid>
            <date>2015-05-27 01:04:10 -0700</date>
            <delta_ts>2015-05-27 01:34:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wk2-network-cache-error-stream.diff</filename>
            <type>text/plain</type>
            <size>4657</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCAzMGFlM2MzLi5jMGY1MjhlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQg
QEAKKzIwMTUtMDUtMjcgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgorCisgICAgICAgIFtTT1VQXSBOZXR3b3JrIENhY2hlOiBIYW5kbGUgdGhlIGNhc2Ugd2hlbiB3
ZSBmYWlsIHRvIGNyZWF0ZSB0aGUgSU8gc3RyZWFtCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDU0MDYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBXZSB3ZXJlIGFzc2VydGluZyBpbiB0aGF0IGNhc2UsIGJ1
dCBpdCBjYW4gaGFwcGVuIHRoYXQgd2UKKyAgICAgICAgZmFpbCB0byBjcmVhdGUgdGhlIHN0cmVh
bS4gSXQgaGFwcGVuZWQgdG8gbWUgYWZ0ZXIgcjE4NDY5MCwgdGhhdAorICAgICAgICBjaGFuZ2Vk
IHRoZSBOZXR3b3JrQ2FjaGU6OktleSBoYXNoLiBTaW5jZSB0aGlzIHdhcyBub3QgZXhwZWN0ZWQg
dG8KKyAgICAgICAgaGFwcGVuLCB0aGUgYXN5bmMgb3BlcmF0aW9uIG5ldmVyIGZpbmlzaGVkIGFu
ZCB0aGUgY29tcGxldGlvbgorICAgICAgICBoYW5kbGVyIG5ldmVyIGNhbGxlZCwgbGVhdmluZyBy
ZXNvdXJjZXMgbG9hZGluZyBmb3JldmVyLiBXZQorICAgICAgICBzaG91bGQgbWFrZSBzdXJlIHdl
IGNhbGwgdGhlIGNvbXBsZXRpb24gaGFuZGxlciB3aXRoIGFuIGVycm9yCisgICAgICAgIGNvZGUs
IHNvIHRoYXQgdGhlIGxvYWQgZmluaXNoZXMgYW5kIHRoZSBlbnRyeSBpcyBzaWxlbnRseSByZW1v
dmVkCisgICAgICAgIGZyb20gdGhlIGNhY2hlLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mv
Y2FjaGUvTmV0d29ya0NhY2hlSU9DaGFubmVsU291cC5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtDYWNoZTo6SU9DaGFubmVsOjpyZWFkKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nh
Y2hlOjpJT0NoYW5uZWw6OnJlYWRTeW5jKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hl
OjpJT0NoYW5uZWw6OndyaXRlKToKKwogMjAxNS0wNS0yNiAgQ2FybG9zIEdhcmNpYSBDYW1wb3Mg
IDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgTmV0d29yayBDYWNoZTogQWRkIGNhY2hl
IGNhcGFjaXR5IHRvIHRoZSB0b3RhbHMgb2YgSlNPTiBmaWxlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVJT0NoYW5uZWxTb3VwLmNw
cCBiL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZUlPQ2hh
bm5lbFNvdXAuY3BwCmluZGV4IDgzYzc5N2EuLjgwNWJjNzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZUlPQ2hhbm5lbFNvdXAuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZUlP
Q2hhbm5lbFNvdXAuY3BwCkBAIC00OCw3ICs0OCw2IEBAIElPQ2hhbm5lbDo6SU9DaGFubmVsKGNv
bnN0IFN0cmluZyYgZmlsZVBhdGgsIFR5cGUgdHlwZSkKICAgICBjYXNlIFR5cGU6OkNyZWF0ZTog
ewogICAgICAgICBnX2ZpbGVfZGVsZXRlKGZpbGUuZ2V0KCksIG51bGxwdHIsIG51bGxwdHIpOwog
ICAgICAgICBtX291dHB1dFN0cmVhbSA9IGFkb3B0R1JlZihHX09VVFBVVF9TVFJFQU0oZ19maWxl
X2NyZWF0ZShmaWxlLmdldCgpLCBzdGF0aWNfY2FzdDxHRmlsZUNyZWF0ZUZsYWdzPihHX0ZJTEVf
Q1JFQVRFX1BSSVZBVEUpLCBudWxscHRyLCBudWxscHRyKSkpOwotICAgICAgICBBU1NFUlQobV9v
dXRwdXRTdHJlYW0pOwogI2lmICFIQVZFKFNUQVRfQklSVEhUSU1FKQogICAgICAgICBHVW5pcXVl
UHRyPGNoYXI+IGJpcnRodGltZVN0cmluZyhnX3N0cmR1cF9wcmludGYoIiUiIEdfR1VJTlQ2NF9G
T1JNQVQsIHN0ZDo6Y2hyb25vOjpzeXN0ZW1fY2xvY2s6OnRvX3RpbWVfdChzdGQ6OmNocm9ubzo6
c3lzdGVtX2Nsb2NrOjpub3coKSkpKTsKICAgICAgICAgZ19maWxlX3NldF9hdHRyaWJ1dGVfc3Ry
aW5nKGZpbGUuZ2V0KCksICJ4YXR0cjo6YmlydGh0aW1lIiwgYmlydGh0aW1lU3RyaW5nLmdldCgp
LCBHX0ZJTEVfUVVFUllfSU5GT19OT05FLCBudWxscHRyLCBudWxscHRyKTsKQEAgLTU3LDEyICs1
NiwxMCBAQCBJT0NoYW5uZWw6OklPQ2hhbm5lbChjb25zdCBTdHJpbmcmIGZpbGVQYXRoLCBUeXBl
IHR5cGUpCiAgICAgfQogICAgIGNhc2UgVHlwZTo6V3JpdGU6IHsKICAgICAgICAgbV9pb1N0cmVh
bSA9IGFkb3B0R1JlZihnX2ZpbGVfb3Blbl9yZWFkd3JpdGUoZmlsZS5nZXQoKSwgbnVsbHB0ciwg
bnVsbHB0cikpOwotICAgICAgICBBU1NFUlQobV9pb1N0cmVhbSk7CiAgICAgICAgIGJyZWFrOwog
ICAgIH0KICAgICBjYXNlIFR5cGU6OlJlYWQ6CiAgICAgICAgIG1faW5wdXRTdHJlYW0gPSBhZG9w
dEdSZWYoR19JTlBVVF9TVFJFQU0oZ19maWxlX3JlYWQoZmlsZS5nZXQoKSwgbnVsbHB0ciwgbnVs
bHB0cikpKTsKLSAgICAgICAgQVNTRVJUKG1faW5wdXRTdHJlYW0pOwogICAgICAgICBicmVhazsK
ICAgICB9CiB9CkBAIC0xNDIsNyArMTM5LDExIEBAIHN0YXRpYyB2b2lkIGlucHV0U3RyZWFtUmVh
ZFJlYWR5Q2FsbGJhY2soR0lucHV0U3RyZWFtKiBzdHJlYW0sIEdBc3luY1Jlc3VsdCogcmVzCiAK
IHZvaWQgSU9DaGFubmVsOjpyZWFkKHNpemVfdCBvZmZzZXQsIHNpemVfdCBzaXplLCBzdGQ6OmZ1
bmN0aW9uPHZvaWQgKERhdGEmLCBpbnQgZXJyb3IpPiBjb21wbGV0aW9uSGFuZGxlcikKIHsKLSAg
ICBBU1NFUlQobV9pbnB1dFN0cmVhbSk7CisgICAgaWYgKCFtX2lucHV0U3RyZWFtKSB7CisgICAg
ICAgIERhdGEgZGF0YTsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoZGF0YSwgLTEpOworICAg
ICAgICByZXR1cm47CisgICAgfQogCiAgICAgc2l6ZV90IGJ1ZmZlclNpemUgPSBzdGQ6Om1pbihz
aXplLCBnRGVmYXVsdFJlYWRCdWZmZXJTaXplKTsKICAgICB1aW50OF90KiBidWZmZXJEYXRhID0g
c3RhdGljX2Nhc3Q8dWludDhfdCo+KGZhc3RNYWxsb2MoYnVmZmVyU2l6ZSkpOwpAQCAtMTY1LDcg
KzE2NiwxMiBAQCB2b2lkIElPQ2hhbm5lbDo6cmVhZChzaXplX3Qgb2Zmc2V0LCBzaXplX3Qgc2l6
ZSwgV29ya1F1ZXVlKiBxdWV1ZSwgc3RkOjpmdW5jdGlvbgogLy8gRklYTUU6IEl0IHdvdWxkIGJl
IGJldHRlciB0byBkbyB3aXRob3V0IHRoaXMuCiB2b2lkIElPQ2hhbm5lbDo6cmVhZFN5bmMoc2l6
ZV90IG9mZnNldCwgc2l6ZV90IHNpemUsIHN0ZDo6ZnVuY3Rpb248dm9pZCAoRGF0YSYsIGludCBl
cnJvcik+IGNvbXBsZXRpb25IYW5kbGVyKQogewotICAgIEFTU0VSVChtX2lucHV0U3RyZWFtKTsK
KyAgICBpZiAoIW1faW5wdXRTdHJlYW0pIHsKKyAgICAgICAgRGF0YSBkYXRhOworICAgICAgICBj
b21wbGV0aW9uSGFuZGxlcihkYXRhLCAtMSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKICAg
ICBzaXplX3QgYnVmZmVyU2l6ZSA9IHN0ZDo6bWluKHNpemUsIGdEZWZhdWx0UmVhZEJ1ZmZlclNp
emUpOwogICAgIHVpbnQ4X3QqIGJ1ZmZlckRhdGEgPSBzdGF0aWNfY2FzdDx1aW50OF90Kj4oZmFz
dE1hbGxvYyhidWZmZXJTaXplKSk7CiAgICAgR1JlZlB0cjxTb3VwQnVmZmVyPiByZWFkQnVmZmVy
ID0gYWRvcHRHUmVmKHNvdXBfYnVmZmVyX25ld193aXRoX293bmVyKGJ1ZmZlckRhdGEsIGJ1ZmZl
clNpemUsIGJ1ZmZlckRhdGEsIGZhc3RGcmVlKSk7CkBAIC0yMzcsOSArMjQzLDE3IEBAIHN0YXRp
YyB2b2lkIG91dHB1dFN0cmVhbVdyaXRlUmVhZHlDYWxsYmFjayhHT3V0cHV0U3RyZWFtKiBzdHJl
YW0sIEdBc3luY1Jlc3VsdCoKIAogdm9pZCBJT0NoYW5uZWw6OndyaXRlKHNpemVfdCBvZmZzZXQs
IGNvbnN0IERhdGEmIGRhdGEsIHN0ZDo6ZnVuY3Rpb248dm9pZCAoaW50IGVycm9yKT4gY29tcGxl
dGlvbkhhbmRsZXIpCiB7Ci0gICAgQVNTRVJUKG1fb3V0cHV0U3RyZWFtIHx8IG1faW9TdHJlYW0p
OworICAgIGlmICghbV9vdXRwdXRTdHJlYW0gJiYgIW1faW9TdHJlYW0pIHsKKyAgICAgICAgY29t
cGxldGlvbkhhbmRsZXIoLTEpOworICAgICAgICByZXR1cm47CisgICAgfQogCiAgICAgR091dHB1
dFN0cmVhbSogc3RyZWFtID0gbV9vdXRwdXRTdHJlYW0gPyBtX291dHB1dFN0cmVhbS5nZXQoKSA6
IGdfaW9fc3RyZWFtX2dldF9vdXRwdXRfc3RyZWFtKEdfSU9fU1RSRUFNKG1faW9TdHJlYW0uZ2V0
KCkpKTsKKyAgICBpZiAoIXN0cmVhbSkgeworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigtMSk7
CisgICAgICAgIHJldHVybjsKKyAgICB9CisKICAgICBXcml0ZUFzeW5jRGF0YSogYXN5bmNEYXRh
ID0gbmV3IFdyaXRlQXN5bmNEYXRhIHsgdGhpcywgZGF0YS5zb3VwQnVmZmVyKCksIGNvbXBsZXRp
b25IYW5kbGVyIH07CiAgICAgLy8gRklYTUU6IGltcGxlbWVudCBvZmZzZXQuCiAgICAgZ19vdXRw
dXRfc3RyZWFtX3dyaXRlX2FzeW5jKHN0cmVhbSwgYXN5bmNEYXRhLT5idWZmZXItPmRhdGEsIGRh
dGEuc2l6ZSgpLCBHX1BSSU9SSVRZX0RFRkFVTFQsIG51bGxwdHIsCg==
</data>
<flag name="review"
          id="278726"
          type_id="1"
          status="+"
          setter="svillar"
    />
          </attachment>
      

    </bug>

</bugzilla>