From e7148795c3f2ce1f6625a7c81545707a6cbde3eb Mon Sep 17 00:00:00 2001 From: Sameer Agarwal Date: Mon, 4 Mar 2013 10:17:30 -0800 Subject: [PATCH] Fix a memory leak in CXSparse::SolveCholesky. Thanks to Alexander Mordvintsev for reporting this. Change-Id: I5c6be4d3d28f062e83a1ad41cb8089c19362a005 --- internal/ceres/cxsparse.cc | 1 + internal/ceres/trust_region_minimizer_test.cc | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/internal/ceres/cxsparse.cc b/internal/ceres/cxsparse.cc index 19fa17cc3..3fbc2717f 100644 --- a/internal/ceres/cxsparse.cc +++ b/internal/ceres/cxsparse.cc @@ -57,6 +57,7 @@ bool CXSparse::SolveCholesky(cs_di* A, cs_free(scratch_); } scratch_ = reinterpret_cast(cs_malloc(A->n, sizeof(CS_ENTRY))); + scratch_size_ = A->n; } // Solve using Cholesky factorization diff --git a/internal/ceres/trust_region_minimizer_test.cc b/internal/ceres/trust_region_minimizer_test.cc index ffa2317b4..52d682d63 100644 --- a/internal/ceres/trust_region_minimizer_test.cc +++ b/internal/ceres/trust_region_minimizer_test.cc @@ -370,7 +370,7 @@ TEST(TrustRegionMinimizer, JacobiScalingTest) { EXPECT_LE(summary.final_cost, 1e-10); for (int i = 0; i < N; i++) { - delete y[i]; + delete []y[i]; } }