# HG changeset patch # User uau # Date 1208127847 0 # Node ID a7031923e4dc9ad33db365e4b52cde2701c4dca3 # Parent e988b302467ecbc3c56df985506c6fa9b2f46836 demux_asf: Fix operator precedence in packet length check Change (len & 3-1) to correct ((len & 3) - 1) in packet length check. Also change "a - 1 < b" to simpler "a <= b". diff -r e988b302467e -r a7031923e4dc libmpdemux/demux_asf.c --- a/libmpdemux/demux_asf.c Sun Apr 13 22:57:47 2008 +0000 +++ b/libmpdemux/demux_asf.c Sun Apr 13 23:04:07 2008 +0000 @@ -46,7 +46,7 @@ * \param len lowest 2 bits indicate number of bytes to read */ static inline int check_varlen(uint8_t *ptr, uint8_t *endptr, int len) { - return len&3 ? ptr + (1<<(len&3 - 1)) - 1 < endptr : 1; + return len&3 ? ptr + (1<<((len&3) - 1)) <= endptr : 1; } static void asf_descrambling(unsigned char **src,unsigned len, struct asf_priv* asf){