diff --git a/src/problem-solver.cc b/src/problem-solver.cc index 75564fbc81d146874dd29d72ca50949b2e1fafb8..1e6cf1bc654d0a70d8e574403329268a6ef2530e 100644 --- a/src/problem-solver.cc +++ b/src/problem-solver.cc @@ -193,9 +193,12 @@ namespace hpp { void ProblemSolver::resetProblem () { - if (problem_) - delete (problem_); - initializeProblem (new Problem (robot_)); + ProblemPtr_t p (new Problem (robot_)); + if (problem_) { + p->parameters = problem_->parameters; + delete problem_; + } + initializeProblem (p); } void ProblemSolver::initializeProblem (ProblemPtr_t problem)