return after FCGI_END_REQUEST

this fixes a possible crash if `client_write' closes the connection,
because client_close can end up freeing the fastcgi bufferevent while
we're looping.

We don't support fastcgi multiplexing, so once we get an END_REQUEST
there's nothing more to do.

Prodded into looking here after a bug report from Allen Sobot, thanks!
This commit is contained in:
Omar Polo 2022-11-27 10:34:30 +00:00
parent eb4f96c10a
commit 17493a486c
1 changed files with 1 additions and 1 deletions

2
fcgi.c
View File

@ -290,7 +290,7 @@ fcgi_read(struct bufferevent *bev, void *d)
/* TODO: do something with the status? */
c->type = REQUEST_DONE;
client_write(c->bev, c);
break;
return;
case FCGI_STDERR:
/* discard stderr (for now) */