On Thu, 27 Oct 2005, Daniel Rall wrote:
...
> The error occurs because "." is passed to svn_wc_is_adm_dir(), which
> eventually triggers the is_canonical() assertion failure in
> svn_path_basename(). add_dir_recursive(), the caller of
> svn_wc_is_adm_dir(), contains code which filters out empty, parent,
> and "." paths, but that code isn't executed in time.
Turns out the call to svn_path_basename() from svn_wc_is_adm_dir() was
a local hack I had in my working copy which was requested by the
Subclipse folks (I didn't see any comments on the patch when I last
posted it to list, but could've missed them). Any objections to me
committing both patches? I do have some concern that the previously
super-thin svn_wc_is_adm_dir() routines becomes heavier because of
this change. Thoughts?
Index: subversion/libsvn_wc/adm_files.c
===================================================================
--- subversion/libsvn_wc/adm_files.c (revision 17065)
+++ subversion/libsvn_wc/adm_files.c (working copy)
@@ -57,7 +57,7 @@
svn_boolean_t
svn_wc_is_adm_dir (const char *name, apr_pool_t *pool)
{
- (void)pool; /* Silence compiler warnings about unused parameter. */
+ name = svn_path_basename (name, pool);
return (0 == strcmp (name, adm_dir_name)
|| 0 == strcmp (name, default_adm_dir_name));
}
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Fri Oct 28 02:13:43 2005