From 8ee20a3fa46f7d603f5fa98cd47992fcdbb3beb6 Mon Sep 17 00:00:00 2001 From: Niels Provos Date: Sun, 9 Sep 2007 02:15:34 +0000 Subject: [PATCH] fix memory leaks/unitialized memory found by valgrind svn:r418 --- test/regress.c | 16 +++------------- test/regress_rpc.c | 6 ++++++ 2 files changed, 9 insertions(+), 13 deletions(-) diff --git a/test/regress.c b/test/regress.c index b02cfced..c672fe8d 100644 --- a/test/regress.c +++ b/test/regress.c @@ -480,18 +480,6 @@ test_signal_dealloc(void) signal_add(&ev, NULL); signal_del(&ev); event_base_free(base); - errno = EINTR; - if (base->sig.ev_signal_added) { - printf("ev_signal not removed (evsignal_dealloc needed) "); - test_ok = 0; - } else if (close(base->sig.ev_signal_pair[0]) != -1 || - errno != EBADF) { - /* fd must be closed, so second close gives -1, EBADF */ - printf("signal pipe still open (evsignal_dealloc needed) "); - test_ok = 0; - } else { - test_ok = 1; - } cleanup_test(); } @@ -700,7 +688,7 @@ test_bufferevent(void) bufferevent_enable(bev2, EV_READ); for (i = 0; i < sizeof(buffer); i++) - buffer[0] = i; + buffer[i] = i; bufferevent_write(bev1, buffer, sizeof(buffer)); @@ -1033,6 +1021,8 @@ rpc_test(void) msg_free(msg); msg_free(msg2); + evbuffer_free(tmp); + fprintf(stdout, "OK\n"); } diff --git a/test/regress_rpc.c b/test/regress_rpc.c index 4e66ff53..a2dd8564 100644 --- a/test/regress_rpc.c +++ b/test/regress_rpc.c @@ -104,10 +104,13 @@ MessageCb(EVRPC_STRUCT(Message)* rpc, void *arg) EVRPC_REQUEST_DONE(rpc); } +static EVRPC_STRUCT(NeverReply) *saved_rpc; + void NeverReplyCb(EVRPC_STRUCT(NeverReply)* rpc, void *arg) { test_ok += 1; + saved_rpc = rpc; } static void @@ -541,6 +544,9 @@ rpc_client_timeout(void) event_dispatch(); + /* free the saved RPC structure up */ + EVRPC_REQUEST_DONE(saved_rpc); + rpc_teardown(base); if (test_ok != 2) {