Le lun 17/01/2005 à 19:12, Robert Shearman a écrit :
Vincent Béron wrote:
Le mar 11/01/2005 à 14:03, Robert Shearman a écrit :
Changelog:
- Make MTA dynamically allocated so that proxies and other resources are
freed at the proper time.
- Changed/removed some incorrect comments regarding apartments.
This patch broke wineprefixcreate invocation for me.
What happens is I get a: X Error of failed request: BadWindow (invalid Window parameter) Major opcode of failed request: 18 (X_ChangeProperty) Resource id in failed request: 0x77e61740 Serial number of failed request: 107 Current serial number in output stream: 114 error while wineprefixcreate runs "wine rundll32.exe setupapi.dll,InstallHinfSection DefaultInstall 128 wine.inf".
The error do go away if one of avifil32.dll or devenum.dll is commented out in [RegisterDllsSection] in wine.inf.
My personal guess is that one (or both) of those dlls do something which they should not, and we end up with using freed or unallocated memory.
I don't see the problem on my machine. Do the tests in dlls/ole32/tests work for you?
Not all of them (marshal: 107 tests executed, 0 marked as todo, 12 failures, moniker: 2 tests executed, 0 marked as todo, 1 failure, propvariant: 298 tests executed, 0 marked as todo, 0 failures, storage32: 89 tests executed, 0 marked as todo, 1 failure).
Is it possible to capture a +ole log for the wineprefixcreate invocation? I'll do a review of the code paths that patch touches anyway, but I don't see how it could affect things - devenum does not use MTAs and avifil32 does not use COM.
Since reaching the original conclusion yesterday, I'm able to have the same error with the 20050111 snapshot. So I don't think anymore that your patch was the problem (although at the time, a cvs updated at "Jan 12 19:27:00 2005 UTC" worked fine and one updated at "Jan 12 19:27:05 2005 UTC" caused the error).
I guess some more work is needed on my part to clearly identify what's the problem (and it's cause).
Vincent