diff options
Diffstat (limited to 'http-push.c')
| -rw-r--r-- | http-push.c | 12 | 
1 files changed, 10 insertions, 2 deletions
diff --git a/http-push.c b/http-push.c index 565e580d5a..bfa1fe7c05 100644 --- a/http-push.c +++ b/http-push.c @@ -1116,8 +1116,16 @@ static void handle_remote_ls_ctx(struct xml_ctx *ctx, int tag_closed)  				}  			}  			if (path) { -				path += repo->path_len; -				ls->dentry_name = xstrdup(path); +				const char *url = repo->url; +				if (repo->path) +					url = repo->path; +				if (strncmp(path, url, repo->path_len)) +					error("Parsed path '%s' does not match url: '%s'\n", +					      path, url); +				else { +					path += repo->path_len; +					ls->dentry_name = xstrdup(path); +				}  			}  		} else if (!strcmp(ctx->name, DAV_PROPFIND_COLLECTION)) {  			ls->dentry_flags |= IS_DIR;  | 
