Hi folks,<div><br></div><div>This is a small patch, it fixes the segment fault caused by the failure assertion with the error gunzip return value.</div><div><br></div><div>I don't know if this patch is sufficient, it seems work for me.</div>
<div><br></div><div>Thanks.</div><div><br></div><div><div>diff --git a/bin/varnishd/cache_esi_fetch.c b/bin/varnishd/cache_esi_fetch.c</div><div>index ab86ac8..e3f80f3 100644</div><div>--- a/bin/varnishd/cache_esi_fetch.c</div>
<div>+++ b/bin/varnishd/cache_esi_fetch.c</div><div>@@ -270,8 +270,9 @@ vfp_esi_bytes_gg(struct sess *sp, struct http_conn *htc, size_t bytes)</div><div> do {</div><div> VGZ_Obuf(sp->wrk->vgz_rx, ibuf2, sizeof ibuf2);</div>
<div> i = VGZ_Gunzip(sp->wrk->vgz_rx, &dp, &dl);</div><div>- /* XXX: check i */</div><div>- assert(i >= VGZ_OK);</div><div>+ if (i < VGZ_OK) {</div>
<div>+ return (-1);</div><div>+ }</div><div> vef->bufp = ibuf2;</div><div> if (dl > 0)</div><div> VEP_parse(sp, ibuf2, dl);</div>
<div><br></div><div><br></div>-- <br>Weibin Yao<br>Developer @ Server Platform Team of Taobao
</div>