ole32: Remove unsupported interface REFIID from storage stream QueryInterface.

oldstable
Nikolay Sivov 2012-07-18 10:18:24 +04:00 committed by Alexandre Julliard
parent 382acd526f
commit e45202fdae
2 changed files with 8 additions and 2 deletions

View File

@ -94,8 +94,6 @@ static HRESULT WINAPI StgStreamImpl_QueryInterface(
*ppvObject = 0;
if (IsEqualIID(&IID_IUnknown, riid) ||
IsEqualIID(&IID_IPersist, riid) ||
IsEqualIID(&IID_IPersistStream, riid) ||
IsEqualIID(&IID_ISequentialStream, riid) ||
IsEqualIID(&IID_IStream, riid))
{

View File

@ -315,6 +315,7 @@ static void test_storage_stream(void)
LARGE_INTEGER pos;
ULARGE_INTEGER p;
unsigned char buffer[0x100];
IUnknown *unk;
DeleteFileA(filenameA);
@ -347,6 +348,13 @@ static void test_storage_stream(void)
/* now really create a stream and delete it */
r = IStorage_CreateStream(stg, stmname, STGM_SHARE_EXCLUSIVE | STGM_READWRITE, 0, 0, &stm );
ok(r==S_OK, "IStorage->CreateStream failed\n");
/* test for support interfaces */
r = IStream_QueryInterface(stm, &IID_IPersist, (void**)&unk);
ok(r==E_NOINTERFACE, "got 0x%08x\n", r);
r = IStream_QueryInterface(stm, &IID_IPersistStream, (void**)&unk);
ok(r==E_NOINTERFACE, "got 0x%08x\n", r);
r = IStream_Release(stm);
ok(r == 0, "wrong ref count\n");
r = IStorage_CreateStream(stg, stmname, STGM_SHARE_EXCLUSIVE | STGM_READWRITE, 0, 0, &stm );