Author: svn-role
Date: Fri Dec 21 04:00:32 2012
New Revision: 1424798
URL: http://svn.apache.org/viewvc?rev=1424798&view=rev
Log:
Reintegrate the 1.6.x-r1387226 branch:
* r1387226
Fix issue #4231, mod_dav_svn asserts upon MKCOL within <Location />
Justification:
Server shouldn't crash. Also fixed for 1.7.x in 1.7.7.
Branch:
^/subversion/branches/1.6.x-r1387226
Votes:
+1: stsp, stefan2, philip
Modified:
subversion/branches/1.6.x/ (props changed)
subversion/branches/1.6.x/STATUS
subversion/branches/1.6.x/subversion/mod_dav_svn/repos.c
Propchange: subversion/branches/1.6.x/
------------------------------------------------------------------------------
Merged /subversion/branches/1.6.x-r1387226:r1399995-1424797
Merged /subversion/trunk:r1387226
Modified: subversion/branches/1.6.x/STATUS
URL:
http://svn.apache.org/viewvc/subversion/branches/1.6.x/STATUS?rev=1424798&r1=1424797&r2=1424798&view=diff
==============================================================================
--- subversion/branches/1.6.x/STATUS (original)
+++ subversion/branches/1.6.x/STATUS Fri Dec 21 04:00:32 2012
@@ -70,12 +70,3 @@ Veto-blocked changes:
Approved changes:
=================
-
- * r1387226
- Fix issue #4231, mod_dav_svn asserts upon MKCOL within <Location />
- Justification:
- Server shouldn't crash. Also fixed for 1.7.x in 1.7.7.
- Branch:
- ^/subversion/branches/1.6.x-r1387226
- Votes:
- +1: stsp, stefan2, philip
Modified: subversion/branches/1.6.x/subversion/mod_dav_svn/repos.c
URL:
http://svn.apache.org/viewvc/subversion/branches/1.6.x/subversion/mod_dav_svn/repos.c?rev=1424798&r1=1424797&r2=1424798&view=diff
==============================================================================
--- subversion/branches/1.6.x/subversion/mod_dav_svn/repos.c (original)
+++ subversion/branches/1.6.x/subversion/mod_dav_svn/repos.c Fri Dec 21
04:00:32 2012
@@ -885,8 +885,11 @@ create_private_resource(const dav_resour
comb->res.collection = TRUE; /* ### always true? */
/* versioned = baselined = working = FALSE */
- comb->res.uri = apr_pstrcat(base->pool, base->info->repos->root_path,
- path->data, NULL);
+ if (base->info->repos->root_path[1])
+ comb->res.uri = apr_pstrcat(base->pool, base->info->repos->root_path,
+ path->data, NULL);
+ else
+ comb->res.uri = path->data;
comb->res.info = &comb->priv;
comb->res.hooks = &dav_svn__hooks_repository;
comb->res.pool = base->pool;
@@ -1593,9 +1596,11 @@ parse_querystring(request_rec *r, const
only use a temporary redirect. */
apr_table_setn(r->headers_out, "Location",
ap_construct_url(r->pool,
- apr_psprintf(r->pool, "%s%s?p=%ld",
- comb->priv.repos->root_path,
- newpath, working_rev),
+ apr_psprintf(r->pool, "%s%s?p=%ld",
+ (comb->priv.repos->root_path[1]
+ ? comb->priv.repos->root_path
+ : ""),
+ newpath, working_rev),
r));
return dav_new_error(r->pool,
prevstr ? HTTP_MOVED_PERMANENTLY
@@ -3938,8 +3943,11 @@ dav_svn__create_working_resource(dav_res
res->baselined = base->baselined;
/* collection = FALSE. ### not necessarily correct */
- res->uri = apr_pstrcat(base->pool, base->info->repos->root_path,
- path, NULL);
+ if (base->info->repos->root_path[1])
+ res->uri = apr_pstrcat(base->pool, base->info->repos->root_path,
+ path, NULL);
+ else
+ res->uri = path;
res->hooks = &dav_svn__hooks_repository;
res->pool = base->pool;