feat: add cache_dir header for external crash reporters#1698
feat: add cache_dir header for external crash reporters#1698
cache_dir header for external crash reporters#1698Conversation
|
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit b6943ef. Configure here.
| } else { | ||
| SENTRY_WARN("failed to add cache_dir to external crash report"); | ||
| } | ||
| } |
There was a problem hiding this comment.
Corrupted envelope sent after failed materialization
Medium Severity
When sentry__envelope_materialize fails, the envelope is left in a corrupted state — is_raw has been set to false, the raw payload has been freed, and the structured fields are only partially populated. Despite this, the code only logs a warning about the missing cache_dir header and proceeds to send the corrupted envelope via sentry__transport_send_envelope on the next line. This results in a corrupt or empty crash report being written to disk and handed to the external crash reporter, effectively losing the crash data. The failure path needs to avoid sending the corrupted envelope (or avoid the destructive materialization altogether).
Reviewed by Cursor Bugbot for commit b6943ef. Configure here.
External crash reporters only receive the envelope path, so include the cache directory in envelope headers when cache_keep is enabled. This lets capable reporters cache related files without changing the one-argument protocol. Fixes GH-1688 Co-Authored-By: OpenAI Codex <noreply@openai.com>
b6943ef to
2cab8cd
Compare


External crash reporters only receive the envelope path, so include the cache directory in envelope headers when
cache_keepis enabled. This lets capable reporters cache related files without changing the single-argument CLI protocol.See also: