++ Bugfixes:
+ 2011-10-13: Simon Goldschmidt
+ * def.h, timers.c: fixed bug #34541: LWIP_U32_DIFF is unnecessarily complex
+
2011-10-13: Simon Goldschmidt
* sockets.c, api_lib.c: fixed bug #34540: compiler error when CORE_LOCKING is
used and not all protocols are enabled
now = sys_now();
/* this cares for wraparounds */
- diff = LWIP_U32_DIFF(now, timeouts_last_time);
+ diff = now - timeouts_last_time;
do
{
#if PBUF_POOL_FREE_OOSEQ
#define NULL ((void *)0)
#endif
-/** Get the absolute difference between 2 u32_t values (correcting overflows)
- * 'a' is expected to be 'higher' (without overflow) than 'b'. */
-#define LWIP_U32_DIFF(a, b) (((a) >= (b)) ? ((a) - (b)) : (((a) + ((b) ^ 0xFFFFFFFF) + 1)))
-
/* Endianess-optimized shifting of two u8_t to create one u16_t */
#if BYTE_ORDER == LITTLE_ENDIAN
#define LWIP_MAKE_U16(a, b) ((a << 8) | b)