Call with lock held or from forced shutdown
| 2204 | |
| 2205 | // Call with lock held or from forced shutdown |
| 2206 | static void pconnection_begin_close(pconnection_t *pc) { |
| 2207 | if (!pc->context.closing) { |
| 2208 | pc->context.closing = true; |
| 2209 | pn_connection_driver_close(&pc->driver); |
| 2210 | pc->stop_timer_required = true; |
| 2211 | if (pc->context.proactor->reaper->add(pc->psocket.iocpd)) |
| 2212 | pc->psocket.iocpd = NULL; |
| 2213 | wakeup(&pc->psocket); |
| 2214 | } |
| 2215 | } |
| 2216 | |
| 2217 | // call with lock held. return true if caller must call pconnection_final_free() |
| 2218 | static bool pconnection_cleanup(pconnection_t *pc) { |
no test coverage detected