Signed-off-by: Dmitry Timoshkov dmitry@baikal.ru --- dlls/adsldp/adsldp.c | 13 +++++++++++++ dlls/adsldp/schema.c | 2 ++ 2 files changed, 15 insertions(+)
diff --git a/dlls/adsldp/adsldp.c b/dlls/adsldp/adsldp.c index 4b66cd611f..caa3442099 100644 --- a/dlls/adsldp/adsldp.c +++ b/dlls/adsldp/adsldp.c @@ -1350,6 +1350,19 @@ static HRESULT add_column_values(LDAP_namespace *ldap, ADS_SEARCH_COLUMN *col, break; }
+ case ADSTYPE_BOOLEAN: + if (stricmp(values[i]->bv_val, "TRUE")) + col->pADsValues[i].u.Boolean = 1; + else if (stricmp(values[i]->bv_val, "FALSE")) + col->pADsValues[i].u.Boolean = 0; + else + { + FIXME("not recognized boolean value %s\n", debugstr_an(values[i]->bv_val, values[i]->bv_len)); + col->pADsValues[i].u.Boolean = 0; + } + TRACE("=> %d\n", col->pADsValues[i].u.Boolean); + break; + case ADSTYPE_INTEGER: col->pADsValues[i].u.Integer = strtol(values[i]->bv_val, NULL, 10); TRACE("%s => %d\n", debugstr_an(values[i]->bv_val, values[i]->bv_len), col->pADsValues[i].u.Integer); diff --git a/dlls/adsldp/schema.c b/dlls/adsldp/schema.c index 234a76dfa9..bff754be7a 100644 --- a/dlls/adsldp/schema.c +++ b/dlls/adsldp/schema.c @@ -58,6 +58,8 @@ ADSTYPEENUM get_schema_type(const WCHAR *name, const struct attribute_type *at, type = find_schema_type(name, at, at_count); if (!type || !type->syntax) return ADSTYPE_CASE_IGNORE_STRING;
+ if (!wcscmp(type->syntax, L"1.3.6.1.4.1.1466.115.121.1.7")) + return ADSTYPE_BOOLEAN; if (!wcscmp(type->syntax, L"1.3.6.1.4.1.1466.115.121.1.12")) return ADSTYPE_DN_STRING; if (!wcscmp(type->syntax, L"1.3.6.1.4.1.1466.115.121.1.15"))
Hi,
While running your changed tests, I think I found new failures. Being a bot and all I'm not very good at pattern recognition, so I might be wrong, but could you please double-check?
Full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=68443
Your paranoid android.
=== debiant (build log) ===
error: patch failed: dlls/adsldp/adsldp.c:1338 Task: Patch failed to apply
=== debiant (build log) ===
error: patch failed: dlls/adsldp/adsldp.c:1338 Task: Patch failed to apply