Jacek Caban : dxdiagn: Don' t fail the whole initialization for invalid filter data in build_directshowfilters_tree.

Alexandre Julliard julliard at winehq.org
Thu Jan 9 12:52:49 CST 2014


Module: wine
Branch: master
Commit: bcf78a227f145ccb177fcdcf766a5ab09762c46e
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=bcf78a227f145ccb177fcdcf766a5ab09762c46e

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Thu Jan  9 11:11:25 2014 +0100

dxdiagn: Don't fail the whole initialization for invalid filter data in build_directshowfilters_tree.

---

 dlls/dxdiagn/provider.c |    7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/dlls/dxdiagn/provider.c b/dlls/dxdiagn/provider.c
index 145e5a3..76bbcf0 100644
--- a/dlls/dxdiagn/provider.c
+++ b/dlls/dxdiagn/provider.c
@@ -1632,16 +1632,17 @@ static HRESULT build_directshowfilters_tree(IDxDiagContainerImpl_Container *node
             }
 
             hr = fill_filter_container(subcont, pMoniker);
+            IMoniker_Release(pMoniker);
             if (FAILED(hr))
             {
+                WARN("Skipping invalid filter\n");
                 free_information_tree(subcont);
-                IMoniker_Release(pMoniker);
-                break;
+                hr = S_OK;
+                continue;
             }
 
             add_subcontainer(node, subcont);
             i++;
-            IMoniker_Release(pMoniker);
         }
 
         IEnumMoniker_Release(pEnum);




More information about the wine-cvs mailing list