Преглед на файлове

fix: 优化可能造成内存泄漏的点

StyxS преди 5 години
родител
ревизия
c893edb9fe
променени са 1 файла, в които са добавени 3 реда и са изтрити 0 реда
  1. 3 0
      iOS/QGVAPlayer/QGVAPlayer/Classes/Controllers/Decoders/QGMP4FrameHWDecoder.m

+ 3 - 0
iOS/QGVAPlayer/QGVAPlayer/Classes/Controllers/Decoders/QGMP4FrameHWDecoder.m

@@ -239,6 +239,8 @@ NSString *const QGMP4HWDErrorDomain = @"QGMP4HWDErrorDomain";
         });
         
         if (status == kVTInvalidSessionErr) {
+            CFRelease(sampleBuffer);
+            
             // 防止陷入死循环
             if (_invalidRetryCount >= 3) {
                 return;
@@ -258,6 +260,7 @@ NSString *const QGMP4HWDErrorDomain = @"QGMP4HWDErrorDomain";
         _status = VTDecompressionSessionDecodeFrame(_mDecodeSession, sampleBuffer, flags, &outputPixelBuffer, &flagOut);
         
         if (_status == kVTInvalidSessionErr) {
+            CFRelease(sampleBuffer);
             // 防止陷入死循环
             if (_invalidRetryCount >= 3) {
                 return;