Rebase against d265dd88cd93ce6ffe56c9cfd640b064d7c14e29

This commit is contained in:
Alistair Leslie-Hughes
2018-07-19 08:45:46 +10:00
parent 12be01bfc1
commit 49025c255b
5 changed files with 49 additions and 92 deletions

View File

@@ -1,46 +0,0 @@
From fe0714a56f0b6b69336446c6f68abafba29f57bd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Fri, 20 Jan 2017 01:39:01 +0100
Subject: ole32: Support reading VT_BOOL, VT_R8 and VT_I8 into propery storage.
---
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 f952704c7cd..e90e1ed4eda 100644
--- a/dlls/ole32/stg_prop.c
+++ b/dlls/ole32/stg_prop.c
@@ -1066,6 +1066,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);
@@ -1084,6 +1088,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;
--
2.11.0