Commit 55ab8098 authored by Mike McCormack's avatar Mike McCormack Committed by Alexandre Julliard

ole32: Only print a FIXME if necessary in StgOpenStorageEx.

parent 5cb1045a
...@@ -5829,28 +5829,33 @@ HRESULT WINAPI StgOpenStorageEx(const WCHAR* pwcsName, DWORD grfMode, DWORD stgf ...@@ -5829,28 +5829,33 @@ HRESULT WINAPI StgOpenStorageEx(const WCHAR* pwcsName, DWORD grfMode, DWORD stgf
return STG_E_INVALIDPARAMETER; return STG_E_INVALIDPARAMETER;
} }
if (stgfmt == STGFMT_DOCFILE && grfAttrs != 0 && grfAttrs != FILE_FLAG_NO_BUFFERING) switch (stgfmt)
{
ERR("grfAttrs must be 0 or FILE_FLAG_NO_BUFFERING if stgfmt == STGFMT_DOCFILE\n");
return STG_E_INVALIDPARAMETER;
}
if (stgfmt == STGFMT_FILE)
{ {
case STGFMT_FILE:
ERR("Cannot use STGFMT_FILE - this is NTFS only\n"); ERR("Cannot use STGFMT_FILE - this is NTFS only\n");
return STG_E_INVALIDPARAMETER; return STG_E_INVALIDPARAMETER;
}
case STGFMT_STORAGE:
break;
if (stgfmt == STGFMT_STORAGE || stgfmt == STGFMT_DOCFILE || stgfmt == STGFMT_ANY) case STGFMT_DOCFILE:
{ if (grfAttrs && grfAttrs != FILE_FLAG_NO_BUFFERING)
if (stgfmt == STGFMT_ANY) {
WARN("STGFMT_ANY assuming storage\n"); ERR("grfAttrs must be 0 or FILE_FLAG_NO_BUFFERING if stgfmt == STGFMT_DOCFILE\n");
return STG_E_INVALIDPARAMETER;
}
FIXME("Stub: calling StgOpenStorage, but ignoring pStgOptions and grfAttrs\n"); FIXME("Stub: calling StgOpenStorage, but ignoring pStgOptions and grfAttrs\n");
return StgOpenStorage(pwcsName, NULL, grfMode, (SNB)NULL, 0, (IStorage **)ppObjectOpen); break;
case STGFMT_ANY:
WARN("STGFMT_ANY assuming storage\n");
break;
default:
return STG_E_INVALIDPARAMETER;
} }
ERR("Invalid stgfmt argument\n"); return StgOpenStorage(pwcsName, NULL, grfMode, (SNB)NULL, 0, (IStorage **)ppObjectOpen);
return STG_E_INVALIDPARAMETER;
} }
......
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