This repository has been archived by the owner on Sep 28, 2018. It is now read-only.
Retain previously added breadcrumbs whenever a new breadcrumb is added #12
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This changeset avoids clearing all breadcrumbs everytime a new breadcrumb is added, by omitting a call to
bugsnag_event_clear_breadcrumbs
. Previously this method freed memory, then allocated new memory for each breadcrumb.Reducing this churn by retaining previously added values will partially address #10, which is caused by multiple threads attempting to free/allocate memory at the same time. I've found that running the reproduction case results in less frequent signals when this fix is applied.
One concern with this change is that we should be careful it hasn't introduced any memory leaks. I believe the
bugsnag_event_add_breadcrumb
method was freeing the required memory in the first place sobugsnag_event_clear_breadcrumbs
wasn't necessary, but it would be good to confirm this.