- 28 May, 2020 40 commits
-
-
Paul Gofman authored
Signed-off-by: Paul Gofman <pgofman@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Paul Gofman authored
Signed-off-by: Paul Gofman <pgofman@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Martin Storsjo authored
If the handlers returned ExceptionContinueExecution and we restore the stored context, make sure it's a context that ends up returning from the RtlRaiseException function. This matches how it's done on x86_64. Signed-off-by: Martin Storsjo <martin@martin.st> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Martin Storsjo authored
Signed-off-by: Martin Storsjo <martin@martin.st> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Martin Storsjo authored
Some language specific handlers, called by call_handler, can use the NonVolatileRegisters to restore the context before running code, and that assumes that NonVolatileRegisters contains the frame pointer as it was within the function (before unwinding). Signed-off-by: Martin Storsjo <martin@martin.st> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Martin Storsjo authored
Call the consolidate frame callback before resuming. Before calling the callback, fill in ExceptionInformation[10] with the equivalent of dispatch.NonVolatileRegisters. This fixes unwinding of MSVC C++ exceptions in a lot of cases. Signed-off-by: Martin Storsjo <martin@martin.st> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Martin Storsjo authored
It has already been unconditionally enabled for macOS (which uses clang). Signed-off-by: Martin Storsjo <martin@martin.st> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Martin Storsjo authored
This happens with functions that aren't intended to return e.g. like _Unwind_Resume. In these cases, the return address is outside of the function (the first instruction in the next function). Set the flag CONTEXT_UNWOUND_TO_CALL after unwinding to a callsite, and if this flag is set, look up a RUNTIME_FUNCTION based on Control.Pc - 4. This isn't a complete (nor probably entirely correct) implementation of the flag CONTEXT_UNWOUND_TO_CALL, but it practically seems to work fine and fixes a large number of unwinding cases. Signed-off-by: Martin Storsjo <martin@martin.st> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Martin Storsjo authored
In most cases, unwinding will use the frame pointer anyway, so it doesn't make much of a difference, but for cases where it won't, capture the actual stack pointer. (In most cases on arm64, calling the RtlCaptureContext won't cause anything extra to be pushed on the stack at that point anyway). Signed-off-by: Martin Storsjo <martin@martin.st> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Martin Storsjo authored
This matches what was done for RtlUnwindEx in 93ecc54a, applying the same change in call_function_handlers (when called from raise_exception). Signed-off-by: Martin Storsjo <martin@martin.st> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Martin Storsjo authored
restore_regs and restore_fpregs take offsets in units of registers, not bytes. Signed-off-by: Martin Storsjo <martin@martin.st> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Martin Storsjo authored
The register offset should be multiplied by 2, and the second register is always Lr. Signed-off-by: Martin Storsjo <martin@martin.st> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Martin Storsjo authored
On aarch64-linux-gnu, unwind tables aren't emitted by default (contrary to x86_64-linux-gnu), so we must pass the flag (or -funwind-tables) to the compiler to make it generate them. Previously wine just added the flag to the linker options. Signed-off-by: Martin Storsjo <martin@martin.st> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Jacek Caban authored
Fixes -Wabsolute-value warning. Signed-off-by: Jacek Caban <jacek@codeweavers.com> Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Paul Gofman authored
Signed-off-by: Paul Gofman <pgofman@codeweavers.com> Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Paul Gofman authored
Signed-off-by: Paul Gofman <pgofman@codeweavers.com> Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Paul Gofman authored
Like the other blitters. When the GLSL blitter was introduced, the idea was that caller would be responsible for doing this, but we never ended up updating the other blitters. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49251Signed-off-by: Paul Gofman <pgofman@codeweavers.com> Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Paul Gofman authored
Signed-off-by: Paul Gofman <pgofman@codeweavers.com> Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Zhiyi Zhang authored
MonitorFromWindow() may return a different monitor if switching to a smaller display mode. Fix Railroad Tycoon II crashes. Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com> Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Nikolay Sivov authored
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Nikolay Sivov authored
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Nikolay Sivov authored
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Nikolay Sivov authored
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Nikolay Sivov authored
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Nikolay Sivov authored
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Nikolay Sivov authored
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Nikolay Sivov authored
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Nikolay Sivov authored
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Nikolay Sivov authored
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Nikolay Sivov authored
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Brendan Shanks authored
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com> Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com> Signed-off-by: Ken Thomases <ken@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Brendan Shanks authored
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com> Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com> Signed-off-by: Ken Thomases <ken@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Brendan Shanks authored
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com> Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Brendan Shanks authored
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com> Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Alex Henrie authored
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Gijs Vermeulen authored
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Gijs Vermeulen authored
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Serge Gautherie authored
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Serge Gautherie authored
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-
Jacek Caban authored
Signed-off-by: Jacek Caban <jacek@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
-