3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-25 20:46:01 +00:00

ensure memory safety

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2025-08-16 02:52:15 -07:00
parent 1397dd12ff
commit df3d10a16f

View file

@ -364,7 +364,9 @@ namespace smt {
auto add_split_atom = [&](expr* atom, unsigned start) {
unsigned stop = m_cubes.size();
for (unsigned i = start; i < stop; ++i) {
m_cubes.push_back(m_cubes[i]);
// copy the last cube so that expanding m_cubes doesn't invalidate reference.
auto cube = m_cubes[i];
m_cubes.push_back(cube);
m_cubes.back().push_back(m.mk_not(atom));
m_cubes[i].push_back(atom);
}