[PATCH 1/1] Fix a crash on null helpstring and name on library level

Nikolay Sivov nsivov at codeweavers.com
Fri Dec 31 06:46:50 CST 2010


---
 programs/oleview/typelib.c |   26 ++++++++++++++++----------
 1 files changed, 16 insertions(+), 10 deletions(-)

diff --git a/programs/oleview/typelib.c b/programs/oleview/typelib.c
index 7be31c9..2b69ec4 100644
--- a/programs/oleview/typelib.c
+++ b/programs/oleview/typelib.c
@@ -1227,20 +1227,26 @@ static int PopulateTree(void)
     AddSpaces(tld, TAB_SIZE);
     wsprintfW(wszText, wszFormat2, pTLibAttr->wMajorVerNum, pTLibAttr->wMinorVerNum);
     AddToTLDataStrW(tld, wszText);
-    AddToTLDataStrW(tld, wszComa);
-    AddToTLDataStrW(tld, wszNewLine);
-    AddSpaces(tld, TAB_SIZE);
-    AddToTLDataStrW(tld, wszHelpstring);
-    AddToTLDataStrW(tld, wszOpenBrackets2);
-    AddToTLDataStrW(tld, wszInvertedComa);
-    AddToTLDataStrW(tld, bstrData);
-    AddToTLDataStrW(tld, wszInvertedComa);
-    AddToTLDataStrW(tld, wszCloseBrackets2);
+
+    if (bstrData)
+    {
+        /* helpstring is optional */
+        AddToTLDataStrW(tld, wszComa);
+        AddToTLDataStrW(tld, wszNewLine);
+        AddSpaces(tld, TAB_SIZE);
+        AddToTLDataStrW(tld, wszHelpstring);
+        AddToTLDataStrW(tld, wszOpenBrackets2);
+        AddToTLDataStrW(tld, wszInvertedComa);
+        AddToTLDataStrW(tld, bstrData);
+        AddToTLDataStrW(tld, wszInvertedComa);
+        AddToTLDataStrW(tld, wszCloseBrackets2);
+    }
+
     AddToTLDataStrW(tld, wszNewLine);
     AddToTLDataStrW(tld, wszCloseBrackets1);
     AddToTLDataStrW(tld, wszNewLine);
     AddToTLDataStrW(tld, wszLibrary);
-    AddToTLDataStrW(tld, bstrName);
+    if (bstrName) AddToTLDataStrW(tld, bstrName);
     AddToTLDataStrW(tld, wszNewLine);
     AddToTLDataStrW(tld, wszOpenBrackets3);
     AddToTLDataStrW(tld, wszNewLine);
-- 
1.5.6.5


--------------020704070203060706010408--



More information about the wine-patches mailing list