Senthil,
I think your patch is not correct.
The cause of the failure is due to crawling on a *non-recurse* 'adm_access'.
Even though 'svn_wc_adm_probe_open3' has a argument by name 'depth' it
does not correspond to 'svn_depth_t' used in our depth related features.
In your patch you pass 'svn_depth_files' which is 1 to
'svn_wc_adm_probe_open3' and hence you get 'recursive' adm_access and
hence 'issue gets hidden' and you get a *false* success.
The approach to fix this issue and '--depth' behaviour to 'merge' itself,
1)Open recursive adm_access from 'svn_client_merge3' and
'svn_client_merge_peg3'
2)Pass that recursive adm_access to 'discover_and_merge_children' which
inturn pass it to 'get_mergeinfo_paths' where you need to correctly
respect the 'depth' functionality, Probably you can look at 'proplist
--depth' code.
3)Upon return from discover_and_merge_children, the adm_access should be
'depth dependent adm_access' via someother new 'outparam' to the
'discover_and_merge_children'.
With regards
Kamesh Jayachandran
Senthil Kumaran S wrote:
> Hi,
>
> I am attaching a patch which will fix XFail (merge_with_depth_files)
> test 62 in merge_tests.py. This fix will ensure that when we use --depth
> options such as empty, files, immediates and infinity along with 'svn
> merge', then merge performs correctly.
>
> [[[
> Fix XFail merge test - merge with depth files
>
> * subversion/libsvn_client/merge.c
> (get_mergeinfo_paths): Add depth argument to the function and based
> on the depth argument value walk through the WC.
> (discover_and_merge_children): Pass depth argument to
> get_mergeinfo_paths.
> (svn_client_merge_peg3): Pass the depth argument directly to
> svn_wc_adm_probe_open3.
> (svn_client_merge3): Pass the depth argument directly to
> svn_wc_adm_probe_open3.
>
> * subversion/tests/cmdline/merge_tests.py
> (test_list): Remove XFail tag from 'merge_with_depth_files'
> in test_list.
>
> Patch by: Senthil Kumaran <senthil@collab.net>
> ]]]
>
> Thank You.
>
> --
> Senthil Kumaran S
> http://www.stylesen.org/
>
> ------------------------------------------------------------------------
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: dev-help@subversion.tigris.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Aug 22 14:06:55 2007