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

Re: Segfault in mod_dav_svn with repositories on /

From: Philip Martin <philip_at_codematters.co.uk>
Date: Fri, 10 Jan 2014 12:25:38 +0000

Philip Martin <philip.martin_at_wandisco.com> writes:

> "Bert Huijben" <bert_at_qqmail.nl> writes:
>
>> Your segfault should be properly fixed with r1557094, but we should probably
>> also run some tests on a repository that is at the server root (instead of
>> only a parent path).
>
> It is not fixed. If you look a few lines down we pass a NULL path:
>
> apr_text_append(resource->pool, option,
> dav_svn__build_uri(resource->info->repos,
> DAV_SVN__BUILD_URI_ACT_COLLECTION,
> SVN_INVALID_REVNUM, NULL,
> 1 /* add_href */,
> resource->pool));
>
> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 0x7f318b7fe700 (LWP 21796)]
> 0x00007f319a42a391 in dav_svn__build_uri (repos=0x7f3196f682b0,
> what=DAV_SVN__BUILD_URI_ACT_COLLECTION, revision=-1, path=0x0, add_href=1,
> pool=0x7f3196f6c028) at ../src/subversion/mod_dav_svn/util.c:244
> 244 if (root_path[0] == '/' && root_path[1] == '\0')
> (gdb) p root_path
> $1 = 0x0
> (gdb) up
> #1 0x00007f319a42bc2f in get_option (resource=0x7f3196f68330,
> elem=0x7f3196f68728, option=0x7f318b7fdb00)
> at ../src/subversion/mod_dav_svn/version.c:188
> 188 apr_text_append(resource->pool, option,

I misread the code it's not the path in the argument list but the path
in the dav_svn_repos struct:

(gdb) p repos[0]
$1 = {pool = 0x7f3196f66028, root_path = 0x0,
  base_url = 0x7f3196f64418 "http://localhost:8885",
  special_uri = 0x7f319a430692 "!svn", fs_path = 0x0, repo_name = 0x0,
  repo_basename = 0x0, xslt_uri = 0x0, autoversioning = 0,
  bulk_updates = CONF_BULKUPD_ON, v2_protocol = 1, repos = 0x0, fs = 0x0,
  username = 0x0, is_svn_client = 0, client_capabilities = 0x7f3196f64430,
  activities_db = 0x0}

-- 
Philip
Received on 2014-01-10 13:26:12 CET

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