Nikolay Sivov : mf: Make freeing function optional for object activator.

Alexandre Julliard julliard at winehq.org
Tue Jul 7 15:47:07 CDT 2020


Module: wine
Branch: master
Commit: 3a973ca8275ac398d7df9fd27a1b777cbed1fad4
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=3a973ca8275ac398d7df9fd27a1b777cbed1fad4

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Tue Jul  7 14:40:11 2020 +0300

mf: Make freeing function optional for object activator.

Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/mf/evr.c  | 9 ++-------
 dlls/mf/main.c | 3 ++-
 dlls/mf/sar.c  | 9 ++-------
 3 files changed, 6 insertions(+), 15 deletions(-)

diff --git a/dlls/mf/evr.c b/dlls/mf/evr.c
index 64944673d5..e0ab44f8b0 100644
--- a/dlls/mf/evr.c
+++ b/dlls/mf/evr.c
@@ -258,15 +258,10 @@ static void evr_shutdown_object(void *user_context, IUnknown *obj)
     }
 }
 
-static void evr_free_private(void *user_context)
-{
-}
-
 static const struct activate_funcs evr_activate_funcs =
 {
-    evr_create_object,
-    evr_shutdown_object,
-    evr_free_private,
+    .create_object = evr_create_object,
+    .shutdown_object = evr_shutdown_object,
 };
 
 /***********************************************************************
diff --git a/dlls/mf/main.c b/dlls/mf/main.c
index 8656c6cddf..62dc1813c7 100644
--- a/dlls/mf/main.c
+++ b/dlls/mf/main.c
@@ -91,7 +91,8 @@ static ULONG WINAPI activate_object_Release(IMFActivate *iface)
 
     if (!refcount)
     {
-        activate->funcs->free_private(activate->context);
+        if (activate->funcs->free_private)
+            activate->funcs->free_private(activate->context);
         if (activate->object)
             IUnknown_Release(activate->object);
         IMFAttributes_Release(activate->attributes);
diff --git a/dlls/mf/sar.c b/dlls/mf/sar.c
index 8a27c0658c..6f1f1bd834 100644
--- a/dlls/mf/sar.c
+++ b/dlls/mf/sar.c
@@ -1891,15 +1891,10 @@ static void sar_shutdown_object(void *user_context, IUnknown *obj)
     }
 }
 
-static void sar_free_private(void *user_context)
-{
-}
-
 static const struct activate_funcs sar_activate_funcs =
 {
-    sar_create_object,
-    sar_shutdown_object,
-    sar_free_private,
+    .create_object = sar_create_object,
+    .shutdown_object = sar_shutdown_object,
 };
 
 /***********************************************************************




More information about the wine-cvs mailing list