[Bug 7025] StgOpenStorage API function should not create a file if file does not exist

Wine Bugs wine-bugs at winehq.org
Sat Dec 30 21:00:03 CST 2006


http://bugs.winehq.org/show_bug.cgi?id=7025


mikegardiner at bigpond.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |truiken at gmail.com




------- Additional Comments From mikegardiner at bigpond.com  2006-30-12 21:00 -------
It can be tested with the existing dlls/ole32/tests/storage32.c. When running
the tests on Windows, it falsely states that the test failed (a file does not
get created but the test incorrectly expects it to). When running the test on
Wine, it falsely states that the test succeeded (a file does get created as the
test incorrectly expects it to).

The proposed changes are:
in the dlls/ole32/tests/storage32.c, lines 391-397:
    /* try opening a nonexistent file - it should not create it */
    stgm = STGM_DIRECT | STGM_SHARE_EXCLUSIVE | STGM_READWRITE;
    r = StgOpenStorage( filename, NULL, stgm, NULL, 0, &stg);
    if (r==S_OK) IStorage_Release(stg);
    ok(!is_existing_file(filename), "StgOpenStorage should not create a new
file\n");
    DeleteFileW(filename);


In the dlls/ole32/storage32.c, remove lines 6038 to 6045 that create a file if
it does not exist.

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the wine-bugs mailing list