Re: svn commit: r39398 - trunk/subversion/libsvn_client
Greg Stein <[email protected]>
| Newsgroups | gmane.comp.version-control.subversion.rapidsvn.devel,gmane.comp.version-control.subversion.svn |
|---|---|
| Message-ID | <6cca3db30909171534n3c1122abp2dbd088453baca22__7242.23161018944$1253226899$gmane$org@mail.gmail.com> |
The rewrite doesn't appear to account for hidden nodes. On Sep 17, 2009 4:56 AM, "Bert Huijben" <[email protected]> wrote: Author: rhuijben Date: Thu Sep 17 07:49:15 2009 New Revision: 39398 Log: * subversion/libsvn_client/merge.c (get_mergeinfo_paths): Remove an access baton and call to svn_wc_entries_read() that were only used for retrieving a list of child nodes. Modified: trunk/subversion/libsvn_client/merge.c Modified: trunk/subversion/libsvn_client/merge.c URL: http://svn.collab.net/viewvc/svn/trunk/subversion/libsvn_client/merge.c?pathrev=39398&r1=39397&r2=39398 ============================================================================== --- trunk/subversion/libsvn_client/merge.c Thu Sep 17 07:44:22 2009 (r39397) +++ trunk/subversion/libsvn_client/merge.c Thu Sep 17 07:49:15 2009 (r39398) @@ -5433,35 +5433,30 @@ get_mergeinfo_paths(apr_array_header_t * if (child->has_noninheritable) { - apr_hash_t *entries; - apr_hash_index_t *hi; - svn_wc_adm_access_t *child_access; - SVN_ERR(svn_wc_adm_probe_try3( - &child_access, adm_access, - child->path, TRUE, -1, - merge_cmd_baton->ctx->cancel_func, - merge_cmd_baton->ctx->cancel_baton, - iterpool)); - SVN_ERR(svn_wc_entries_read(&entries, child_access, FALSE, - iterpool)); - for (hi = apr_hash_first(iterpool, entries); hi; - hi = apr_hash_next(hi)) + const apr_array_header_t *children; + const char *child_abspath; + int j; + + SVN_ERR(svn_dirent_get_absolute(&child_abspath, child->path, iterpool)); + + SVN_ERR(svn_wc__node_get_children(&children, + merge_cmd_baton->ctx->wc_ctx, + child_abspath, TRUE, iterpool, + iterpool)); + for (j = 0; j < children->nelts; j++) { - const char *name = svn_apr_hash_index_key(hi); + const char *child_abspath = APR_ARRAY_IDX(children, j, + const char*); + const char *name = svn_dirent_basename(child_abspath, NULL); svn_client__merge_path_t *child_of_noninheritable; const char *child_path; - const char *child_abspath; - if (strcmp(name, SVN_WC_ENTRY_THIS_DIR) == 0) - continue; /* Does this child already exist in CHILDREN_WITH_MERGEINFO? If not, create it and insert it into CHILDREN_WITH_MERGEINFO and set override mergeinfo on it. */ child_path = svn_dirent_join(child->path, name, iterpool); - SVN_ERR(svn_dirent_get_absolute(&child_abspath, child_path, - iterpool)); child_of_noninheritable = get_child_with_mergeinfo(children_with_mergeinfo, child_path); ------------------------------------------------------ http://subversion.tigris.org/ds/viewMessage.do?dsForumId=495&dsMessageId=2396036 ------------------------------------------------------ http://subversion.tigris.org/ds/viewMessage.do?dsForumId=495&dsMessageId=2396224