diff --git a/src/media/media_decoder.cpp b/src/media/media_decoder.cpp
index 974833068086b9ab564577f49aea5515ef384adb..c11d83f430c7b8658a72432d3aa90e49a7c8e748 100644
--- a/src/media/media_decoder.cpp
+++ b/src/media/media_decoder.cpp
@@ -60,7 +60,7 @@ MediaDecoder::MediaDecoder() :
 MediaDecoder::~MediaDecoder()
 {
 #ifdef RING_ACCEL
-    if (decoderCtx_->hw_device_ctx)
+    if (decoderCtx_ && decoderCtx_->hw_device_ctx)
         av_buffer_unref(&decoderCtx_->hw_device_ctx);
 #endif
     if (decoderCtx_)