shithub: libvpx

Download patch

ref: 18c7f46c125c107fc08d31f617b2178482fed011
parent: 92e91bd3a17696df45b1eca3ffeff0520c68d3e4
author: Alex Converse <[email protected]>
date: Thu Jul 21 07:38:27 EDT 2016

MinArfFreqTest: Don't leak video on failure.

Change-Id: I250379f0ac8d4929c9032e7343290e2980fc2e77

--- a/test/vp9_arf_freq_test.cc
+++ b/test/vp9_arf_freq_test.cc
@@ -200,21 +200,21 @@
   if (cfg_.g_bit_depth > 8)
     init_flags_ |= VPX_CODEC_USE_HIGHBITDEPTH;
 
-  libvpx_test::VideoSource *video;
+  testing::internal::scoped_ptr<libvpx_test::VideoSource> video;
   if (is_extension_y4m(test_video_param_.filename)) {
-    video = new libvpx_test::Y4mVideoSource(test_video_param_.filename,
-                                            0, kFrames);
+    video.reset(new libvpx_test::Y4mVideoSource(test_video_param_.filename,
+                                                0, kFrames));
   } else {
-    video = new libvpx_test::YUVVideoSource(test_video_param_.filename,
-                                            test_video_param_.fmt,
-                                            test_video_param_.width,
-                                            test_video_param_.height,
-                                            test_video_param_.framerate_num,
-                                            test_video_param_.framerate_den,
-                                            0, kFrames);
+    video.reset(new libvpx_test::YUVVideoSource(test_video_param_.filename,
+                                                test_video_param_.fmt,
+                                                test_video_param_.width,
+                                                test_video_param_.height,
+                                                test_video_param_.framerate_num,
+                                                test_video_param_.framerate_den,
+                                                0, kFrames));
   }
 
-  ASSERT_NO_FATAL_FAILURE(RunLoop(video));
+  ASSERT_NO_FATAL_FAILURE(RunLoop(video.get()));
   const int min_run = GetMinVisibleRun();
   const int min_arf_dist_requested = GetMinArfDistanceRequested();
   if (min_run != ARF_NOT_SEEN && min_run != ARF_SEEN_ONCE) {
@@ -221,7 +221,6 @@
     const int min_arf_dist = min_run + 1;
     EXPECT_GE(min_arf_dist, min_arf_dist_requested);
   }
-  delete(video);
 }
 
 VP9_INSTANTIATE_TEST_CASE(