Vector35 / Vector35/binaryninja-api
Make databases depend on workflows/plugins that were previously used in analysis
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 1.3k
- Forks
- 298
- Avg merge
- 5d 5h
- Merged PRs (30d)
- 19
Description
Version and Platform (required):
- Binary Ninja Version: 3.1
- OS: *
- OS Version: *
- CPU Architecture: *
Steps To Reproduce:
Please provide all steps required to reproduce the behavior:
- Enable objc plugin, restart
- Set the workflow to the objc one, disable the objc plugin, restart again
- Open any binary without modifying the default workflow
Linear Analysis will be entirely broken with only a line in the error log vaguely indicating what went wrong.
Settings UI will still indicate that the workflow is available until you un-select it and restart again.
Screenshots:

Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the objc plugin and workflow sequence described in the issue, then inspect how workflow selection is persisted and how Linear Analysis and the Settings UI handle a disabled plugin. Trace the database dependency checks around those entry points. Done means opening a binary cannot silently leave analysis broken or show an unavailable workflow as selected.
Written by the indexing model from the issue text.
Assessment
- Domain
- reverse-engineering, tooling
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100