EVENT: we memset the context, remember & re-set the ID so we can find the earlier...
authorWilfried Goesgens <dothebart@citadel.org>
Tue, 16 Apr 2013 19:27:10 +0000 (21:27 +0200)
committerWilfried Goesgens <dothebart@citadel.org>
Tue, 16 Apr 2013 19:27:10 +0000 (21:27 +0200)
citadel/event_client.c

index c633f5357a1e845520eec5d9eee2a8f86439e696..90c5e5dd986619f4f9f5426bea3393133a9cb7c1 100644 (file)
@@ -1115,10 +1115,13 @@ typedef struct KillOtherSessionContext {
 
 eNextState KillTerminate(AsyncIO *IO)
 {
 
 eNextState KillTerminate(AsyncIO *IO)
 {
+       long id;
        KillOtherSessionContext *Ctx = (KillOtherSessionContext*)IO->Data;
        EV_syslog(LOG_DEBUG, "%s Exit\n", __FUNCTION__);
        KillOtherSessionContext *Ctx = (KillOtherSessionContext*)IO->Data;
        EV_syslog(LOG_DEBUG, "%s Exit\n", __FUNCTION__);
+       id = IO->ID;
        FreeAsyncIOContents(IO);
        memset(Ctx, 0, sizeof(KillOtherSessionContext));
        FreeAsyncIOContents(IO);
        memset(Ctx, 0, sizeof(KillOtherSessionContext));
+       IO->ID = id; /* just for the case we want to analyze it in a coredump */
        free(Ctx);
        return eAbort;
 
        free(Ctx);
        return eAbort;