--- asterisk-1.0.7.orig/apps/app_queue.c 2005-01-24 00:57:41.000000000 +0100 +++ asterisk-1.0.7/apps/app_queue.c 2005-05-30 13:08:35.000000000 +0200 @@ -867,6 +867,7 @@ if (option_verbose > 3) ast_verbose(VERBOSE_PREFIX_3 "User hit %c to disconnect call.\n", f->subclass); *to=0; + ast_frfree(f); return NULL; } if (f && (f->frametype == AST_FRAME_DTMF) && (f->subclass != '*') && valid_exit(qe, f->subclass)) { @@ -874,8 +875,13 @@ ast_verbose(VERBOSE_PREFIX_3 "User pressed digit: %c", f->subclass); *to=0; *digit=f->subclass; + ast_frfree(f); return NULL; } + if (f) { + ast_frfree(f); + f = NULL; + } } if (!*to && (option_verbose > 2)) ast_verbose( VERBOSE_PREFIX_3 "Nobody picked up in %d ms\n", orig);