diff --git a/apps/app_externalivr.c b/apps/app_externalivr.c
index 0856ffe671172aba1568eb7f907e5cb64d4f813e..258a1e5c75aeb9c31897a36178b106b6ad7480c2 100644
--- a/apps/app_externalivr.c
+++ b/apps/app_externalivr.c
@@ -162,6 +162,7 @@ static void send_eivr_event(FILE *handle, const char event, const char *data,
 
 	fprintf(handle, "%s\n", ast_str_buffer(tmp));
 	ast_debug(1, "sent '%s'\n", ast_str_buffer(tmp));
+	ast_free(tmp);
 }
 
 static void *gen_alloc(struct ast_channel *chan, void *params)