fix copy destination name length, introduced in r3025
diff --git a/src/core/ngx_file.c b/src/core/ngx_file.c
index dff5226..eb340a2 100644
--- a/src/core/ngx_file.c
+++ b/src/core/ngx_file.c
@@ -605,12 +605,12 @@
cf.time = ext->time;
cf.log = ext->log;
- name = ngx_alloc(to->len + 1 + 10, ext->log);
+ name = ngx_alloc(to->len + 1 + 10 + 1, ext->log);
if (name == NULL) {
return NGX_ERROR;
}
- (void) ngx_sprintf(name, "%*s.%010uD%Z", to->len - 1, to->data,
+ (void) ngx_sprintf(name, "%*s.%010uD%Z", to->len, to->data,
(uint32_t) ngx_next_temp_number(0));
if (ngx_copy_file(src->data, name, &cf) == NGX_OK) {
diff --git a/src/http/modules/ngx_http_dav_module.c b/src/http/modules/ngx_http_dav_module.c
index 753387a..38e928c 100644
--- a/src/http/modules/ngx_http_dav_module.c
+++ b/src/http/modules/ngx_http_dav_module.c
@@ -214,6 +214,8 @@
ngx_http_map_uri_to_path(r, &path, &root, 0);
+ path.len--;
+
ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0,
"http put filename: \"%s\"", path.data);
diff --git a/src/http/ngx_http_upstream.c b/src/http/ngx_http_upstream.c
index a418eaa..b02caa6 100644
--- a/src/http/ngx_http_upstream.c
+++ b/src/http/ngx_http_upstream.c
@@ -2661,6 +2661,8 @@
}
}
+ path.len--;
+
ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0,
"upstream stores \"%s\" to \"%s\"",
tf->file.name.data, path.data);