mirror of
https://github.com/haveno-dex/haveno.git
synced 2024-10-01 01:35:48 -04:00
release lock processing offers before callback
This commit is contained in:
parent
76f8f85487
commit
2e57e6197d
@ -863,8 +863,8 @@ public class OpenOfferManager implements PeerManager.Listener, DecryptedDirectMe
|
||||
TransactionResultHandler resultHandler, // TODO (woodser): transaction not needed with result handler
|
||||
ErrorMessageHandler errorMessageHandler) {
|
||||
ThreadUtils.execute(() -> {
|
||||
List<String> errorMessages = new ArrayList<String>();
|
||||
synchronized (processOffersLock) {
|
||||
List<String> errorMessages = new ArrayList<String>();
|
||||
List<OpenOffer> openOffers = getOpenOffers();
|
||||
for (OpenOffer pendingOffer : openOffers) {
|
||||
if (pendingOffer.getState() != OpenOffer.State.PENDING) continue;
|
||||
@ -887,12 +887,12 @@ public class OpenOfferManager implements PeerManager.Listener, DecryptedDirectMe
|
||||
});
|
||||
HavenoUtils.awaitLatch(latch);
|
||||
}
|
||||
requestPersistence();
|
||||
if (errorMessages.isEmpty()) {
|
||||
if (resultHandler != null) resultHandler.handleResult(null);
|
||||
} else {
|
||||
if (errorMessageHandler != null) errorMessageHandler.handleErrorMessage(errorMessages.toString());
|
||||
}
|
||||
}
|
||||
requestPersistence();
|
||||
if (errorMessages.isEmpty()) {
|
||||
if (resultHandler != null) resultHandler.handleResult(null);
|
||||
} else {
|
||||
if (errorMessageHandler != null) errorMessageHandler.handleErrorMessage(errorMessages.toString());
|
||||
}
|
||||
}, THREAD_ID);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user