Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Plat-11749] buggy cpp runtime #1643

Merged
merged 1 commit into from
Apr 2, 2024
Merged

Conversation

kstenerud
Copy link
Contributor

Goal

The C++ runtime is buggy on certain machines and can in rare cases return an invalid pointer to the C++ exception type information.

Design

Try copying the memory location to ensure that it is valid before attempting to call any methods on the object. If we can't get the type info, note that in the exception metadata.

Copy link

Bugsnag.framework binary size increased by 128 bytes from 713,264 to 713,392

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  +0.1%     +96  +0.1%     +96    String Table
  +0.0%     +56  +0.0%     +56    __TEXT,__text
  +0.3%     +47  +0.3%     +47    __TEXT,__cstring
  +0.0%     +32  +0.0%     +32    Symbol Table
  [ = ]       0  +0.2%     +16    __DATA,__bss
  -0.1%      -4  -0.1%      -4    __TEXT,__unwind_info
  [ = ]       0  -0.1%     -16    [__DATA]
  -0.5%     -99  -0.5%     -99    [__TEXT]
  [ = ]       0  -1.7%    -128    [__LINKEDIT]
  +0.0%    +128  [ = ]       0    TOTAL

Generated by 🚫 Danger

@kstenerud kstenerud merged commit dbec7c9 into next Apr 2, 2024
31 checks passed
@kstenerud kstenerud deleted the PLAT-11749-buggy-cpp-runtime branch April 2, 2024 06:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants