From: Piotr Caban piotr@codeweavers.com
--- dlls/ole32/stg_prop.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/dlls/ole32/stg_prop.c b/dlls/ole32/stg_prop.c index 5c86de027b1..3d590b69b0d 100644 --- a/dlls/ole32/stg_prop.c +++ b/dlls/ole32/stg_prop.c @@ -2670,6 +2670,7 @@ static HRESULT PropertyStorage_ConstructEmpty(IStream *stm, REFFMTID rfmtid, hr = PropertyStorage_BaseConstruct(stm, rfmtid, grfMode, &ps); if (SUCCEEDED(hr)) { + ps->dirty = TRUE; if (clsid) ps->clsid = *clsid; ps->format = 0;
From: Piotr Caban piotr@codeweavers.com
--- dlls/ole32/stg_prop.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/dlls/ole32/stg_prop.c b/dlls/ole32/stg_prop.c index 3d590b69b0d..70d7635cc72 100644 --- a/dlls/ole32/stg_prop.c +++ b/dlls/ole32/stg_prop.c @@ -2558,6 +2558,8 @@ static HRESULT PropertyStorage_WriteToStream(PropertyStorage_impl *This) hr = IStream_Write(This->stm, &dwTemp, sizeof(dwTemp), &count);
end: + if (SUCCEEDED(hr)) + This->dirty = FALSE; return hr; }
From: Piotr Caban piotr@codeweavers.com
--- dlls/ole32/stg_prop.c | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/dlls/ole32/stg_prop.c b/dlls/ole32/stg_prop.c index 70d7635cc72..7f1b71eb647 100644 --- a/dlls/ole32/stg_prop.c +++ b/dlls/ole32/stg_prop.c @@ -2476,10 +2476,14 @@ static HRESULT PropertyStorage_WriteToStream(PropertyStorage_impl *This) PROPERTYSECTIONHEADER sectionHdr; HRESULT hr; ULONG count; + ULARGE_INTEGER size; LARGE_INTEGER seek; DWORD numProps, prop, sectionOffset, dwTemp; PROPVARIANT var;
+ size.QuadPart = 0; + IStream_SetSize(This->stm, size); + PropertyStorage_WriteHeadersToStream(This);
/* Count properties. Always at least one property, the code page */
Jinoh Kang (@iamahuman) commented about dlls/ole32/stg_prop.c:
PROPERTYSECTIONHEADER sectionHdr; HRESULT hr; ULONG count;
ULARGE_INTEGER size; LARGE_INTEGER seek; DWORD numProps, prop, sectionOffset, dwTemp; PROPVARIANT var;
size.QuadPart = 0;
fwiw we use C99 compound literals now:
```suggestion:-5+0 const ULARGE_INTEGER size = { .QuadPart = 0 }; LARGE_INTEGER seek; DWORD numProps, prop, sectionOffset, dwTemp; PROPVARIANT var;
```