From 250e0193b679611f6c8736082b851f156fd77874 Mon Sep 17 00:00:00 2001
From: Steve Lhomme <robux4@ycbcr.xyz>
Date: Thu, 1 Sep 2022 07:21:05 +0200
Subject: [PATCH] video_filter: scene: fix usage when config_GetUserDir returns
 NULL

The snapshot cannot be created so the filter cannot be used.
---
 modules/video_filter/scene.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/modules/video_filter/scene.c b/modules/video_filter/scene.c
index a9cae368f5a9..811d34659433 100644
--- a/modules/video_filter/scene.c
+++ b/modules/video_filter/scene.c
@@ -194,6 +194,16 @@ static int Create( filter_t *p_filter )
     if( p_sys->psz_path == NULL )
         p_sys->psz_path = config_GetUserDir( VLC_PICTURES_DIR );
 
+    if (unlikely(p_sys->psz_path == NULL))
+    {
+        msg_Err( p_filter, "could not create snapshot: no directory" );
+        image_HandlerDelete( p_sys->p_image );
+        free( p_sys->psz_prefix );
+        free( p_sys->psz_format );
+        free( p_sys );
+        return VLC_EGENERIC;
+    }
+
     static const struct vlc_filter_operations filter_ops =
     {
         .filter_video = Filter, .close = Destroy,
-- 
GitLab