void oauth2_request_abort(struct oauth2_request **_req) { struct oauth2_request *req = *_req; *_req = NULL; if (req->req != NULL) http_client_request_abort(&req->req); oauth2_request_free_internal(req); }
static void fts_parser_tika_deinit(struct fts_parser *_parser) { struct tika_fts_parser *parser = (struct tika_fts_parser *)_parser; if (parser->ioloop != NULL) { io_remove(&parser->io); io_loop_destroy(&parser->ioloop); } if (parser->payload != NULL) i_stream_unref(&parser->payload); /* FIXME: kludgy, http_req should be NULL here if we don't want to free it. requires lib-http changes. */ if (parser->http_req != NULL) http_client_request_abort(&parser->http_req); i_free(parser); }
static int fts_parser_tika_deinit(struct fts_parser *_parser) { struct tika_fts_parser *parser = (struct tika_fts_parser *)_parser; int ret = parser->failed ? -1 : 0; /* remove io before unrefing payload - otherwise lib-http adds another timeout to ioloop unnecessarily */ if (parser->payload != NULL) i_stream_unref(&parser->payload); if (parser->io != NULL) io_remove(&parser->io); if (parser->http_req != NULL) http_client_request_abort(&parser->http_req); if (parser->ioloop != NULL) { io_loop_set_current(parser->ioloop); io_loop_destroy(&parser->ioloop); } i_free(parser); return ret; }