Without seeing your full code, it's hard to see what the problem might
be.  In most cases, where these kind of asserts fail, it's due to
memory corruption.  An early free of the data structure could be one
possible cause.

Niels.

On 6/1/07, Christopher Layne <[EMAIL PROTECTED]> wrote:
recv timeout, event == 1, 3, 0
^ From my own code, just debugging data, but pertinent in that it was just a 
timeout
event which was received. Since it seems one cannot have a persistent time out 
event
with a relative timeout (mentioned previously) - I always delete and re-add the 
specific
receive event following a timeout. Right after...

assertion "!(ev->ev_flags & ~EVLIST_ALL)" failed: file "event.c", line 673


My stack trace reveals these lines causing the issue:

static int yc_recv_set(yc *y, int tout)
{
        struct timeval tv;

        tv.tv_sec = tout;
        tv.tv_usec = 0;

-->     event_del(y->ev_r);
        event_add(y->ev_r, &tv);

        return 0;
}

No threading, no funky stuff, just a simple bounce function that I call within
the receive handler. Any good places to start looking? It looks as though this 
assertion
is to double-check that no "private" flags have been set. 1.3b on Cygwin, POSIX 
layer.
For now I'll just hack the assertion to be a conditional which prints the 
suspect flags...

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


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

Reply via email to