We had an issue where we needed to evhttp_conneciton_free() inside the response callback, which caused an error with line 617 of http.c

    /* notify the user of the request */
    (*req->cb)(req, req->cb_arg);

/* if this was an outgoing request, we own and it's done. so free it */
    if (evcon->flags & EVHTTP_CON_OUTGOING) {
        evhttp_request_free(req);
    }

Since evcon was free'd in the callback, we got the error.
My solution was to store the result of evcon->flags & EVHTTP_CON_OUTGOING before we make the callback.

Attachment: http_fix.patch
Description: Binary data


-Ben


--
Ben Rigas
Senior Software Engineer, InterOP Technologies
(239) 425-3000


_______________________________________________
Libevent-users mailing list
Libevent-users@monkey.org
http://monkey.org/mailman/listinfo/libevent-users

Reply via email to