Commit e3f226fd authored by Nikolay Sivov's avatar Nikolay Sivov Committed by Alexandre Julliard

mfplat: Allow NULL size pointer in IMFAttributes::GetAllocatedBlob().

parent 1336f596
...@@ -2743,7 +2743,8 @@ HRESULT attributes_GetAllocatedBlob(struct attributes *attributes, REFGUID key, ...@@ -2743,7 +2743,8 @@ HRESULT attributes_GetAllocatedBlob(struct attributes *attributes, REFGUID key,
if (SUCCEEDED(hr)) if (SUCCEEDED(hr))
{ {
*buf = attrval.caub.pElems; *buf = attrval.caub.pElems;
*size = attrval.caub.cElems; if (size)
*size = attrval.caub.cElems;
} }
return hr; return hr;
......
...@@ -1749,6 +1749,11 @@ static void test_attributes(void) ...@@ -1749,6 +1749,11 @@ static void test_attributes(void)
ok(!memcmp(blob_buf, blob, size), "Unexpected blob.\n"); ok(!memcmp(blob_buf, blob, size), "Unexpected blob.\n");
CoTaskMemFree(blob_buf); CoTaskMemFree(blob_buf);
hr = IMFAttributes_GetAllocatedBlob(attributes, &DUMMY_GUID1, &blob_buf, NULL);
ok(hr == S_OK, "Failed to get allocated blob, hr %#lx.\n", hr);
ok(!memcmp(blob_buf, blob, size), "Unexpected blob.\n");
CoTaskMemFree(blob_buf);
hr = IMFAttributes_GetAllocatedBlob(attributes, &DUMMY_GUID2, &blob_buf, &size); hr = IMFAttributes_GetAllocatedBlob(attributes, &DUMMY_GUID2, &blob_buf, &size);
ok(hr == MF_E_ATTRIBUTENOTFOUND, "Unexpected hr %#lx.\n", hr); ok(hr == MF_E_ATTRIBUTENOTFOUND, "Unexpected hr %#lx.\n", hr);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment