From c32938fa43ef7ab538465e5eeade924b23776e6c Mon Sep 17 00:00:00 2001 From: Jacob Evans Date: Wed, 15 Nov 2017 16:20:39 -0500 Subject: Shortcut if everything satisfies in the non dependent use case --- packages/0x.js/src/utils/order_state_utils.ts | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'packages/0x.js/src/utils') diff --git a/packages/0x.js/src/utils/order_state_utils.ts b/packages/0x.js/src/utils/order_state_utils.ts index 69e749952..d1b2feb43 100644 --- a/packages/0x.js/src/utils/order_state_utils.ts +++ b/packages/0x.js/src/utils/order_state_utils.ts @@ -110,7 +110,13 @@ export class OrderStateUtils { if (makerFee.isZero()) { return BigNumber.min(makerTransferrable, remainingMakerAmount); } + if (makerFeeTransferrable.greaterThanOrEqualTo(makerFee) && + makerTransferrable.greaterThanOrEqualTo(remainingMakerAmount) && + makerTokenAddress !== zrxTokenAddress) { + return BigNumber.min(makerTransferrable, remainingMakerAmount); + } const orderToFeeRatio = totalMakerAmount.dividedToIntegerBy(makerFee); + console.log('order to fee ratio: ', orderToFeeRatio.toString()); let fillableTimesInMakerToken = makerTransferrable.dividedToIntegerBy(orderToFeeRatio); const fillableTimesInFeeToken = BigNumber.min(makerFeeTransferrable, remainingMakerFee); if (makerTokenAddress === zrxTokenAddress) { -- cgit v1.2.3