[PATCH] ole32: Add support for reading VT_CLSID properties.

Nikolay Sivov nsivov at codeweavers.com
Mon Mar 23 01:24:11 CDT 2020


Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
---

Mentioned in https://bugs.winehq.org/show_bug.cgi?id=47056.

 dlls/ole32/stg_prop.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/dlls/ole32/stg_prop.c b/dlls/ole32/stg_prop.c
index c5d2a42e1c..adf4c2f337 100644
--- a/dlls/ole32/stg_prop.c
+++ b/dlls/ole32/stg_prop.c
@@ -1454,6 +1454,14 @@ static HRESULT propertystorage_read_scalar(PROPVARIANT *prop, const struct read_
             else
                 hr = STG_E_INVALIDPARAMETER;
         }
+        break;
+    case VT_CLSID:
+        if (!(prop->u.puuid = allocate(allocate_data, sizeof (*prop->u.puuid))))
+            return STG_E_INSUFFICIENTMEMORY;
+
+        if (SUCCEEDED(hr = buffer_test_offset(buffer, offset, sizeof(*prop->u.puuid))))
+            StorageUtl_ReadGUID(buffer->data, offset, prop->u.puuid);
+
         break;
     default:
         FIXME("unsupported type %d\n", prop->vt);
-- 
2.25.1




More information about the wine-devel mailing list