In the libsvn_client merge code, assume that we only drive merges between urls with the repos-repos diff handler. This allows removing all the pointer != NULL checks for the state output arguments as we know this driver always provides these.
In the libsvn_client merge code, assume that we only drive merges between urls with
the repos-repos diff handler. This allows removing all the pointer != NULL checks
for the state output arguments as we know this driver always provides these.

The entire merge drive requires that skips and obstructions are handled via these
output arguments, so this just formalizes what has been assumed since 1.0.

* subversion/libsvn_client/merge.c
  (merge_dir_props_changed,
   merge_file_changed,
   merge_file_added,
   merge_file_deleted,
   merge_dir_added,
   merge_dir_deleted,
   merge_dir_opened): Assume that the skip, skip_children, tree_conflicted,
       state, content_state and prop_state output arguments are always ! NULL.
       Remove a few resets to the normal value.

  (do_file_merge): Set sane default values, to remove assumption that these
    values are always set by all callbacks.


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

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