[Xenomai-git] Philippe Gerum : alchemy/event: prevent double-free on error path
Module: xenomai-3 Branch: master Commit: 9e3cbdb1647d3d0cf552303f3c7960e2cc178ca8 URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=9e3cbdb1647d3d0cf552303f3c7960e2cc178ca8 Author: Philippe Gerum Date: Mon Aug 10 18:08:00 2015 +0200 alchemy/event: prevent double-free on error path We don't want the finalizer to run for the underlying event object when cleaning up upon error at creation. Call the uninit helper instead. --- lib/alchemy/event.c |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/alchemy/event.c b/lib/alchemy/event.c index 0f83376..dd260f5 100644 --- a/lib/alchemy/event.c +++ b/lib/alchemy/event.c @@ -215,7 +215,7 @@ int rt_event_create(RT_EVENT *event, const char *name, if (syncluster_addobj(&alchemy_event_table, evcb->name, &evcb->cobj)) { registry_destroy_file(&evcb->fsobj); - eventobj_destroy(&evcb->evobj); + eventobj_uninit(&evcb->evobj); xnfree(evcb); ret = -EEXIST; } else ___ Xenomai-git mailing list Xenomai-git@xenomai.org http://xenomai.org/mailman/listinfo/xenomai-git
[Xenomai-git] Philippe Gerum : alchemy/event: prevent double-free on error path
Module: xenomai-3 Branch: next Commit: 9e3cbdb1647d3d0cf552303f3c7960e2cc178ca8 URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=9e3cbdb1647d3d0cf552303f3c7960e2cc178ca8 Author: Philippe Gerum Date: Mon Aug 10 18:08:00 2015 +0200 alchemy/event: prevent double-free on error path We don't want the finalizer to run for the underlying event object when cleaning up upon error at creation. Call the uninit helper instead. --- lib/alchemy/event.c |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/alchemy/event.c b/lib/alchemy/event.c index 0f83376..dd260f5 100644 --- a/lib/alchemy/event.c +++ b/lib/alchemy/event.c @@ -215,7 +215,7 @@ int rt_event_create(RT_EVENT *event, const char *name, if (syncluster_addobj(&alchemy_event_table, evcb->name, &evcb->cobj)) { registry_destroy_file(&evcb->fsobj); - eventobj_destroy(&evcb->evobj); + eventobj_uninit(&evcb->evobj); xnfree(evcb); ret = -EEXIST; } else ___ Xenomai-git mailing list Xenomai-git@xenomai.org http://xenomai.org/mailman/listinfo/xenomai-git