Module: xenomai-2.6 Branch: master Commit: 1d3b76a653f8d63a169c0ceb8c60845310b012f8 URL: http://git.xenomai.org/?p=xenomai-2.6.git;a=commit;h=1d3b76a653f8d63a169c0ceb8c60845310b012f8
Author: Kai <mli...@bollue.de> Date: Fri Jul 13 22:32:55 2012 +0200 native/queue: fix memory leak upon failed write --- ksrc/skins/native/syscall.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ksrc/skins/native/syscall.c b/ksrc/skins/native/syscall.c index 39204b4..84f5ff0 100644 --- a/ksrc/skins/native/syscall.c +++ b/ksrc/skins/native/syscall.c @@ -2356,8 +2356,8 @@ static int __rt_queue_write(struct pt_regs *regs) } ret = rt_queue_send(q, mbuf, size, mode); - if (ret == 0 && (mode & Q_BROADCAST)) - rt_queue_free(q, mbuf); /* Nobody received, free the buffer. */ + if (ret < 0 || (ret == 0 && (mode & Q_BROADCAST))) + rt_queue_free(q, mbuf); return ret; } _______________________________________________ Xenomai-git mailing list Xenomai-git@xenomai.org http://www.xenomai.org/mailman/listinfo/xenomai-git