[PATCH v2 2/9] adsldp: Require attribute definition to be properly terminated.

Dmitry Timoshkov dmitry at baikal.ru
Mon Mar 30 02:57:43 CDT 2020


Signed-off-by: Dmitry Timoshkov <dmitry at baikal.ru>
---
 dlls/adsldp/schema.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/dlls/adsldp/schema.c b/dlls/adsldp/schema.c
index 32b11a361a..06e61f258a 100644
--- a/dlls/adsldp/schema.c
+++ b/dlls/adsldp/schema.c
@@ -183,7 +183,7 @@ static BOOL parse_attribute_type(WCHAR *str, struct attribute_type *at)
     while (*p)
     {
         while (is_space(*p)) p++;
-        if (*p == ')') break;
+        if (*p == ')') return TRUE;
 
         if (!wcsnicmp(p, L"NAME", 4))
         {
@@ -228,7 +228,10 @@ static BOOL parse_attribute_type(WCHAR *str, struct attribute_type *at)
         }
     }
 
-    return TRUE;
+    WARN("attribute definition is not terminated\n");
+
+    free_attribute_type(at);
+    return FALSE;
 }
 
 struct attribute_type *load_schema(LDAP *ld, ULONG *at_count)
-- 
2.25.1




More information about the wine-devel mailing list