Commit Graph

299 Commits

Author SHA1 Message Date
Esme Povirk 76f87fe30c mscoree: Add an option to enable the interpreter.
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-01 10:05:32 +01:00
Alexandre Julliard ce90e69eeb mscoree: Use --prefer-native instead of DLL_WINE_PREATTACH.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-26 11:40:42 +01:00
Esme Povirk 09d573cee8 mscoree: Remove individual vtable fixup traces.
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-18 10:10:37 +01:00
Esme Povirk cae84e2b06 mscoree: Update Wine Mono to 6.0.0.
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-09 11:13:37 +01:00
Rémi Bernon 500478cae9 mscoree: Improve non-neutral assembly lookup logic.
And neutral logic too, and the combinations with custom privatePath
config.

This fixes a crash with Mafia III launcher, when it tries to load its
localized strings from culture-specific assemblies to display its
warning popup message.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-03 09:23:43 +01:00
Francois Gouget 4c6b675198 mscoree/tests: The comtest registry tests may require elevated privileges.
On Windows Vista and 7 run_registry_test() requires having elevated
privileges.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-03 10:25:49 +01:00
Rémi Bernon 7b0a939a1f mscoree: Fallback to assembly name if codebase path is invalid.
Also use the InprocServer32 key values if there's no subkeys, as shown
by the test results.

L.A.Noire game crashes on startup after failing to load its ErrorHandler
assembly, that has an invalid CodeBase path in the registry.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-25 21:00:51 +01:00
Rémi Bernon 6b450f8deb mscoree/tests: Test querying interfaces with generated GUID.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-25 21:00:49 +01:00
Rémi Bernon 7612ff5930 mscoree/tests: Test invalid assembly paths in registry.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-25 21:00:47 +01:00
Esme Povirk d5711a8151 mscoree: Implement GetTokenForVTableEntry.
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-20 22:54:02 +02:00
Esme Povirk 6078375a29 mscoree: Update Wine Mono to 5.1.1.
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-28 19:41:53 +02:00
Esme Povirk f222f56414 mscoree: Use exe basename to name the default domain.
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-07 21:07:00 +02:00
Esme Povirk f87171c601 mscoree: Use builtin XNA implementation by default.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=32877
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-12 22:13:54 +02:00
Nikolay Sivov 72d055854b ntdll: Use single field for misc flags in ComClass redirection section.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-11 21:03:34 +02:00
Esme Povirk c96fa96c16 mscoree: Update Wine Mono to 5.1.0.
Signed-off-by: Esme Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-08 21:01:32 +02:00
Serge Gautherie e4e5eda3d9 mscoree: RegQueryValueExW() wants bytes, not chars.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Esme Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-29 10:45:29 +02:00
Vincent Povirk fc77666c0b mscoree: Update Wine Mono to 5.0.0.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-20 12:36:09 +02:00
Vincent Povirk e3e0cb8ebc mscoree: Replace uses of mono_domain_assembly_open.
This function is only intended to be used for the entry point
assembly.

Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-20 12:36:05 +02:00
Vincent Povirk 049e50bcaa mscoree: Use mono_get_corlib to get mscorlib image.
Apparently, mono_domain_assembly_open is intended for the entry
point assembly only, and no longer works when mscorlib is passed
in.

Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-20 12:35:59 +02:00
Francois Gouget 3649fe09ed mscoree: Handle the shared wine-mono installation like the msi case.
Expect to find the wine-mono-<ver> directory in the same location as the
msi file, that is inside the mono directory.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-25 15:25:05 +01:00
Jacek Caban 8f155eea7b mscoree: Use wcstok_s instead of wcstok.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-20 19:32:02 +01:00
Francois Gouget a909baeb4e tests: Report all errors when failing to wait for a child process.
Report the line number where the test failed to wait for the child so
one can identify which child process did not behave as expected.
Also wait_child_process() is meant for the general case so report
all non-crash error cases as test failures so they are accounted for.
Omit the "winetest_" prefix to match the other Wine test functions and
so the underlying winetest_wait_child_process() function can be wrapped
with the usual line-capturing macros.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48651
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-17 10:51:44 +01:00
Vincent Povirk 22e58b11a7 mscoree: Remove appdomain tracking.
This didn't work correctly with multiple runtime versions. We
should rely on Mono to keep track of AppDomains.

Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-19 20:26:53 +01:00
Rémi Bernon 1117fa68db mscoree/tests: Fix some format-overflow warnings.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-13 19:19:29 +01:00
Alexandre Julliard 32169fb39d mscoree/tests: Get rid of strrchrW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-26 10:59:43 +01:00
Andrew Eikum 0aaaacd199 mscoree: Don't print FIXME for unused config file elements.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-13 19:41:03 +01:00
Vincent Povirk a391492a96 mscoree: Ignore empty privatePath.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-05 23:36:23 +01:00
Alexandre Julliard 9c34572155 mscoree/tests: Avoid winetest_strcmpW.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-29 13:57:41 +01:00
Alexandre Julliard df3c911c63 mscoree: Store the Mono base directory in Unicode. 2019-11-18 19:12:14 +01:00
Vincent Povirk 1fddf230ff Revert "mscoree: Call mono_thread_manage in GC Unsafe mode.".
This reverts commit d10f2c0723.

The bug we were working around has been fixed in upstream Mono and
in Wine Mono 4.9.4.

Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-04 22:50:34 +01:00
Vincent Povirk b06d272d63 mscoree: Update Wine Mono to 4.9.4.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-04 22:50:32 +01:00
Vincent Povirk d10f2c0723 mscoree: Call mono_thread_manage in GC Unsafe mode.
The mono_thread_manage API expects to be called in GC Unsafe mode.

This has been the case for a while, but for some reason it only
caused problems in the Mono merge I'm working on now.

We don't need a matching exit call because we're shutting down
the runtime anyway, and we can't change GC modes after the runtime
shuts down.

Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-27 19:20:35 +01:00
Gijs Vermeulen d7031be892 mscoree: Support loading assemblies from path specified in config file.
Signed-off-by: Gijs Vermeulen <gijsvrm@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-18 20:20:14 +02:00
Vincent Povirk 621c2de460 mscoree: Update Wine Mono to 4.9.3.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-25 20:02:36 +02:00
Austin English 3c8f70e2c3 mscoree/tests: Mark tests as todo_wine if mono is not available on the current platform.
This allows the tests to pass for me both on arm64 and x86.

Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-23 18:57:50 +02:00
Vincent Povirk 6e3d68b141 mscoree: Add diagnostic CorGetSvc stub.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45449
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-09 01:59:23 +02:00
Vincent Povirk d593a80bb6 mscoree: Update Wine Mono to 4.9.2.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-05 20:14:29 +02:00
Zebediah Figura 074dd6959f mscoree: Fake success from StrongNameSignatureVerificationEx().
Game Maker Studio 2 Desktop needs this to launch.

Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-31 09:33:28 +02:00
Zebediah Figura 0ddeba7002 mscoree: Fix the signature for StrongNameSignatureVerification[Ex]().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-31 09:33:24 +02:00
Alexandre Julliard f89ab56ef6 mscoree: Build with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-05 17:34:22 +02:00
Vincent Povirk faa7564d37 mscoree: Update Wine Mono to 4.9.0.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-19 10:26:00 +02:00
Alexandre Julliard 842d404342 fusion: Build with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-04 19:23:11 +02:00
Vincent Povirk 6ee29c048c mscoree: Accept old framework build in exe metadata.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=27185
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-06 07:13:53 -05:00
Michael Stefaniuc 5bd1b2652c mscoree: Remove a redundant NULL check before heap_free().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-29 22:47:57 +02:00
Vincent Povirk 3e4c18a1be mscoree: Update Wine Mono to 4.8.3.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-23 23:50:45 +02:00
Vincent Povirk 91e3ce8c5d mscoree: Try skipping c: when searching for support msi.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-15 12:50:25 +02:00
Vincent Povirk 30baa2a833 mscoree: Don't use a shared mono install with no drive letter.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-08 19:50:40 +02:00
Vincent Povirk fe4f00681e mscoree: Don't return from _CorExeMain.
Testing on Windows shows that unmanaged threads do not keep the
process open after a .NET program's entry point and all .NET
foreground threads have exited.

Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-04 19:16:19 +02:00
Vincent Povirk 23181b40c5 mscoree: Update install process to account for shared installs.
This will install the support MSI if it's found in a shared
install. Otherwise, it'll fall back to appwiz as before.

Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-04 17:30:53 +02:00
Vincent Povirk dc2c580bdf mscoree: Search shared addon locations for mono runtime.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-04 17:30:51 +02:00