diff options
author | Morgan Deters <mdeters@cs.nyu.edu> | 2014-04-29 19:51:29 -0400 |
---|---|---|
committer | Morgan Deters <mdeters@cs.nyu.edu> | 2014-04-29 21:03:55 -0400 |
commit | c95872d478a9ff1f207b8945dba558ae4547f054 (patch) | |
tree | 94cccf1ae397db049e61c69f59093b9856e324c1 /src/theory/bv/bitblaster.cpp | |
parent | 03c1daa126ecd86d1434c7512b73723687ea8ca0 (diff) |
Mostly resolves bug #561 memory leaks, and more.
Diffstat (limited to 'src/theory/bv/bitblaster.cpp')
-rw-r--r-- | src/theory/bv/bitblaster.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/theory/bv/bitblaster.cpp b/src/theory/bv/bitblaster.cpp index cbe550f96..552f3b448 100644 --- a/src/theory/bv/bitblaster.cpp +++ b/src/theory/bv/bitblaster.cpp @@ -61,10 +61,12 @@ Bitblaster::Bitblaster(context::Context* c, bv::TheoryBV* bv) : d_statistics() { d_satSolver = prop::SatSolverFactory::createMinisat(c); - d_cnfStream = new TseitinCnfStream(d_satSolver, new NullRegistrar(), new Context()); + d_nullRegistrar = new NullRegistrar(); + d_nullContext = new Context(); + d_cnfStream = new TseitinCnfStream(d_satSolver, d_nullRegistrar, d_nullContext); - MinisatNotify* notify = new MinisatNotify(d_cnfStream, bv); - d_satSolver->setNotify(notify); + d_notify = new MinisatNotify(d_cnfStream, bv); + d_satSolver->setNotify(d_notify); // initializing the bit-blasting strategies initAtomBBStrategies(); initTermBBStrategies(); @@ -72,7 +74,10 @@ Bitblaster::Bitblaster(context::Context* c, bv::TheoryBV* bv) : Bitblaster::~Bitblaster() { delete d_cnfStream; + delete d_nullContext; + delete d_nullRegistrar; delete d_satSolver; + delete d_notify; } |