Commit graph

78211 commits

Author SHA1 Message Date
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
Serge Gautherie a04831677e
[PROGMAN][CRT][USER32] Do not use LoadLibraryEx() NT6+ flags (#3152)
CORE-12004
2020-09-13 23:42:09 +02:00
Kyle Katarn aad9bb8e8a
[TRANSLATION][SHELL32] Localization of "System Folder" in My Computer types (#3168)
Co-authored-by: Adam Stachowicz <saibamenppl@gmail.com>
Co-authored-by: JoseSanchezz <67137372+JoseSanchezz@users.noreply.github.com>
2020-09-13 23:16:19 +02:00
Jose Carlos Jesus b52189873d
[TRANSLATION][SCREENSAVERS][SYSSETUP] Add Portuguese (PT) translation (#3156) 2020-09-13 23:14:05 +02:00
Kyle Katarn f07ace6aa2
[RAPPS][CONSRV] French translation update (#3160)
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-09-13 23:12:52 +02:00
Kyle Katarn 6d4b853b8a
[SHELL32] Improve Format dialog debug log (trivial) (#3176)
- Logging of name for unknown filesystem.
- Fix some trace content as not only HDD could be affected.
2020-09-13 23:05:04 +02:00
Kyle Katarn 860a985f26
[FORMAT] Fix of output text overlap in console when finished (#3177)
At the end of the format operation, text in console got overwritten and leftovers from previous line remained displayed.
2020-09-13 23:02:09 +02:00
Kyle Katarn 51023e3a2e
[FORMAT] French translation fix (#3178)
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-09-13 23:01:07 +02:00
Hermès Bélusca-Maïto c58a601602
[CMD] Document the two extra file attributes the enhanced batch/FOR variables %~aX could handle on Windows >= 8.
They are currently specified for documentation purposes (i.e. what
Windows 8+ CMD.EXE can report) but not used yet, since ReactOS does not
support them.
2020-09-13 22:50:11 +02:00
Hermès Bélusca-Maïto 95466904db
[CMD] SHIFT: Use _istdigit(). 2020-09-13 22:50:10 +02:00
Hermès Bélusca-Maïto 00ce3c48fe
[CMD] Use pointers to const strings in error functions, where applicable. 2020-09-13 22:50:09 +02:00
Hermès Bélusca-Maïto 3f8f3a2bba
[CMD] Minor formatting only. 2020-09-13 22:50:09 +02:00
Hermès Bélusca-Maïto 14599b0a37
[SHELL32][SHLWAPI] Forward shell32.ShellMessageBoxW directly to shlwapi.ShellMessageBoxWrapW. (#3179)
This makes ShellMessageBoxW use the correct implementation where the
text buffer size is dynamic, instead of having a too small hardcoded
size.

Fixes CORE-17271.
See also PR #3172 by Kyle Katarn, supplemented with some ideas from
Mark Jansen.

However we cannot straightforwardly implement ShellMessageBoxA around
ShellMessageBoxW, by converting some parameters from ANSI to UNICODE,
because there may be some variadic ANSI strings, associated with '%s'
printf-like formatters inside the format string, that would also need
to be converted; however there is no way for us to find these and perform
the conversion ourselves.
Therefore, we re-implement ShellMessageBoxA by doing a copy-paste ANSI
adaptation of the shlwapi.ShellMessageBoxWrapW function.

Note that, on Vista+ onwards, shlwapi implements both ShellMessageBoxA/W,
and shell32 directly forwards these exports to shlwapi, thus avoiding
these workarounds.

[PSDK] Explicily use WINAPIV for the variadic ShellMessageBoxA/W functions.

[INCLUDE/REACTOS] Add ShellMessageBoxWrapW in shlwapi_undoc.h .
2020-09-13 22:44:58 +02:00