Module: wine Branch: master Commit: b7f3e26e897838055644fa897e98dcb35a16b8fd URL: https://source.winehq.org/git/wine.git/?a=commit;h=b7f3e26e897838055644fa897...
Author: Michael Müller michael@fds-team.de Date: Mon Jul 16 20:18:15 2018 -0600
ole32: Support reading VT_BOOL, VT_R8 and VT_I8 into propery storage.
Signed-off-by: Alex Henrie alexhenrie24@gmail.com Signed-off-by: Huw Davies huw@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/ole32/stg_prop.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+)
diff --git a/dlls/ole32/stg_prop.c b/dlls/ole32/stg_prop.c index a259883..0213f31 100644 --- a/dlls/ole32/stg_prop.c +++ b/dlls/ole32/stg_prop.c @@ -1063,6 +1063,10 @@ static HRESULT PropertyStorage_ReadProperty(PROPVARIANT *prop, const BYTE *data, prop->u.bVal = *data; TRACE("Read byte 0x%x\n", prop->u.bVal); break; + case VT_BOOL: + StorageUtl_ReadWord(data, 0, (WORD*)&prop->u.boolVal); + TRACE("Read bool %d\n", prop->u.boolVal); + break; case VT_I2: StorageUtl_ReadWord(data, 0, (WORD*)&prop->u.iVal); TRACE("Read short %d\n", prop->u.iVal); @@ -1081,6 +1085,18 @@ static HRESULT PropertyStorage_ReadProperty(PROPVARIANT *prop, const BYTE *data, StorageUtl_ReadDWord(data, 0, &prop->u.ulVal); TRACE("Read ulong %d\n", prop->u.ulVal); break; + case VT_I8: + StorageUtl_ReadULargeInteger(data, 0, (ULARGE_INTEGER *)&prop->u.hVal); + TRACE("Read long long %s\n", wine_dbgstr_longlong(prop->u.hVal.QuadPart)); + break; + case VT_UI8: + StorageUtl_ReadULargeInteger(data, 0, &prop->u.uhVal); + TRACE("Read ulong long %s\n", wine_dbgstr_longlong(prop->u.uhVal.QuadPart)); + break; + case VT_R8: + memcpy(&prop->u.dblVal, data, sizeof(double)); + TRACE("Read double %f\n", prop->u.dblVal); + break; case VT_LPSTR: { DWORD count;