Teach symmetric merge to reject all the scenarios that 'reintegrate' rejected, when merging in the 'reintegrate' direction.  In particular, it now rejects the merge if any revision in the common ancestry of the two branches is not recorded as merged to the source branch.  This makes merge_symmetric_tests.py 10 pass, because the merge now emits the expected error about such an unmerged revision.
Teach symmetric merge to reject all the scenarios that 'reintegrate'
rejected, when merging in the 'reintegrate' direction.  In particular, it
now rejects the merge if any revision in the common ancestry of the two
branches is not recorded as merged to the source branch.  This makes
merge_symmetric_tests.py 10 pass, because the merge now emits the
expected error about such an unmerged revision.

This implementation is somewhat inefficient in that it duplicates some
mergeinfo fetching and other work that has already been done;
improvements will follow.

* subversion/libsvn_client/merge.c
  (do_symmetric_merge_locked): Run the 'find_reintegrate_merge' subroutine
    to check for and reject unsupported reintegrate scenarios.

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

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