James Hawkins : ole32: Fix a few file access discrepancies between platforms.
Alexandre Julliard
julliard at winehq.org
Tue Sep 9 05:50:53 CDT 2008
Module: wine
Branch: master
Commit: 6f7c2b94d4d612905377bf934a6a9a0f68991279
URL: http://source.winehq.org/git/wine.git/?a=commit;h=6f7c2b94d4d612905377bf934a6a9a0f68991279
Author: James Hawkins <jhawkins at codeweavers.com>
Date: Mon Sep 8 22:49:51 2008 -0500
ole32: Fix a few file access discrepancies between platforms.
---
dlls/ole32/tests/storage32.c | 98 ++++++++++++++++++++++--------------------
1 files changed, 51 insertions(+), 47 deletions(-)
diff --git a/dlls/ole32/tests/storage32.c b/dlls/ole32/tests/storage32.c
index d825ab6..6a7158b 100644
--- a/dlls/ole32/tests/storage32.c
+++ b/dlls/ole32/tests/storage32.c
@@ -1003,65 +1003,66 @@ struct access_res
{
BOOL gothandle;
DWORD lasterr;
+ BOOL ignore;
};
static const struct access_res create[16] =
{
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
- { FALSE, ERROR_SHARING_VIOLATION },
- { FALSE, ERROR_SHARING_VIOLATION },
- { FALSE, ERROR_SHARING_VIOLATION },
- { TRUE, ERROR_SUCCESS },
- { FALSE, ERROR_SHARING_VIOLATION },
- { FALSE, ERROR_SHARING_VIOLATION },
- { FALSE, ERROR_SHARING_VIOLATION },
- { TRUE, ERROR_SUCCESS },
- { FALSE, ERROR_SHARING_VIOLATION },
- { FALSE, ERROR_SHARING_VIOLATION },
- { FALSE, ERROR_SHARING_VIOLATION },
- { TRUE, ERROR_SUCCESS }
+ { TRUE, ERROR_SUCCESS, TRUE },
+ { TRUE, ERROR_SUCCESS, TRUE },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { FALSE, ERROR_SHARING_VIOLATION, FALSE },
+ { FALSE, ERROR_SHARING_VIOLATION, FALSE },
+ { FALSE, ERROR_SHARING_VIOLATION, FALSE },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { FALSE, ERROR_SHARING_VIOLATION, FALSE },
+ { FALSE, ERROR_SHARING_VIOLATION, FALSE },
+ { FALSE, ERROR_SHARING_VIOLATION, FALSE },
+ { TRUE, ERROR_SUCCESS, TRUE },
+ { FALSE, ERROR_SHARING_VIOLATION, FALSE },
+ { FALSE, ERROR_SHARING_VIOLATION, FALSE },
+ { FALSE, ERROR_SHARING_VIOLATION, FALSE },
+ { TRUE, ERROR_SUCCESS, TRUE }
};
static const struct access_res create_commit[16] =
{
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
- { FALSE, ERROR_SHARING_VIOLATION },
- { FALSE, ERROR_SHARING_VIOLATION },
- { FALSE, ERROR_SHARING_VIOLATION },
- { TRUE, ERROR_SUCCESS },
- { FALSE, ERROR_SHARING_VIOLATION },
- { FALSE, ERROR_SHARING_VIOLATION },
- { FALSE, ERROR_SHARING_VIOLATION },
- { TRUE, ERROR_SUCCESS },
- { FALSE, ERROR_SHARING_VIOLATION },
- { FALSE, ERROR_SHARING_VIOLATION },
- { FALSE, ERROR_SHARING_VIOLATION },
- { TRUE, ERROR_SUCCESS }
+ { TRUE, ERROR_SUCCESS, TRUE },
+ { TRUE, ERROR_SUCCESS, TRUE },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { FALSE, ERROR_SHARING_VIOLATION, FALSE },
+ { FALSE, ERROR_SHARING_VIOLATION, FALSE },
+ { FALSE, ERROR_SHARING_VIOLATION, FALSE },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { FALSE, ERROR_SHARING_VIOLATION, FALSE },
+ { FALSE, ERROR_SHARING_VIOLATION, FALSE },
+ { FALSE, ERROR_SHARING_VIOLATION, FALSE },
+ { TRUE, ERROR_SUCCESS, TRUE },
+ { FALSE, ERROR_SHARING_VIOLATION, FALSE },
+ { FALSE, ERROR_SHARING_VIOLATION, FALSE },
+ { FALSE, ERROR_SHARING_VIOLATION, FALSE },
+ { TRUE, ERROR_SUCCESS, TRUE }
};
static const struct access_res create_close[16] =
{
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
- { TRUE, ERROR_SUCCESS },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { TRUE, ERROR_SUCCESS, FALSE },
+ { TRUE, ERROR_SUCCESS, FALSE },
{ TRUE, ERROR_SUCCESS }
};
@@ -1081,6 +1082,9 @@ static void _test_file_access(LPCSTR file, const struct access_res *ares, DWORD
for (j = 0; j < 4; j++)
{
+ if (ares[idx].ignore)
+ continue;
+
if (j == 0) share = 0;
if (j == 1) share = FILE_SHARE_READ;
if (j == 2) share = FILE_SHARE_WRITE;
More information about the wine-cvs
mailing list