Vector35 / binaryninja-api

Public API, examples, documentation and issues for Binary Ninja
https://binary.ninja/
MIT License
849 stars 194 forks source link

Binaryninja appears not to wait for plugins to load before launching and opening a file via some means other than its own UI #4694

Open 0cyn opened 9 months ago

0cyn commented 9 months ago

Version and Platform (required):

Bug Description: Binaryninja appears not to wait for plugins to load before launching and opening a file via some means other than its own UI.

Steps To Reproduce:

  1. Pin binaryninja to your dock, close it, then drag a file onto the icon

alternatively, my old workflow:

  1. open -a "BinaryNinja" ./somefilename

Witness no valid views showing up and the open with options window appearing before any other UI.

Expected Behavior: This is a regression from when views were in core and they would properly load in time. It will also break things for anyone's external plugins.

D0ntPanic commented 6 months ago

This is caused by the Enterprise client looking for URLs before any core initializations have occurred. If it gets a file open from a macOS style open event, this goes through that path and tries to open the file before the core is initialized.