Mike McCormack : ole32: Only print a FIXME if necessary in
StgOpenStorageEx .
Alexandre Julliard
julliard at wine.codeweavers.com
Tue Jul 11 06:10:55 CDT 2006
Module: wine
Branch: refs/heads/master
Commit: 55ab8098547087d249747cbba4608111efa1b3eb
URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=55ab8098547087d249747cbba4608111efa1b3eb
Author: Mike McCormack <mike at codeweavers.com>
Date: Tue Jul 11 11:38:24 2006 +0900
ole32: Only print a FIXME if necessary in StgOpenStorageEx.
---
dlls/ole32/storage32.c | 35 ++++++++++++++++++++---------------
1 files changed, 20 insertions(+), 15 deletions(-)
diff --git a/dlls/ole32/storage32.c b/dlls/ole32/storage32.c
index acebb98..8c7fc61 100644
--- a/dlls/ole32/storage32.c
+++ b/dlls/ole32/storage32.c
@@ -5829,28 +5829,33 @@ HRESULT WINAPI StgOpenStorageEx(const WC
return STG_E_INVALIDPARAMETER;
}
- if (stgfmt == STGFMT_DOCFILE && grfAttrs != 0 && grfAttrs != FILE_FLAG_NO_BUFFERING)
- {
- ERR("grfAttrs must be 0 or FILE_FLAG_NO_BUFFERING if stgfmt == STGFMT_DOCFILE\n");
- return STG_E_INVALIDPARAMETER;
- }
-
- if (stgfmt == STGFMT_FILE)
+ switch (stgfmt)
{
+ case STGFMT_FILE:
ERR("Cannot use STGFMT_FILE - this is NTFS only\n");
return STG_E_INVALIDPARAMETER;
- }
+
+ case STGFMT_STORAGE:
+ break;
- if (stgfmt == STGFMT_STORAGE || stgfmt == STGFMT_DOCFILE || stgfmt == STGFMT_ANY)
- {
- if (stgfmt == STGFMT_ANY)
- WARN("STGFMT_ANY assuming storage\n");
+ case STGFMT_DOCFILE:
+ if (grfAttrs && grfAttrs != FILE_FLAG_NO_BUFFERING)
+ {
+ 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");
- 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 STG_E_INVALIDPARAMETER;
+ return StgOpenStorage(pwcsName, NULL, grfMode, (SNB)NULL, 0, (IStorage **)ppObjectOpen);
}
More information about the wine-cvs
mailing list