diff --git a/src/media/audio/audio_frame_resizer.cpp b/src/media/audio/audio_frame_resizer.cpp
index a24b5a1f8db58591b7feb747012ce52477419ef6..429bef071570c531bac388dc6c658c6ad6f7a3d8 100644
--- a/src/media/audio/audio_frame_resizer.cpp
+++ b/src/media/audio/audio_frame_resizer.cpp
@@ -96,10 +96,9 @@ AudioFrameResizer::enqueue(std::shared_ptr<AudioFrame>&& frame)
     }
 
     auto nb_samples = samples();
-    if (nb_samples == 0 && f->nb_samples == frameSize_) {
+    if (cb_ && nb_samples == 0 && f->nb_samples == frameSize_) {
         nextOutputPts_ = frame->pointer()->pts + frameSize_;
-        if (cb_)
-            cb_(std::move(frame));
+        cb_(std::move(frame));
         return; // return if frame was just passed through
     }