| Age | Commit message (Collapse) | Author |
|
|
|
|
|
The down and enter keys now preserve an existing selection in the
associated list or table views, rather than unconditionally selecting or
activating the first item.
|
|
by default
The table views previously visually suggested they were being sorted by
address, but in practice they were not sorted until the user set an
explicit sort order by clicking on a column header.
|
|
These calls set the rpaths used for release builds of the dylibs using a
macro that isn't available in the API repository. They are not necessary
when building the shared cache plug-in outside of the context of the
app.
|
|
C++ plug-ins now consistently use the `plugin_rpath` or
`ui_plugin_rpath` macros to ensure they have `SKIP_BUILD_RPATH` set when
building on Mac (i.e., no `LC_RPATH` is added).
Rust plug-ins have their build.rs updated to only specify `-Wl,-rpath`
when building for Linux. It is not needed on macOS. On macOS we instead
explicitly specify an `@rpath`-relative install name. This doesn't
change any behavior, but avoids leaving an absolute path as the
library's install name and is consistent with CMake's behavior for C++
plug-ins.
|
|
This ensures that CMake detects when files that match the glob are added
or removed.
|
|
|
|
Avoid copying the vector of symbols where possible. When no filter
string is applied we no longer copy the entire vector symbols by having
the symbols used for display be indirected via a pointer. It points
either to the unfiltered symbols or the filtered symbols.
Some unncessary copies have been removed by using `std::move` where
appropriate.
Filtering has been updated to avoid `std::vector::reserve` /
`std::vector::shrink_to_fit` in favor of letting the filtered vector
control its own growth and reuse its buffer. This avoids allocating a
~100MB buffer every time we update the filter only to later reallocate
and move the contents into a smaller buffer. Instead the buffer grows
via `std::vector`'s usual growth algorithm and it is preserved across
filter calls to avoid unnecessarily reallocating it, and only shrink the
buffer if it has shrunk significantly vs previous iterations.
|
|
This is enabled as is, there might need to be some restrictions later on, does not seem to have an unreasonable impact analysis time
|
|
|
|
Also update minimum CMake version.
|
|
|
|
This disables the filter for already added images, there is another check when we go to apply so that it fails early but the real issue is the fact this happened at all.
Within the Objective-C processor there is a call to `BeginUndoActions` which calls `ExecuteOnMainThreadAndWait`, while the objective-c processor is holding the lock to the controller.
To fix this we really need to make the undo action system not call `ExecuteOnMainThreadAndWait` which is deadlock city, to do that really the only solution is to make the `UndoBuffer` thread-safe and remove the calls to execute undo related stuff on the main thread, this will make it so that when a call to `BeginUndoActions` there is no requirement to wait on pending undo actions as they are all submitted immediately.
|
|
added in the background through the UI
We set some model data after the fact that didn't exist because the qt object was destructed on tab close.
|
|
Simple change that means an image's dependencies can be loaded via the DSC triage view whether the primary image has already been loaded or not. Sometimes I've already loaded an image and then later on decide I want to load its dependencies. Currently there is no easy way to do that in the UI.
|
|
|
|
|
|
Required adding an API to determine if an image is loaded.
|
|
|
|
1. Crash on kernel cache image load
2. Duplicate Load Image buttons in kernel cache view
3. Improper selection behavior in both views
4. Address column should no longer resize to be smaller than contents
5. Symbol tables should now be properly sortable
|
|
Allows us to display the user friendly name of the cache entry in the triage view
|
|
One day, these will share more code, but today is not quite that day.
|
|
Slight reimplementation of PR #6517 since the PR was from before our
refactor.
|
|
- Fix the inconsistent column sizing
- Stop trying to show cross reference at 0
|
|
Also addresses some lints that I thought were possibly worth it.
|
|
|
|
|
|
|
|
|
|
rows
Before this we would load all images between the end and beginning because the model is does not have a filter proxy, but just hides the rows instead, we should move to a proxy
|
|
Any update to the model should only happen on the UI thread now. This also fixes the other issue here: https://github.com/Vector35/binaryninja-api/issues/6300
|
|
|
|
In absence of a better name, this commit refactors the shared cache code.
|
|
|
|
|
|
|
|
editable
|
|
issue, dont prompt on loading from symbol, auto-navigate to symbol when clicked, loading first if required
|
|
|
|
Using `-t install` currently doesn't install the plugin into the Binary Ninja user plugin directory. This commit fixes that.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
robust system for out-of-date databases
|
|
|