Make svnsync strip out any r0 mergeinfo references, for issue #4476
"Mergeinfo containing r0 makes svnsync and dump and load fail".

This means svnsync can succeed even when a mergeinfo property received from
the source repository references r0. Such mergeinfo cannot be committed to a
target repository whose server version is >= 1.6.18 for HTTP or >= 1.6.17
otherwise. This fix makes svnsync remove the r0 reference before trying to
commit.

* subversion/svnsync/sync.c
  (remove_r0_mergeinfo): New function.
  (edit_baton_t): Add a flag to report if mergeinfo was fixed.
  (change_file_prop,
   change_dir_prop): Strip r0 mergeinfo.
  (close_edit): Notify the user if any mergeinfo was adjusted in this
    revision, like we do if any property values were normalized.

* subversion/tests/cmdline/svnsync_tests_data/mergeinfo-contains-r0.dump,
  subversion/tests/cmdline/svnsync_tests_data/mergeinfo-contains-r0.expected.dump
  New test files.

* subversion/tests/cmdline/svnsync_tests.py
  (mergeinfo_contains_r0): New test.
  (test_list): Run it.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1646250 13f79535-47bb-0310-9956-ffa450edef68