We may or may not have an objcore

Only the first filter has access to the objcore.

fixes:

Assert error in vdp_init(), vdfp_pipe.c line 189:
  Condition((objcore) != NULL) not true.
version = varnish-trunk revision
136736b092206c5bc764f12f80d9092efde6c9dc, vrt api = 13.0
ident = Linux,5.10.12-200.fc33.x86_64,x86_64,-junix,-sfile,-sdefault,-hcritbit,epoll
now = 3808647.356313 (mono), 1618849595.965169 (real)
Backtrace:
  0x559444057399: /usr/sbin/varnishd(+0x57399) [0x559444057399]
  0x5594440ce273: /usr/sbin/varnishd(VAS_Fail+0x43) [0x5594440ce273]
  0x7fc6745f820f: ./vmod_cache/_vmod_pipe.f336a3498bf9765ce992b39693196344e9c1ddda789775d4d0b0fd3b4939272e(+0x220f) [0x7fc6745f820f]
  0x5594440381a3: /usr/sbin/varnishd(VDP_Push+0x103) [0x5594440381a3]
  0x55944406df96: /usr/sbin/varnishd(VCL_StackVDP+0x76) [0x55944406df96]
  0x55944405ce02: /usr/sbin/varnishd(+0x5ce02) [0x55944405ce02]
  0x55944405ec48: /usr/sbin/varnishd(CNT_Request+0xd8) [0x55944405ec48]
  0x559444088bbb: /usr/sbin/varnishd(+0x88bbb) [0x559444088bbb]
  0x55944407cee7: /usr/sbin/varnishd(+0x7cee7) [0x55944407cee7]
  0x55944407d494: /usr/sbin/varnishd(+0x7d494) [0x55944407d494]
parent 63843ecb
......@@ -186,7 +186,7 @@ vdp_init(struct vdp_ctx *ctx, void **priv, struct objcore *objcore)
AN(req->vcl);
AN(priv);
AZ(*priv);
CHECK_OBJ_NOTNULL(objcore, OBJCORE_MAGIC);
CHECK_OBJ_ORNULL(objcore, OBJCORE_MAGIC);
vdpe = VTAILQ_LAST(&ctx->vdp, vdp_entry_s);
CHECK_OBJ_NOTNULL(vdpe, VDP_ENTRY_MAGIC);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment