summaryrefslogtreecommitdiffstats
path: root/elaborate.cxx
diff options
context:
space:
mode:
authorFrank Ch. Eigler <fche@elastic.org>2007-11-26 10:11:18 -0500
committerFrank Ch. Eigler <fche@elastic.org>2007-11-26 10:11:18 -0500
commit51bf59c154c1dd2d4e681d8eb6c916c73af3b476 (patch)
tree97a1d60518759623cd56574eb24ce25479da4ac0 /elaborate.cxx
parentff29eebdcd81ddf0b20e04e8b392c04600594ffa (diff)
downloadsystemtap-steved-51bf59c154c1dd2d4e681d8eb6c916c73af3b476.tar.gz
systemtap-steved-51bf59c154c1dd2d4e681d8eb6c916c73af3b476.tar.xz
systemtap-steved-51bf59c154c1dd2d4e681d8eb6c916c73af3b476.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.
Diffstat (limited to 'elaborate.cxx')
-rw-r--r--elaborate.cxx3
1 files changed, 2 insertions, 1 deletions
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);