(IsBadWritePtr isn't the fastest thing in the world...)
Just looked at the implementation - it does at most (buflen-1)/pagesize+1 memory-references, and since buflen will be MAX_PATH in most cases this just costs us the calling-overhead - which is worth the increased readability.
-flx