@@ -47,17 +47,17 @@ library PolyswapOrder {
4747 * @param self The PolyswapOrder order to validate
4848 */
4949 function validate (Data memory self , Trading polymarket ) internal view {
50- if (! ( self.sellToken != self.buyToken) ) revert IConditionalOrder.OrderNotValid (INVALID_SAME_TOKEN);
51- if (! ( address (self.sellToken) != address (0 ) && address (self.buyToken) != address (0 ) )) {
50+ if (self.sellToken == self.buyToken) revert IConditionalOrder.OrderNotValid (INVALID_SAME_TOKEN);
51+ if (address (self.sellToken) == address (0 ) || address (self.buyToken) == address (0 )) {
5252 revert IConditionalOrder.OrderNotValid (INVALID_TOKEN);
5353 }
54- if (! ( self.t0 < type ( uint32 ).max) ) revert IConditionalOrder.OrderNotValid (INVALID_START_DATE);
55- if (! ( self.t > self.t0 && self.t < type ( uint32 ).max) ) revert IConditionalOrder.OrderNotValid (INVALID_END_DATE);
56- if (! ( self.sellAmount > 0 ) ) revert IConditionalOrder.OrderNotValid (INVALID_SELL_AMOUNT);
57- if (! ( self.minBuyAmount > 0 ) ) revert IConditionalOrder.OrderNotValid (INVALID_MIN_BUY_AMOUNT);
54+ if (self.t0 > block . timestamp ) revert IConditionalOrder.OrderNotValid (INVALID_START_DATE);
55+ if (self.t <= self.t0 || self.t < block . timestamp ) revert IConditionalOrder.OrderNotValid (INVALID_END_DATE);
56+ if (self.sellAmount < 0 ) revert IConditionalOrder.OrderNotValid (INVALID_SELL_AMOUNT);
57+ if (self.minBuyAmount < 0 ) revert IConditionalOrder.OrderNotValid (INVALID_MIN_BUY_AMOUNT);
5858
5959 // Check if the Polymarket order is valid and not filled or cancelled.
60- if (! ( self.polymarketOrderHash != 0 ) ) revert IConditionalOrder.OrderNotValid (INVALID_POLYMARKET_ORDER_HASH);
60+ if (self.polymarketOrderHash == 0 ) revert IConditionalOrder.OrderNotValid (INVALID_POLYMARKET_ORDER_HASH);
6161 OrderStatus memory order = polymarket.getOrderStatus (self.polymarketOrderHash);
6262 if (order.remaining == 0 && order.isFilledOrCancelled == false ) {
6363 revert IConditionalOrder.OrderNotValid (INVALID_POLYMARKET_ORDER_HASH);
@@ -81,7 +81,7 @@ library PolyswapOrder {
8181 buyAmount: self.minBuyAmount,
8282 validTo: self.t.toUint32 (),
8383 appData: self.appData,
84- feeAmount: 0 ,
84+ feeAmount: 0 , // TODO we should allow for some fees
8585 kind: GPv2Order.KIND_SELL,
8686 partiallyFillable: false ,
8787 sellTokenBalance: GPv2Order.BALANCE_ERC20,
0 commit comments