msxml3: Correct MSXML object safety tests.

This commit is contained in:
Alistair Leslie-Hughes 2011-08-30 22:27:02 +10:00 committed by Alexandre Julliard
parent 06bdd38698
commit 33736bb871
3 changed files with 15 additions and 12 deletions

View File

@ -3430,7 +3430,8 @@ static HRESULT WINAPI domdoc_Safety_SetInterfaceSafetyOptions(IObjectSafety *ifa
if ((mask & ~SAFETY_SUPPORTED_OPTIONS) != 0)
return E_FAIL;
This->safeopt = enabled & mask & SAFETY_SUPPORTED_OPTIONS;
This->safeopt = (This->safeopt & ~mask) | (mask & enabled);
return S_OK;
}

View File

@ -1131,7 +1131,8 @@ static HRESULT WINAPI httprequest_Safety_SetInterfaceSafetyOptions(IObjectSafety
if ((mask & ~SAFETY_SUPPORTED_OPTIONS) != 0)
return E_FAIL;
This->safeopt = enabled & mask & SAFETY_SUPPORTED_OPTIONS;
This->safeopt = (This->safeopt & ~mask) | (mask & enabled);
return S_OK;
}

View File

@ -4457,11 +4457,11 @@ static void _test_IObjectSafety_common(unsigned line, IObjectSafety *safety)
ok_(__FILE__,line)(hr == S_OK, "ret %08x\n", hr );
hr = IObjectSafety_GetInterfaceSafetyOptions(safety, NULL, &supported, &enabled);
ok_(__FILE__,line)(hr == S_OK, "ret %08x\n", hr );
todo_wine
ok_(__FILE__,line)(broken(enabled == INTERFACESAFE_FOR_UNTRUSTED_CALLER) ||
enabled == (INTERFACESAFE_FOR_UNTRUSTED_CALLER | INTERFACE_USES_SECURITY_MANAGER) /* msxml3 SP8+ */,
"Expected (INTERFACESAFE_FOR_UNTRUSTED_CALLER | INTERFACE_USES_SECURITY_MANAGER), "
"got %08x\n", enabled);
ok_(__FILE__,line)(enabled == INTERFACESAFE_FOR_UNTRUSTED_CALLER, "Expected INTERFACESAFE_FOR_UNTRUSTED_CALLER got %08x\n", enabled);
ok_(__FILE__,line)(broken(supported == INTERFACESAFE_FOR_UNTRUSTED_CALLER) ||
supported == (INTERFACESAFE_FOR_UNTRUSTED_CALLER | INTERFACESAFE_FOR_UNTRUSTED_DATA | INTERFACE_USES_SECURITY_MANAGER) /* msxml3 SP8+ */,
"Expected (INTERFACESAFE_FOR_UNTRUSTED_CALLER | INTERFACESAFE_FOR_UNTRUSTED_DATA | INTERFACE_USES_SECURITY_MANAGER), "
"got %08x\n", supported);
hr = IObjectSafety_SetInterfaceSafetyOptions(safety, NULL,
INTERFACESAFE_FOR_UNTRUSTED_DATA,
@ -4469,11 +4469,12 @@ static void _test_IObjectSafety_common(unsigned line, IObjectSafety *safety)
ok_(__FILE__,line)(hr == S_OK, "ret %08x\n", hr );
hr = IObjectSafety_GetInterfaceSafetyOptions(safety, NULL, &supported, &enabled);
ok_(__FILE__,line)(hr == S_OK, "ret %08x\n", hr );
todo_wine
ok_(__FILE__,line)(broken(enabled == INTERFACESAFE_FOR_UNTRUSTED_DATA) ||
enabled == (INTERFACESAFE_FOR_UNTRUSTED_CALLER | INTERFACESAFE_FOR_UNTRUSTED_DATA) /* msxml3 SP8+ */,
"Expected (INTERFACESAFE_FOR_UNTRUSTED_CALLER | INTERFACESAFE_FOR_UNTRUSTED_DATA), "
"got %08x\n", enabled);
ok_(__FILE__,line)(enabled == (INTERFACESAFE_FOR_UNTRUSTED_CALLER | INTERFACESAFE_FOR_UNTRUSTED_DATA),
"expected INTERFACESAFE_FOR_UNTRUSTED_CALLER | INTERFACESAFE_FOR_UNTRUSTED_DATA got %08x\n", enabled);
ok_(__FILE__,line)(broken(supported == INTERFACESAFE_FOR_UNTRUSTED_DATA) ||
supported == (INTERFACESAFE_FOR_UNTRUSTED_CALLER | INTERFACESAFE_FOR_UNTRUSTED_DATA | INTERFACE_USES_SECURITY_MANAGER) /* msxml3 SP8+ */,
"Expected (INTERFACESAFE_FOR_UNTRUSTED_CALLER | INTERFACESAFE_FOR_UNTRUSTED_DATA | INTERFACE_USES_SECURITY_MANAGER), "
"got %08x\n", supported);
}
static void test_XMLHTTP(void)