Checkout
Julian Foad
committed
on 25 Jun
Fix issue #4859 "Merge removing a folder with non-inheritable mergeinfo ->
E155023: can't set properties: invalid status for updating proper… Show more
Fix issue #4859 "Merge removing a folder with non-inheritable mergeinfo ->

E155023: can't set properties: invalid status for updating properties".

The code was attempting to set mergeinfo on a path that is being deleted by

the merge.  This happened only in certain unusual cases such as when

deleting a folder that had non-inheritable mergeinfo and had children.

This patch fixes the problem by removing the 'children_with_mergeinfo'

entries for sub-paths of a deleted folder.

* subversion/libsvn_client/merge.c

 (merge_cmd_baton_t): Allow modifying 'children_with_mergeinfo'.

 (record_update_delete): Remove from 'children_with_mergeinfo' all paths

   in the subtree.

* subversion/tests/cmdline/merge_tests.py

 (merge_deleted_folder_with_mergeinfo): Remove 'XFail'.

 (merge_deleted_folder_with_mergeinfo_2): New test.

 (test_list): Add the new test.

Show less