Be more cautious with rounding in applyOffer.

This commit is contained in:
Arthur Britto
2013-01-27 11:51:17 -08:00
parent d978f59402
commit 1cbe6be1bd

View File

@@ -1078,7 +1078,7 @@ bool STAmount::applyOffer(
// Offer has limited funding, limit offer gets and pays by funds available.
saOfferPaysAvailable = saOfferFundsAvailable;
saOfferGetsAvailable = multiply(saOfferPaysAvailable, saOfferRate, saOfferGets);
saOfferGetsAvailable = std::min(saOfferGets, multiply(saOfferPaysAvailable, saOfferRate, saOfferGets));
}
cLog(lsINFO) << "applyOffer: saOfferPaysAvailable=" << saOfferFundsAvailable.getFullText();