I (Julian Foad) wrote:
> Philip Martin wrote:
> > "Bert Huijben" <[email protected]> writes:
> >
> > > This patch causes merge_authz_tests.py 1 "skipped paths get overriding
> > > mergeinfo" to fail on ra_serf. (See the svn-slik-w2k3-x64-ra
> > > buildbot).
> >
> > It also fails on Linux with serf.
>
> I'm looking into this now.
Fixed in r1163704 (plus fat-finger follow-ups r1163707 and r1163711).
static svn_error_t *
absent_file(const char *path,
void *parent_baton,
apr_pool_t *pool)
{
struct dir_baton *pb = parent_baton;
/* ### This 'join ... basename' works around an inconsistency whereby
* RA-serf gives PATH as just the basename instead of the full path. */
[...] svn_dirent_join(pb->path,
svn_relpath_basename(path, NULL),
pool) [...]
}
This restored a work-around for an inconsistency in RA-serf, which I
removed, having no idea that's what it was. Now I've added comments
explaining it.
The inconsistency is that when RA-serf calls
svn_delta_editor_t.absent_directory() or .absent_file() it passes 'path'
as a whole path (relative to the root of the edit drive?) whereas
RA-neon and RA-svn pass just the basename of the directory or file.
- Julian