Skip to content

structuredClone preserves Error cause references and drops falsy causes #58206

Description

@OskarEichler

Description

The React Native structuredClone polyfill passes Error.cause through by reference instead of cloning it, and only copies the property when its value is truthy. Object causes therefore remain shared with the input; a circular cause points back to the original Error; and valid falsy causes such as false disappear.

Expected behavior

An own cause property should be cloned recursively, retain its non-enumerable Error property descriptor, preserve circular/shared identity within the clone, and keep falsy values. Node's native structuredClone follows this behavior.

React Native Version

0.87.1 and current main

Affected Platforms

JavaScript runtime - All

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Needs: Author FeedbackNeeds: ReproThis issue could be improved with a clear list of steps to reproduce the issue.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions