From af6b0c4a9255c5f39a02a0c8e1b5288bc8600866 Mon Sep 17 00:00:00 2001
From: Laurent Aimar <fenrir@videolan.org>
Date: Sat, 25 Apr 2009 14:02:57 +0200
Subject: [PATCH] Fixed direct3d open error handling.

At least a non allocated lock was released.
---
 modules/video_output/msw/direct3d.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/modules/video_output/msw/direct3d.c b/modules/video_output/msw/direct3d.c
index dcebe6fc0c..91963e4720 100644
--- a/modules/video_output/msw/direct3d.c
+++ b/modules/video_output/msw/direct3d.c
@@ -167,7 +167,9 @@ static int OpenVideo( vlc_object_t *p_this )
     if( VLC_SUCCESS != Direct3DVoutCreate( p_vout ) )
     {
         msg_Err( p_vout, "Direct3D could not be initialized !");
-        goto error;
+        Direct3DVoutRelease( p_vout );
+        free( p_vout->p_sys );
+        return VLC_EGENERIC;
     }
 
     /* Initialisations */
-- 
2.25.4