Commit Diff
- Commit:
17493a486c9e6325c3aae74920ddb10958ae2771
- From:
- Omar Polo <op@omarpolo.com>
- Date:
- Message:
- 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!
- Actions:
- Patch | Tree
--- fcgi.c +++ fcgi.c @@ -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) */