diff options
author | fche <fche> | 2007-11-26 15:11:48 +0000 |
---|---|---|
committer | fche <fche> | 2007-11-26 15:11:48 +0000 |
commit | 6daa64bd1c37e894ed417b5a9d0fc81631a4801b (patch) | |
tree | 97a1d60518759623cd56574eb24ce25479da4ac0 | |
parent | c6bf00e1c6f63656cebac8ee72a3b095d37525c5 (diff) | |
download | systemtap-steved-6daa64bd1c37e894ed417b5a9d0fc81631a4801b.tar.gz systemtap-steved-6daa64bd1c37e894ed417b5a9d0fc81631a4801b.tar.xz systemtap-steved-6daa64bd1c37e894ed417b5a9d0fc81631a4801b.zip |
* conditional-probe SEGV fix
2007-11-26 Frank Ch. Eigler <fche@elastic.org>
* elaborate.cxx (derived_probe ctor): Don't duplicate condition
if it doesn't exist.
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | elaborate.cxx | 3 |
2 files changed, 7 insertions, 1 deletions
@@ -1,3 +1,8 @@ +2007-11-26 Frank Ch. Eigler <fche@elastic.org> + + * elaborate.cxx (derived_probe ctor): Don't duplicate condition + if it doesn't exist. + 2007-11-20 Masami Hiramatsu <mhiramat@redhat.com> PR 4935. diff --git a/elaborate.cxx b/elaborate.cxx index d3bbe28d..c277d8d5 100644 --- a/elaborate.cxx +++ b/elaborate.cxx @@ -53,7 +53,8 @@ derived_probe::derived_probe (probe *p, probe_point *l): { if (p) { - this->condition = deep_copy_visitor::deep_copy(p->condition); + if (p->condition) + this->condition = deep_copy_visitor::deep_copy(p->condition); this->tok = p->tok; this->privileged = p->privileged; this->body = deep_copy_visitor::deep_copy(p->body); |