mirror of
https://git.yoctoproject.org/poky
synced 2026-05-30 00:20:08 +00:00
babeltrace: Fix invalid pointer free with trace collection
This fixed the bug https://bugs.lttng.org/issues/790 (From OE-Core rev: 8152bcadba8581f75822b75e13c2a43dd6464cd3) (From OE-Core rev: 8a406a67704bc81c104c18581ba11c5e99a7e0ca) Signed-off-by: Roy Li <rongqing.li@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
+44
@@ -0,0 +1,44 @@
|
|||||||
|
From e4cad900994cf286d971796a947fea782dfc6651 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Francis Giraldeau <francis.giraldeau@gmail.com>
|
||||||
|
Date: Mon, 15 Jun 2015 11:43:02 -0400
|
||||||
|
Subject: [PATCH] Fix invalid pointer free with trace collection
|
||||||
|
|
||||||
|
Upstream-Status: Submitted
|
||||||
|
|
||||||
|
Patch proposed by Li RongQing related to bug# 790
|
||||||
|
|
||||||
|
Signed-off-by: Mikael Beckius <mikael.beckius@windriver.com>
|
||||||
|
Signed-off-by: Francis Giraldeau <francis.giraldeau@gmail.com>
|
||||||
|
---
|
||||||
|
lib/context.c | 8 +++-----
|
||||||
|
1 file changed, 3 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/lib/context.c b/lib/context.c
|
||||||
|
index 45aab34..8d3770f 100644
|
||||||
|
--- a/lib/context.c
|
||||||
|
+++ b/lib/context.c
|
||||||
|
@@ -79,7 +79,7 @@ int bt_context_add_trace(struct bt_context *ctx, const char *path,
|
||||||
|
struct bt_trace_descriptor *td;
|
||||||
|
struct bt_format *fmt;
|
||||||
|
struct bt_trace_handle *handle;
|
||||||
|
- int ret, closeret;
|
||||||
|
+ int ret;
|
||||||
|
|
||||||
|
if (!ctx || !format_name || (!path && !stream_list))
|
||||||
|
return -EINVAL;
|
||||||
|
@@ -159,10 +159,8 @@ int bt_context_add_trace(struct bt_context *ctx, const char *path,
|
||||||
|
return handle->id;
|
||||||
|
|
||||||
|
error:
|
||||||
|
- closeret = fmt->close_trace(td);
|
||||||
|
- if (closeret) {
|
||||||
|
- fprintf(stderr, "Error in close_trace callback\n");
|
||||||
|
- }
|
||||||
|
+ if (handle)
|
||||||
|
+ bt_context_remove_trace(ctx, handle->id);
|
||||||
|
end:
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
--
|
||||||
|
1.9.1
|
||||||
|
|
||||||
@@ -13,7 +13,9 @@ DEPENDS = "glib-2.0 util-linux popt bison-native flex-native"
|
|||||||
SRCREV = "90395824efc007de88787a6b8e400a07c980be1c"
|
SRCREV = "90395824efc007de88787a6b8e400a07c980be1c"
|
||||||
PV = "1.2.4+git${SRCPV}"
|
PV = "1.2.4+git${SRCPV}"
|
||||||
|
|
||||||
SRC_URI = "git://git.efficios.com/babeltrace.git;branch=stable-1.2"
|
SRC_URI = "git://git.efficios.com/babeltrace.git;branch=stable-1.2 \
|
||||||
|
file://0001-Fix-invalid-pointer-free-with-trace-collection.patch \
|
||||||
|
"
|
||||||
|
|
||||||
S = "${WORKDIR}/git"
|
S = "${WORKDIR}/git"
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user