On Wed, Jun 27, 2012 at 02:37:22PM -0500, Mark Ellzey wrote: > On Wed, Jun 27, 2012 at 11:02:04AM -0700, Julian Bui wrote: > > Hi libevent, > > > > Sorry for the recent surge of emails. I am trying to determine the cause > > of a problem in my application while using evhttp. I wrote a toy/dummy > > server (whose code I included) that exhibits the same problem that my real > > application is having. > > > > PROBLEM OVERVIEW: > > > > My application is using ev_http and I set its gencb (handles any request > > that comes in) to a function that just validates that there's a path or > > query. If a path or query exists, the evhttp_request*, path, and query are > > handed off to one thread which processes the request one at a time. This > > thread is calling evhttp_send_reply or evhttp_send_error when done with the > > request. > > > > The problem is that when I hit my server through the browser and hit > > refresh to constantly send it requests, it crashes. In the debugger, I see > > it crashes on the evhttp_send_reply line and the error reads: "exception at > > 0x____ in ____.exe, 0xC0000005: Access violation reading location > > 0xdddddee5" none of the parameters going into this method are NULL. > > > > I don't see either evthread_use_pthreads() or > evthread_use_windows_threads() being used before setting up any events. > Try putting that at the top of your main function before anything else > and compile with -levent_threads
Let me reiterate, you first have to call one of the above functions *before* setting evthread_set_lock_callbacks, evthread_set_id_callback, and evthread_set_condition_callbacks. *********************************************************************** To unsubscribe, send an e-mail to majord...@freehaven.net with unsubscribe libevent-users in the body.