Conversation
IanHollow
marked this pull request as ready for review
September 24, 2026 19:15
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
When another process is already handling a crash report, Crashpad correctly treats that report as busy. It also logs a
File existserror for the expected lock conflict. That message can make a normal handoff look like a crash report failure and hide errors that need attention.This change suppresses the message for the expected lock conflict. Other file errors still produce a log message.
Evidence
The existing code returns a busy result when opening a report lock fails because the lock already exists. Its logging helper prints an error before the code handles that expected result. The one location changed here keeps the busy result and only removes that premature log. A downstream Linux behavior test passed for pending and completed report contention and confirmed that a real permission error still logs.
Validation
A Linux behavior test covered two processes trying to use the same pending or completed report. It confirmed that the reports and locks stayed intact and that a real permission error still produced a diagnostic. The exact PR head also built with upstream CMake and Ninja. That build registers no CTest tests, so the separate behavior test is the direct check of this change.
OpenAI Codex (GPT-6) helped prepare and test this change. The contributor reviewed it.