Separate pool lifetime of the repository diff handler batons from the ra layer pools.
Separate pool lifetime of the repository diff handler batons from the
ra layer pools.

* subversion/libsvn_client/repos_diff.c
  (includes): Add assert.h.

  (dir_baton): Rename parent baton variable. Add user count.
  (file_baton): Add parent baton reference.

  (make_dir_baton): Store data in dir pool. Rename argument.
  (make_file_baton): Store parent baton handle. Use parent baton for
    obtaining edit baton.

  (release_dir): New function,

  (open_root): Create root baton in editor pool.

  (diff_deleted_file): Pass parent baton.
  (diff_deleted_dir): Create dir baton. Pass baton.

  (delete_entry): Update caller.

  (add_directory,
   open_directory): Store baton in parent baton pool.

  (add_file,
   open_file): Store baton in parent pool.

  (close_file,
   close_directory): Release baton via release_dir.


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

YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion