mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2026-09-28 17:11:11 -09:00
GP-5788: Add an action to forcibly close all transactions for a target (in case of back-end misbehavior)
This commit is contained in:
@@ -700,4 +700,15 @@ public interface Target {
|
||||
* @return true if busy
|
||||
*/
|
||||
boolean isBusy();
|
||||
|
||||
/**
|
||||
* Forcibly commit all of the back-ends transactions on this target's trace.
|
||||
*
|
||||
* <p>
|
||||
* This is generally not a recommended course of action, except that sometimes the back-end
|
||||
* crashes and fails to close a transaction. It should only be invoked by a relatively hidden
|
||||
* menu option, and mediated by a warning of some sort. Closing a transaction prematurely, when
|
||||
* the back-end actually <em>does</em> still need it may cause a host of other problems.
|
||||
*/
|
||||
void forciblyCloseTransactions();
|
||||
}
|
||||
|
||||
@@ -171,8 +171,19 @@ public interface TraceRmiConnection extends AutoCloseable {
|
||||
/**
|
||||
* Check if the given target has a transaction open
|
||||
*
|
||||
* @param target
|
||||
* @param target the target
|
||||
* @return true if busy
|
||||
*/
|
||||
boolean isBusy(Target target);
|
||||
|
||||
/**
|
||||
* Forcibly commit all transactions this connection has on the given trace
|
||||
*
|
||||
* <p>
|
||||
* This may cause undefined behavior in the back-end, especially if it still needs the
|
||||
* transaction.
|
||||
*
|
||||
* @param target the the target
|
||||
*/
|
||||
void forciblyCloseTransactions(Target target);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user