Dmitry Timoshkov : adsldp: Initialize also pADsValues->dwType field.

Alexandre Julliard julliard at winehq.org
Tue Mar 31 16:44:24 CDT 2020


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

Author: Dmitry Timoshkov <dmitry at baikal.ru>
Date:   Tue Mar 31 19:00:00 2020 +0800

adsldp: Initialize also pADsValues->dwType field.

Signed-off-by: Dmitry Timoshkov <dmitry at baikal.ru>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/adsldp/adsldp.c     | 5 +++++
 dlls/adsldp/tests/ldap.c | 2 ++
 2 files changed, 7 insertions(+)

diff --git a/dlls/adsldp/adsldp.c b/dlls/adsldp/adsldp.c
index f8e8adccf4..8621836afc 100644
--- a/dlls/adsldp/adsldp.c
+++ b/dlls/adsldp/adsldp.c
@@ -1345,6 +1345,7 @@ static HRESULT add_column_values(LDAP_namespace *ldap, struct ldap_search_contex
         for (i = 0; i < count; i++)
         {
             TRACE("=> %s\n", debugstr_w(values[i]));
+            col->pADsValues[i].dwType = type;
             col->pADsValues[i].u.CaseIgnoreString = values[i];
         }
 
@@ -1371,6 +1372,8 @@ static HRESULT add_column_values(LDAP_namespace *ldap, struct ldap_search_contex
 
         for (i = 0; i < count; i++)
         {
+            col->pADsValues[i].dwType = type;
+
             if (wcsicmp(values[i], L"TRUE"))
                 col->pADsValues[i].u.Boolean = 1;
             else if (wcsicmp(values[i], L"FALSE"))
@@ -1436,6 +1439,7 @@ static HRESULT add_column_values(LDAP_namespace *ldap, struct ldap_search_contex
         for (i = 0; i < count; i++)
         {
             TRACE("=> %s\n", debugstr_an(values[i]->bv_val, values[i]->bv_len));
+            col->pADsValues[i].dwType = type;
             col->pADsValues[i].u.OctetString.dwLength = values[i]->bv_len;
             col->pADsValues[i].u.OctetString.lpValue = (BYTE *)values[i]->bv_val;
         }
@@ -1489,6 +1493,7 @@ static HRESULT WINAPI search_GetColumn(IDirectorySearch *iface, ADS_SEARCH_HANDL
         wcscat(col->pADsValues[0].u.CaseIgnoreString, ldap->host);
         wcscat(col->pADsValues[0].u.CaseIgnoreString, L"/");
         if (dn) wcscat(col->pADsValues[0].u.CaseIgnoreString, dn);
+        col->pADsValues[0].dwType = ADSTYPE_CASE_IGNORE_STRING;
         col->dwADsType = ADSTYPE_CASE_IGNORE_STRING;
         col->dwNumValues = 1;
         col->pszAttrName = strdupW(name);
diff --git a/dlls/adsldp/tests/ldap.c b/dlls/adsldp/tests/ldap.c
index 3c1d47755d..120e77053a 100644
--- a/dlls/adsldp/tests/ldap.c
+++ b/dlls/adsldp/tests/ldap.c
@@ -271,6 +271,8 @@ static void do_search(const struct search *s)
 
             for (i = 0; i < col.dwNumValues; i++)
             {
+                ok(col.pADsValues[i].dwType == col.dwADsType, "%u: got %d for %s\n", i, col.pADsValues[i].dwType, wine_dbgstr_w(name));
+
                 ok(res->values[i] != NULL, "expected to have more values for %s\n", wine_dbgstr_w(name));
                 if (!res->values[i]) break;
 




More information about the wine-cvs mailing list