From 8bd63ad1edfc198a0341fa25402156d4c95a9317 Mon Sep 17 00:00:00 2001 From: waker Date: Wed, 4 May 2011 21:52:42 +0200 Subject: don't leak if messagepump overflows --- messagepump.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'messagepump.c') diff --git a/messagepump.c b/messagepump.c index 77c563f7..7299cabf 100644 --- a/messagepump.c +++ b/messagepump.c @@ -75,6 +75,9 @@ int messagepump_push (uint32_t id, uintptr_t ctx, uint32_t p1, uint32_t p2) { if (!mfree) { fprintf (stderr, "WARNING: message queue is full! message ignored (%d %p %d %d)\n", id, (void*)ctx, p1, p2); + if (id >= DB_EV_FIRST && ctx) { + messagepump_event_free ((ddb_event_t *)ctx); + } return -1; } mutex_lock (mutex); -- cgit v1.2.3