diff --git a/libavcodec/bgmc.c b/libavcodec/bgmc.c
index 08b13373f307d2972506616e7537d2964548b174..ec8cf9bc0a8babd2d78a6eb0c607f8cf2450329c 100644
--- a/libavcodec/bgmc.c
+++ b/libavcodec/bgmc.c
@@ -461,7 +461,7 @@ int ff_bgmc_init(AVCodecContext *avctx, uint8_t **cf_lut, int **cf_lut_status)
     *cf_lut        = av_malloc(sizeof(*cf_lut)        * LUT_BUFF * 16 * LUT_SIZE);
     *cf_lut_status = av_malloc(sizeof(*cf_lut_status) * LUT_BUFF);
 
-    if (!cf_lut || !cf_lut_status) {
+    if (!*cf_lut || !*cf_lut_status) {
         ff_bgmc_end(cf_lut, cf_lut_status);
         av_log(avctx, AV_LOG_ERROR, "Allocating buffer memory failed.\n");
         return AVERROR(ENOMEM);