From dceb6df2657c94e6b422850f43c6c6d12554db11 Mon Sep 17 00:00:00 2001 From: Petr Machata Date: Fri, 25 Jul 2014 12:40:52 +0200 Subject: Fix cloning of libraries with Dwarf support - struct library::dwfl_module was left unitialized after library_clone. Garbage was kept in, which prevented proper initialization later, and resulted in segmentation violation. --- library.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'library.c') diff --git a/library.c b/library.c index bb0e4cc..a0cd860 100644 --- a/library.c +++ b/library.c @@ -1,6 +1,6 @@ /* * This file is part of ltrace. - * Copyright (C) 2011,2012,2013 Petr Machata, Red Hat Inc. + * Copyright (C) 2011,2012,2013,2014 Petr Machata, Red Hat Inc. * Copyright (C) 2001,2009 Juan Cespedes * Copyright (C) 2006 Ian Wienand * @@ -20,6 +20,8 @@ * 02110-1301 USA */ +#include "config.h" + #include #include #include @@ -559,6 +561,12 @@ library_clone(struct library *retp, struct library *lib) goto fail; } +#if defined(HAVE_LIBDW) + /* Wipe DWFL_MODULE, leave it to proc_add_library to + * initialize. */ + lib->dwfl_module = NULL; +#endif + return 0; } -- cgit v1.2.3