microsoft / microsoft/CLRInstrumentationEngine

suggestion - remove __debugbreak()

Open
#188 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

suggestion task
Dominant language
C++
Stars
102
Forks
52
Avg merge
13h 11m
Merged PRs (30d)
6

Description

During debug sessions I have to hit g for go repeatedly, once for each LogError() until eventually I reach the access violation or whatever exception I really care about. Too many {g, Enter} keyboard strikes can cause the desired exception to be missed, since the repetition becomes mindless at times.
Alternatively, ifdef that code section.

if (IsDebuggerPresent())
    {
        try
        {
            __debugbreak();
        }
        // SEH Exceptions are sent through C++ handlers in the instrumentation engine.
        catch (...)
        {
        }
    }

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by searching the repository for __debugbreak() and the surrounding LogError() handling shown in the issue. Read how debugger detection and SEH exceptions are handled there, then check existing tests or debug-build instructions if available. Done means the repeated debugger breaks are removed or made optional without hiding the access violation or other exception the developer is investigating.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
devtools
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.