1. 11 Jun, 2019 1 commit
  2. 16 Apr, 2019 1 commit
    • Simon Zünd's avatar
      [stack-trace] Use ErrorStack accessor for formatted stack traces · c8206043
      Simon Zünd authored
      When a stack trace is captured, it is stored in a private symbol on
      the respective Error object. The first access to "Error.stack"  will
      then format the stack trace, with a possible call into user JS via
      the Error.prepareStackTrace callback.
      
      Until now, the accessor converted ".stack" to a normal data
      property containing the formatted stack trace. This causes a new Map
      with a new DescriptorArray to be created, which will not be shared
      with anything else (also not other error objects with formated
      stack traces).
      
      This CL changes the accessor to store the formatted stack trace in
      the same symbol (stack_trace_symbol) as the structured data. The
      result is that an error object will have the same Map before and
      after "Error.stack" is accessed.
      
      Bug: v8:9115
      Change-Id: I7d6bf49be76d63b57fbbaf904cc6ed7dbdbfb96b
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1564061
      Commit-Queue: Simon Zünd <szuend@chromium.org>
      Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
      Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#60865}
      c8206043