diff options
author | Morgan Deters <mdeters@gmail.com> | 2009-12-03 14:59:30 +0000 |
---|---|---|
committer | Morgan Deters <mdeters@gmail.com> | 2009-12-03 14:59:30 +0000 |
commit | 7fb54afe126e5045fc6c5553c1aff3c3f73509aa (patch) | |
tree | 37f4f23af0eccd6c9615a5af9b2d219e305d1f78 /src/expr/expr.cpp | |
parent | bde1a14afc211c8f0f0521bb91feb562eaa9f9ea (diff) |
parsing/expr/command/result/various other fixes
Diffstat (limited to 'src/expr/expr.cpp')
-rw-r--r-- | src/expr/expr.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/expr/expr.cpp b/src/expr/expr.cpp index f94a3c438..2e3d7a7e2 100644 --- a/src/expr/expr.cpp +++ b/src/expr/expr.cpp @@ -22,16 +22,18 @@ Expr Expr::s_null(0); Expr::Expr(ExprValue* ev) : d_ev(ev) { - d_ev->inc(); + if(d_ev != 0) + d_ev->inc(); } Expr::Expr(const Expr& e) { - if((d_ev = e.d_ev)) + if((d_ev = e.d_ev) && d_ev != 0) d_ev->inc(); } Expr::~Expr() { - d_ev->dec(); + if(d_ev) + d_ev->dec(); } Expr& Expr::operator=(const Expr& e) { |