Correctly free SSL_SESSIONs in ssl_test. That was silly. Change-Id: I375c04f725cbb75f9e04fce386e20c4de5e7ae0c Reviewed-on: https://boringssl-review.googlesource.com/6352 Reviewed-by: Adam Langley <alangley@gmail.com>
diff --git a/ssl/ssl_test.cc b/ssl/ssl_test.cc index a5d8bea..345e5dc 100644 --- a/ssl/ssl_test.cc +++ b/ssl/ssl_test.cc
@@ -877,19 +877,19 @@ // TODO(davidben): Switch this to a |std::vector<ScopedSSL_SESSION>| once we can // rely on a move-aware |std::vector|. -template <class T> -class ScopedVector { +class ScopedSessionVector { public: - explicit ScopedVector(std::vector<T*> *v) : v_(v) {} + explicit ScopedSessionVector(std::vector<SSL_SESSION*> *sessions) + : sessions_(sessions) {} - ~ScopedVector() { - for (T *t : *v_) { - delete t; + ~ScopedSessionVector() { + for (SSL_SESSION *session : *sessions_) { + SSL_SESSION_free(session); } } private: - std::vector<T*> *const v_; + std::vector<SSL_SESSION*> *const sessions_; }; // Test that the internal session cache behaves as expected. @@ -901,7 +901,7 @@ // Prepare 10 test sessions. std::vector<SSL_SESSION*> sessions; - ScopedVector<SSL_SESSION> cleanup(&sessions); + ScopedSessionVector cleanup(&sessions); for (int i = 0; i < 10; i++) { ScopedSSL_SESSION session = CreateTestSession(i); if (!session) {