[Bug 4436] Storage32 regression problem: ECAD app 'Easy-PC' is unable to create new project/design

Wine Bugs wine-bugs at winehq.org
Sat Feb 11 15:22:30 CST 2006


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





------- Additional Comments From J.A.Gow at furrybubble.co.uk  2006-11-02 15:22 -------
Ah - I think I misunderstood you with respect to the IStorage_Release() calls.
Yes, ideally one should call IStream_Release followed by IStorage_Release, and
that works on Windows and Wine. However, some apps, including this one, do _not_
appear to do this - they simply call IStorage_Release once. This closes the file
and (it appears) all streams within it. The problem occurs under Wine when the
app calls IStorage_Release to close the file and all streams, Wine does not
close the file because streams are still open (reference held by each stream).
Then, when the app subsequently tries to reopen the storage file, it fails on
access violation because Wine has held the file open pending explicit closure of
the streams.

The bottom line is that Windows seems to have a mechanism by which when
IStorage_Release is called, the file and all open IStreams are implicitly closed
with it. Apps take advantage of this. Wine, however does it properly - but this
does not match the Windows mechanism!



-- 
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