Skip to content

Fixed general bugs#1026

Open
3rdit wants to merge 1 commit intoVector35:devfrom
3rdit:fix/general-fixes
Open

Fixed general bugs#1026
3rdit wants to merge 1 commit intoVector35:devfrom
3rdit:fix/general-fixes

Conversation

@3rdit
Copy link
Contributor

@3rdit 3rdit commented Mar 20, 2026

Took some time to explore the codebase a bit and cleaned up a few issues I found.

  1. detach() called BNDebuggerQuit instead of BNDebuggerDetach
  2. pid_attach setter was broken and didn't use the correct decorator (was a copy-paste of the port setter stuff), likewise with the doc for it.
  3. get_addr_info wasn't usable due to the fact a plain int was passed where the FFI expected a 64-byte buffer
  4. __hash__ used (pid, pid) instead of (pid, name) which never matched the __eq__
  5. SuspendThread/ResumeThread never persisted freeze state, GetAllThreads() returns by value, so m_isFrozen was set on a local copy
  6. DetachAndWait/QuitAndWait leaked mutex on early return due to m_targetControlMutex staying locked if IsConnected() returned false
  7. RunTo sent duplicated stop events to the UI, NotifyStopped is called in both *Internal and *AndWait, unlike any other operation
  8. DbgEngTTDAdapter::Start() didn't return false, so may cause it to fall through - this is now fixed.
  9. In GDB, substr(4) would have corrupted the monitor command, now it's substr(8).
  10. Initialise m_parentItem pointer to avoid possible garbage read (unlikely but also just consistency)

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.

1 participant