diff --git a/memcheck/mc_replace_strmem.c b/memcheck/mc_replace_strmem.c index cbe1ad8b9..7c52e94e3 100644 --- a/memcheck/mc_replace_strmem.c +++ b/memcheck/mc_replace_strmem.c @@ -47,12 +47,8 @@ static __inline__ Bool is_overlap ( void* dst, const void* src, UInt len ) { - Int diff = src-dst; - - if (diff < 0) - diff = -diff; - /* Now we have diff >= 0, so a cast to UInt is harmless. */ - return ( ((UInt)diff) < len); + UInt diff = src > dst ? src-dst : dst-src; + return (diff < len); } static __inline__