[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Access Violation with 'svn status -u'

From: Philip Martin <philip.martin_at_wandisco.com>
Date: Tue, 10 Jan 2012 16:33:36 +0000

"Manfred Klug" <manklu_at_web.de> writes:

> svn st -u
> ==> Access Violation

Simplified recipe:

svnadmin create repo
svn import -mm repo/format file://$PWD/repo/A/f
svn co -r0 file://$PWD/repo wc
svn mkdir wc/A
svn st -u wc

That's obviously a bug. It's crashing in make_file_baton:

  f->repos_relpath = svn_relpath_join(find_dir_repos_relpath(pb, pool),
                                      f->name, pool);

when find_dir_repos_relpath returns NULL. We could set f->repos_relpath
to NULL, which matched what happens for the directory baton for A, but
is that correct? find_dir_repos_relpath is returning NULL because the
"obstructing" A is not versioned, although there is an A in the
repository. I'm not sure what repos_relpath is supposed to represent
here. Is it the repository path associated with the name in the
repository, or the repository path associated with the node in wc.db?

This is related to:

r1181609 | rhuijben | 2011-10-11 03:32:16 +0100 (Tue, 11 Oct 2011) | 14 lines

Revert the removal of the calculations of repository paths of remotely added
nodes in r953751, by reintroducing similar code using repository relative paths.

This should fix the javahl test failure recently introduced by markphip.

* subversion/libsvn_wc/status.c
  (dir_baton, file_baton): Add repos_relpath field.
  (tweak_statushash): Fill repos_relpath from baton if not already read from
    the working copy.
  (make_dir_baton, make_file_baton): Calculate and store repos_relpath.

Found by: markphip
          philip

-- 
uberSVN: Apache Subversion Made Easy
http://www.uberSVN.com
Received on 2012-01-10 17:34:19 CET

This is an archived mail posted to the Subversion Dev mailing list.