1. 28 May, 2019 1 commit
    • Paolo Severini's avatar
      Fixing a possible freeze on abort with 'v8_win64_unwinding_info' · 3a75c1fb
      Paolo Severini authored
      Win64 unwind data can specify a language-specific handler function which is
      called as part of the search for an exception handler, as described in
      https://docs.microsoft.com/en-us/cpp/build/exception-handling-x64?view=vs-2019.
      This is used for example by Crashpad to register its own exception handler for
      exceptions in V8-generated code.
      There is a problem in the code that may cause a freeze on abort: in file
      \deps\v8\src\unwinding-info-win64.cc in function CRASH_HANDLER_FUNCTION_NAME the
      line:
          return EXCEPTION_CONTINUE_SEARCH;
      should be
          return ExceptionContinueSearch;
      
      These constants are both used in the context of Win32 exception handlers, but
      they have different semantics and unfortunately different values:
      EXCEPTION_CONTINUE_SEARCH (=0) should be returned by an exception filter
      while a language-specific handler should return an EXCEPTION_DISPOSITION value,
      and more precisely ExceptionContinueSearch (=1) in this case.
      
      Bug: v8:9295
      Change-Id: I1a3aaabf357e52a909611814f1ea013cf652ae06
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1629795Reviewed-by: 's avatarJakob Kummerow <jkummerow@chromium.org>
      Commit-Queue: Paolo Severini <paolosev@microsoft.com>
      Cr-Commit-Position: refs/heads/master@{#61867}
      3a75c1fb
  2. 27 May, 2019 35 commits
  3. 25 May, 2019 1 commit
  4. 24 May, 2019 3 commits