Fix issue #1896, 'Directory not empty' errors when removing a committed transaction under libsvn_fs_fs on Mac OS X.
Fix issue #1896, 'Directory not empty' errors when removing a committed
transaction under libsvn_fs_fs on Mac OS X.

* subversion/libsvn_subr/io.c
  (MACOSX_READDIR_HACK): New macro.  On Mac OS X expands to an apr_dir_rewind, 
   since the rewind keeps us from triggering a bug that makes us skip entries
   in the directory when removing entries in the directory while calling 
   readdir in a loop if the directory has 338 or more files in it.  On other 
   platforms this is a no-op.
  (svn_io_remove_dir): Insert calls to MACOSX_READDIR_HACK after we remove 
   entries from the directory.


git-svn-id: f8a4e5e023278da1e04e203c7fe051e3c4285d88@849982 13f79535-47bb-0310-9956-ffa450edef68

YueLinHo/Subversion,YueLinHo/Subversion,wbond/subversion,wbond/subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,wbond/subversion,YueLinHo/Subversion,wbond/subversion,YueLinHo/Subversion,wbond/subversion,wbond/subversion,wbond/subversion