Commit Graph

293 Commits

Author SHA1 Message Date
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
Vincent Povirk 179797a6fb mscoree: Check for mono runtime path in registry.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-04 17:30:48 +02:00
Vincent Povirk 4cae833415 mscoree: Update Wine Mono to 4.8.1.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-04 17:30:45 +02:00
Piotr Caban cef4d3465b mscoree: Don't use strncasecmp.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-02 19:23:40 +02:00
Vincent Povirk 5baadda536 mscoree: Implement an override setting for .net libraries.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-11 22:15:23 +01:00
Vincent Povirk e41502b429 mscoree: Add support for config stream in GetRequestedRuntime.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=37751
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-25 12:30:12 +01:00
Vincent Povirk 5e86cc0a8f mscoree: Update Wine Mono to 4.8.0.
New in this release:
 * Nearly 2 years of updates from the Mono project.
 * A separate Framework64 directory is now created in 64-bit
   prefixes.
 * The csc command-line interface to the C# compiler is now
   present in Framework directories.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46639
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-18 21:15:47 +01:00