http://bugs.winehq.org/show_bug.cgi?id=15381
Summary: CoFreeUnusedLibraries will crash COM server or cause 0x800703E6/I_RpcReceive error 0x3e6 Product: Wine Version: 1.0.0 Platform: Other OS/Version: other Status: UNCONFIRMED Severity: normal Priority: P2 Component: ole32 AssignedTo: wine-bugs@winehq.org ReportedBy: dmda@yandex.ru
Created an attachment (id=16230) --> (http://bugs.winehq.org/attachment.cgi?id=16230) demo illustrating the problem
if CoFreeUnusedLibraries is called by COM server, it will break RPC channcel and lead to the errors
Attached is client/server code that demonstrates the problem. If you comment out CoFreeUnusedLibraries call, it will start to work.
Steps: -comple all 3 projects in the Workspace (Debug target is the only appropriate for the sake of demo) -make sure server and proxy are registered by running testserver.exe -RegServer, regsvr32 testserverPS.dll -run testproject.exe (the client)
Expected behaviour: 1. it will show server's message "CServer is created", click ok 2. it will show client's message "press OK when ready", click ok 3. it will show server's message passed by the client "Hello world!", click ok 4. it will show client's message "call succeeded" and client will exit 5. after roughly 6sec it will show that the server is unloaded/
Actual behaviour: 1. it will show server's message "CServer is created", click ok 2. it will show client's message "press OK when ready", click ok 3. it will show server's message passed by the client "Hello world!", click ok 4. it will dump out trouble in the console and show client's message "call failed"
You may call CoFreeUnusedLibraries anywhere in the appartment and it will break RPC on the server side. In some cases it will crash whole the server, like in the demo.
Tested environment: Fedora Core 8, 32bit, x86, wine 1.0 installed through the updates
http://bugs.winehq.org/show_bug.cgi?id=15381
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |testcase
http://bugs.winehq.org/show_bug.cgi?id=15381
Rob Shearman robertshearman@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |robertshearman@gmail.com Status|UNCONFIRMED |NEW Ever Confirmed|0 |1
--- Comment #1 from Rob Shearman robertshearman@gmail.com 2008-10-06 09:52:30 --- Thanks for the testcase. I will take a look at this when I have some time.
http://bugs.winehq.org/show_bug.cgi?id=15381
--- Comment #2 from Austin English austinenglish@gmail.com 2009-04-17 12:20:35 --- Rob, ping?
http://bugs.winehq.org/show_bug.cgi?id=15381
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download
--- Comment #3 from Austin English austinenglish@gmail.com 2009-10-29 14:29:06 --- Is this still an issue in current (1.1.32 or newer) wine?
http://bugs.winehq.org/show_bug.cgi?id=15381
Rob Shearman robertshearman@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|ole32 |rpc
--- Comment #4 from Rob Shearman robertshearman@gmail.com 2009-11-23 08:48:56 --- Haven't had chance to compile attached projects, but the bug is possibly in NdrDllCanUnloadNow.
http://bugs.winehq.org/show_bug.cgi?id=15381
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Platform|Other |x86 OS/Version|other |Linux
http://bugs.winehq.org/show_bug.cgi?id=15381
--- Comment #5 from butraxz@gmail.com 2013-12-07 02:48:28 CST --- This ticket has not been updated for over 900 days. Development recommends to check the status on your bug every release or two and let to be known if the bug is still present. If not, mark it fixed. If you are no longer able to put effort to this ticket, you can abandon it.
Is this still an issue with 1.7.8 or higher ?
https://bugs.winehq.org/show_bug.cgi?id=15381
super_man@post.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |focht@gmx.net, | |super_man@post.com
https://bugs.winehq.org/show_bug.cgi?id=15381
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |NEEDINFO
--- Comment #6 from Anastasius Focht focht@gmx.net --- Hello folks,
please retest with recent Wine version, preferably Wine 1.7.55+/1.8
The provided source code/project seems to be created with Visual Studio. Always provide precompiled binaries for client and server. Only few people have Visual Studio/Windows/SDK at hand to build the project and this makes it kind of instant turn off.
If there is no response after certain time, the bug will be closed without further notice (abandon).
Regards
https://bugs.winehq.org/show_bug.cgi?id=15381
winetest@luukku.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |00cpxxx@gmail.com, | |winetest@luukku.com
https://bugs.winehq.org/show_bug.cgi?id=15381
Linards linards.liepins@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |linards.liepins@gmail.com
--- Comment #7 from Linards linards.liepins@gmail.com --- Issue still present in latest wine?
https://bugs.winehq.org/show_bug.cgi?id=15381
--- Comment #8 from Anastasius Focht focht@gmx.net --- Created attachment 70255 --> https://bugs.winehq.org/attachment.cgi?id=70255 testproject binaries to reproduce (built with MSVC 2019 community edition)
https://bugs.winehq.org/show_bug.cgi?id=15381
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEEDINFO |RESOLVED Resolution|--- |FIXED
--- Comment #9 from Anastasius Focht focht@gmx.net --- Hello folks,
the problem has been fixed a long time ago, somewhere in Wine 1.1.x. I've attached binaries to reproduce (should have been done by OP to make things easier).
Wine 1.7.34 doesn't exhibit the problem (oldest Wine release I have locally built from source on modern distro + gcc 10.x).
Could be:
https://source.winehq.org/git/wine.git/commitdiff/90d3163aba26936d5dfa480165... ("rpcrt4: Fix NdrDllCanUnloadNow.").
-> Mon, 20 Apr 2009
Part of Wine 1.1.20 release.
But not sure since there is Rob's comment #4 after the date.
--- quote --- Rob Shearman 2009-11-23 08:48:56 CST
Haven't had chance to compile attached projects, but the bug is possibly in NdrDllCanUnloadNow. --- quote ---
Anyway, resolving here.
$ wine --version wine-1.7.34
Regards
https://bugs.winehq.org/show_bug.cgi?id=15381
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #10 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 6.13.