On Tue, Jun 30, 2009 at 07:02, Hyrum K. Wright<hyrum_at_hyrumwright.org> wrote:
>...
> +++ trunk/subversion/libsvn_wc/status.c Mon Jun 29 22:02:58 2009 Â Â Â Â (r38259)
>...
> @@ -628,11 +632,11 @@ collect_ignore_patterns(apr_array_header
> Â Â }
>
> Â /* Then add any svn:ignore globs to the PATTERNS array. */
> - Â SVN_ERR(svn_wc_prop_get(&value, SVN_PROP_IGNORE,
> - Â Â Â Â Â Â Â Â Â Â Â Â Â svn_wc_adm_access_path(adm_access), adm_access,
> - Â Â Â Â Â Â Â Â Â Â Â Â Â pool));
> + Â SVN_ERR(svn_wc__internal_propget(&value, SVN_PROP_IGNORE, local_abspath, db,
> + Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â result_pool, scratch_pool));
Hmm. Just noticed the db/abspath pair is reversed on this function.
Also: you can fetch that into scratch_pool, since you're splitting
into the result_pool.
>...
> @@ -852,14 +856,18 @@ get_dir_status(struct edit_baton *eb,
> Â {
> Â apr_hash_t *entries;
> Â apr_hash_index_t *hi;
> + Â svn_wc__db_t *db = svn_wc__adm_get_db(adm_access);
> Â const svn_wc_entry_t *dir_entry;
> Â const char *path = svn_wc_adm_access_path(adm_access);
> + Â const char *local_abspath;
> Â apr_hash_t *dirents;
> Â apr_array_header_t *patterns = NULL;
> Â apr_pool_t *iterpool, *subpool = svn_pool_create(pool);
> Â apr_array_header_t *tree_conflicts;
> Â int j;
>
> + Â SVN_ERR(svn_dirent_get_absolute(&local_abspath, path, pool));
or: local_abspath = svn_wc__adm_access_abspath(adm_access);
always there. no extra memory, time, or I/O needed.
>...
> @@ -2358,16 +2368,19 @@ svn_wc_dup_status2(const svn_wc_status2_
> Â return new_stat;
> Â }
>
> -
> Â svn_error_t *
> -svn_wc_get_ignores(apr_array_header_t **patterns,
> - Â Â Â Â Â Â Â Â Â apr_hash_t *config,
> - Â Â Â Â Â Â Â Â Â svn_wc_adm_access_t *adm_access,
> - Â Â Â Â Â Â Â Â Â apr_pool_t *pool)
> +svn_wc_get_ignores2(apr_array_header_t **patterns,
> + Â Â Â Â Â Â Â Â Â Â svn_wc_context_t *wc_ctx,
> + Â Â Â Â Â Â Â Â Â Â const char *local_abspath,
> + Â Â Â Â Â Â Â Â Â Â apr_hash_t *config,
> + Â Â Â Â Â Â Â Â Â Â apr_pool_t *result_pool,
> + Â Â Â Â Â Â Â Â Â Â apr_pool_t *scratch_pool)
> Â {
> Â apr_array_header_t *default_ignores;
>
> - Â SVN_ERR(svn_wc_get_default_ignores(&default_ignores, config, pool));
> - Â return collect_ignore_patterns(patterns, default_ignores, adm_access,
> - Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â pool);
> + Â SVN_ERR(svn_wc_get_default_ignores(&default_ignores, config, scratch_pool));
> + Â return svn_error_return(collect_ignore_patterns(patterns, wc_ctx->db,
> + Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â local_abspath,
> + Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â default_ignores,
> + Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â result_pool, scratch_pool));
> Â }
>
> ------------------------------------------------------
> http://subversion.tigris.org/ds/viewMessage.do?dsForumId=495&dsMessageId=2366607
>
------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2381375
Received on 2009-08-07 18:46:15 CEST