[PATCH 3/4] Fix some crashes on unnamed methods/arguments

Nikolay Sivov nsivov at codeweavers.com
Sun Jan 2 07:05:10 CST 2011


---
 programs/oleview/typelib.c |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/programs/oleview/typelib.c b/programs/oleview/typelib.c
index 771305f..d2d6d00 100644
--- a/programs/oleview/typelib.c
+++ b/programs/oleview/typelib.c
@@ -631,7 +631,7 @@ static int EnumFuncs(ITypeInfo *pTypeInfo, TYPEATTR *pTypeAttr, HTREEITEM hParen
             AddToTLDataStrW(tld, wszStdCall);
             AddToTLDataStrW(tld, wszSpace);
         }
-        AddToTLDataStrW(tld, bstrName);
+        if (bstrName) AddToTLDataStrW(tld, bstrName);
         AddToTLDataStrW(tld, wszOpenBrackets2);
 
         for(j=0; j<pFuncDesc->cParams; j++)
@@ -701,8 +701,11 @@ static int EnumFuncs(ITypeInfo *pTypeInfo, TYPEATTR *pTypeAttr, HTREEITEM hParen
             AddToTLDataStrW(tld, wszAfter);
             AddToTLDataStrW(tld, wszSpace);
             if (j+1 < namesNo) {
-                AddToTLDataStrW(tld, bstrParamNames[j+1]);
-                SysFreeString(bstrParamNames[j+1]);
+                if (bstrParamNames[j+1])
+                {
+                    AddToTLDataStrW(tld, bstrParamNames[j+1]);
+                    SysFreeString(bstrParamNames[j+1]);
+                }
             } else {
                 AddToTLDataStrW(tld, szRhs);
             }
-- 
1.5.6.5



--------------020006050705060309090203--



More information about the wine-patches mailing list