Commit graph

78223 commits

Author SHA1 Message Date
Jérôme Gardou 4421abdb59 Revert "[DBGHELP] Add SYMFLAG_- and SYMTYPE_-defines."
This reverts commit 9466a005e9.

This will be applied later through the winesync script
2020-09-16 10:35:36 +02:00
Jérôme Gardou 52fe276632 Revert "[DBGHELP] set correct values in symt_fill_sym_info (SYMBOL_INFO)."
This reverts commit 6175044aed.

This will be applied later through the winesync script
2020-09-16 10:35:36 +02:00
Jérôme Gardou 92cf32b433 Revert "[DBGHELP] Set LastError for SymGetModuleBase-calls to ERROR_MOD_NOT_FOUND."
This reverts commit b2bcd8afdd.

It will be applied later through winesync script
2020-09-16 10:35:36 +02:00
Jérôme Gardou 555f98267c Revert "[DBGHELP] SymFromAddr: Handle 2 or more symbols at the same address correct."
This reverts commit 0263151f3c.

It will be applied later through winesync script
2020-09-16 10:35:36 +02:00
winesync f243e09624 [WINESYNC] dbghelp: Turn variable 'code' into a static constant.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f333c4a210e25bbb8af2adeeae0dbe006354519b by Alex Henrie <alexhenrie24@gmail.com>
2020-09-16 10:35:36 +02:00
winesync bba2a6162b [WINESYNC] dbghelp/dwarf: Use debugstr_a() to trace external strings.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 86805c3d4b78e69e675e72f57a21254d3d580ddd by Zebediah Figura <z.figura12@gmail.com>
2020-09-16 10:35:35 +02:00
winesync f7187f092a [WINESYNC] dbghelp: Fix memory leak in SymInitializeW() (Coverity).
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b3717a92d11c84819ce934da39bc8f9c85582c9a by Józef Kucia <jkucia@codeweavers.com>
2020-09-16 10:35:35 +02:00
winesync d3849da5c4 [WINESYNC] dbghelp/msc: Use the word size of the target process.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ca9b1d0077874c94715cd2ceeff114853151ed2d by Zebediah Figura <z.figura12@gmail.com>
2020-09-16 10:35:35 +02:00
winesync e9161985e1 [WINESYNC] dbghelp: Correctly determine the dyld image info address.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b7defd2946e625351111c36ff0f521b8aa9e6487 by Zebediah Figura <z.figura12@gmail.com>
2020-09-16 10:35:35 +02:00
winesync 5a3f69edcc [WINESYNC] dbghelp/dwarf: Use the word size of the target process.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45490
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 42745c068f80b696e7402680a61c2006b68b01d0 by Zebediah Figura <z.figura12@gmail.com>
2020-09-16 10:35:35 +02:00
winesync 8629cdb6af [WINESYNC] dbghelp/dwarf: Allow get_context_reg() to handle different register sizes.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3507615f35777f38a20407b7879f7c7d6510b12a by Zebediah Figura <z.figura12@gmail.com>
2020-09-16 10:35:35 +02:00
winesync 1825a61069 [WINESYNC] dbghelp/dwarf: Use the correct backend CPU in dwarf2_virtual_unwind().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9ae588a96ef5f07ba22e0fadc3aacf61b274efe5 by Zebediah Figura <z.figura12@gmail.com>
2020-09-16 10:35:34 +02:00
winesync 7470eb9ced [WINESYNC] dbghelp: Use WOW64_CONTEXT instead of CONTEXT for i386 backend.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3ce304e60100962503bcded0adb69659f849d1b4 by Zebediah Figura <z.figura12@gmail.com>
2020-09-16 10:35:34 +02:00
Jérôme Gardou 4084b5f214 [SDK] Add WOW64_CONTEXT structure 2020-09-16 10:35:34 +02:00
winesync 148591a8a6 [WINESYNC] dbghelp: Fix loading of Mach-O load commands for 64-bit binaries.
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3ff8fa7ed1d28b38703125b0c8c632410e3fd980 by Ken Thomases <ken@codeweavers.com>
2020-09-16 10:35:34 +02:00
winesync 4e89603929 [WINESYNC] dbghelp: Use the ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 053a7e225c8190fd7416b3f3c3186f1ac230eeb3 by Michael Stefaniuc <mstefani@winehq.org>
2020-09-16 10:35:34 +02:00
winesync d3247b3f59 [WINESYNC] dbghelp: Recompute location after fixing it.
Fix a assertion raised by every exception with newer clang versions (>3.7) at least on ARM64:
../../../dlls/dbghelp/dwarf.c:1641: void dwarf2_parse_variable(dwarf2_subprogram_t *, struct symt_block *, dwarf2_debug_info_t *): Assertion `subpgm->func' failed.

Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3d482d3f9f0a3ffa69540af87594b3c1dc46e07b by André Hentschel <nerv@dawncrow.de>
2020-09-16 10:35:34 +02:00
winesync d119141669 [WINESYNC] dbghelp: Map SIMD dwarf registers on ARM64.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 86864486be64a277f6edf8e66709cd0f17a4eed9 by André Hentschel <nerv@dawncrow.de>
2020-09-16 10:35:33 +02:00
winesync eaf6edad46 [WINESYNC] dbghelp: Read the stabs nlist entry corresponding to the target's architecture.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7d441808ac3b1d8bcef7795b636bda14c31c927b by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:33 +02:00
winesync f631b4d120 [WINESYNC] dbghelp: Translate the 32-bit Mach-O section header to the 64-bit one.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1dc9bb70cd16fa7b37e8fd6e82ed18311ddfbe38 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:33 +02:00
winesync 75e77444c6 [WINESYNC] dbghelp: Read the Mach-O segment command corresponding to the target's architecture.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0fc3c33637d4c8eff3f4373d374b3feb402bce4a by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:33 +02:00
winesync 0d3ccc92fb [WINESYNC] dbghelp: Pass an image_file_map to macho_enum_load_commands().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id bf7681cb2f3a73239170b4f0ebc8f6b38bc027ec by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:33 +02:00
winesync 9985483679 [WINESYNC] dbghelp: Read the 32-bit Mach-O header.
It is identical to the 64-bit header, except for the "reserved" field.

Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f2e38e17956197180ad730fd00a267fc25d4f238 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:33 +02:00
winesync 887025f3a0 [WINESYNC] dbghelp: Determine the target Mach-O architecture from the process's architecture.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f0ee3471f369bc3d3911647c7efa63fc503e6ce2 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:33 +02:00
winesync c719e68907 [WINESYNC] dbghelp: Read the r_debug and link_map structs corresponding to the target's architecture.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 99e818154a803c8cfd2478b9db3b455fc9adef30 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:32 +02:00
winesync 76ad5c4b68 [WINESYNC] dbghelp: Translate the 32-bit ELF symbol struct to the 64-bit one.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7e4fd17d5b62e888fd6a3a452dc3ee22dfb74ccd by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:32 +02:00
winesync 4a24f9acfc [WINESYNC] dbghelp: Read the Elf_auxv_t struct corresponding to the target's architecture.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 51ada19ac235df104e95476e9b3fa8204357bb9a by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:32 +02:00
winesync dd5baf8750 [WINESYNC] dbghelp: Read the Elf_Dyn struct corresponding to the target's architecture.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id bb53152faab705d972de3763ddd9bb3351e92460 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:32 +02:00
winesync 48c551a237 [WINESYNC] dbghelp: Read the ELF program header corresponding to the target's architecture.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id bd620ffb443eaa2dba997dc5597cb37c44d757b7 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:32 +02:00
winesync 8428b1f8c3 [WINESYNC] dbghelp: Add a missing include to fix the build.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cf78601b3781e64ea2745cf8084848acb69300a8 by Huw Davies <huw@codeweavers.com>
2020-09-16 10:35:32 +02:00
winesync 23a2d2713d [WINESYNC] dbghelp: Translate the 32-bit ELF section header to the 64-bit one.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4005901773bf1842804c40d928a944623e11d238 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:32 +02:00
winesync 1983f47206 [WINESYNC] dbghelp: Translate the 32-bit ELF header to the 64-bit one.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 799e0bfa57c4c2a7922c43031bd0d95c6add6a1a by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:31 +02:00
winesync 7adbd03d5f [WINESYNC] dbghelp: Detect ELF architecture before reading the whole header.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a612f1f56fefd00ebe6d8f7bcf7c826f5aa85eab by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:31 +02:00
winesync de68f04b7c [WINESYNC] dbghelp: Don't enforce child architecture in elf_map_file().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c2c0e4fe510f75c757e5dbdc1b727a7c9f3d6f33 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:31 +02:00
winesync ee8dbf8e10 [WINESYNC] dbghelp: Correctly determine the wine loader base address.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 185d9ee7ebf56e0663f715e532f2ee2c27289f12 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:31 +02:00
winesync f69be6c561 [WINESYNC] dbghelp: Determine the wine loader name from the target process's architecture.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a981edf0bc7c828e6b55fdc73b51a2f457043c4a by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:31 +02:00
winesync 3346544802 [WINESYNC] dbghelp: Add a helper to check if a given module is the Wine loader.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9b973eee9e06a3dca7a6c5739741446bf46e27f5 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:31 +02:00
Jérôme Gardou 7431b80ae6 [WINESYNC]: revert wine-staging patchset for dbghelp 2020-09-16 10:35:30 +02:00
Jérôme Gardou 6cce4bdeba [WINESYNC] Add dbghelp entry 2020-09-16 10:35:30 +02:00
Jérôme Gardou a84b0dbe6b [LIBWINE] make wine_get_dos_file_name available
And complain loudly when we get a *real* unix file name
2020-09-16 10:35:30 +02:00
Jérôme Gardou 9fc0c7a372 [CRT] Let's have llabs for every compiler out there 2020-09-16 10:35:29 +02:00
Kyle Katarn 579f501215
[RAPPS] Fix of unhandled exception when trying to modify/uninstall without selection (#3185)
CORE-17279
2020-09-15 22:50:12 +02:00
Joachim Henze a27f0debca [MMIXER] Fix NULL dereference CORE-17276
This lead to a crash of winmm:mixer
during "GCCLin_x86 on Test VBox".

The crash was exposed when new code paths
were activated by 0.4.15-dev-791-g
6d7ebc2048

I do intend to port this commit back into 0.4.14RC.
2020-09-15 20:54:50 +02:00
Dmitry Borisov 0dfc7f06b7
[VIDEOPRT] Add global variable for debugging video drivers (#3080)
Reference: https://docs.microsoft.com/en-us/previous-versions/ff570170(v=vs.85)
2020-09-15 15:24:42 +03:00
Dmitry Borisov 0f8de896aa
[PCIIDEX] Implement missing PciIdeXDebugPrint function (#3146)
It's useful for debugging IDE controller minidrivers, and it makes pciidex.sys work on Windows XP/2003.
- https://user-images.githubusercontent.com/37072976/92856412-39d56b80-f415-11ea-880f-48998c11112d.png

CORE-17256
2020-09-15 15:10:52 +03:00
Serge Gautherie 345ad55319
[BROWSEUI][USER32] Explicitly use MAKEINTRESOURCEW() for consistency (#3192) 2020-09-15 14:56:51 +03:00
Michael Stamper b43e4c981e
[KDBG] Fixed handle leak in KdbpSymLoadModuleSymbols() when RosSymCreateFromFile() fails (#3184) 2020-09-14 21:48:06 +02:00
Joachim Henze 6d7ebc2048 [WDMAUD.DRV] Workaround multiple issues with AC97 driver from rapps
By taking alternative code-paths in WdmAud and bypassing Sysaudio.

This relies on the patch 0.4.15-dev-765-g
b8e936a57b

It fixes the following bugs/regressions:
-CORE-13202 Unhandled exception from wdmaud.drv when recording sound in Scratch 1.4 leads to app-crash
-CORE-13488 A deadlock in "DiabloII" character selection screen and "The Lion King II"
-CORE-8726/CORE-9986/CORE-16564 AC97 driver is now working in the same session where driver was installed, no reboot-orgies needed anymore
-CORE-9981 almost 100% fixed, DosBox + Commander Keen6 properly plays music instead of garbled output,
           same improvement for ScummVM 2.0 with Monkey Island 2

The playback is not yet *entirely* perfect, still a few hiccups now and then, but
by orders of magnitude better than before.
2020-09-14 17:12:16 +02:00
Katayama Hirofumi MZ 78edea8164
[SHELL32_APITEST] Strengthen ShellExecCmdLine testcase (#3164)
- Add tests for "My Documents" and "Control Panel".
- Add some comments for usability.
CORE-16939
2020-09-14 13:25:45 +09:00
Hermès Bélusca-Maïto a373198419
[SHELL32] Fix boot to shell, addendum to commit 14599b0a.
shell32.ShellMessageBoxW redirects to shlwapi.ShellMessageBoxWrapW.
However the latter one (shlwapi) is exported by ordinal only.
Trying to use in shell32.spec file the following syntax:

  182 varargs ShellMessageBoxW() shlwapi.ShellMessageBoxWrapW

will therefore fail at runtime, because Windows/ReactOS will fail to
snap shlwapi.ShellMessageBoxWrapW.
Using instead an export by orginal:

  182 varargs ShellMessageBoxW() shlwapi.#388

actually fails as well, but at link time, by both MSVC' LINK and GNU's
dlltool.
This generates a .def file containing the line:

  ShellMessageBoxW=shlwapi.#388 @182

It is not clear why it fails, because according to:
https://docs.microsoft.com/en-us/cpp/build/reference/exports?view=vs-2019
and
https://devblogs.microsoft.com/oldnewthing/20121116-00/?p=6073
this should be possible.
However one encounters the same errors as those described at:
https://groups.google.com/forum/#!topic/microsoft.public.vc.language/AVnx-EnYdsY
and
https://www.xspdf.com/questions/22333.shtml
...

So instead we use another trick, that appears to be already in use in
the shell32.spec. Since the shlwapi functions are imported because we
link to it, this means that ShellMessageBoxWrapW() is already available
through this import. So we can specify it in the .spec file as is,
without a full name prefixed with "shlwapi." .
Therefore the associated shell32.ShellMessageBoxW function will instead
link to the small ShellMessageBoxWrapW() import stub that is generated
automatically.
2020-09-14 05:54:13 +02:00