Fix ensureParent method to correctly construct MKCOL URLs for empty paths
This commit is contained in:
@@ -55,7 +55,12 @@ func (c *WebDAVClient) ensureParent(ctx context.Context, remotePath string) erro
|
|||||||
cur := c.basePrefix
|
cur := c.basePrefix
|
||||||
for _, p := range parts {
|
for _, p := range parts {
|
||||||
cur = path.Join(cur, p)
|
cur = path.Join(cur, p)
|
||||||
mkurl := fmt.Sprintf("%s%s", c.baseURL, cur)
|
var mkurl string
|
||||||
|
if cur == "" || cur == "/" {
|
||||||
|
mkurl = fmt.Sprintf("%s/%s", c.baseURL, url.PathEscape(p))
|
||||||
|
} else {
|
||||||
|
mkurl = fmt.Sprintf("%s%s", c.baseURL, cur)
|
||||||
|
}
|
||||||
req, _ := http.NewRequestWithContext(ctx, "MKCOL", mkurl, nil)
|
req, _ := http.NewRequestWithContext(ctx, "MKCOL", mkurl, nil)
|
||||||
if c.user != "" {
|
if c.user != "" {
|
||||||
req.SetBasicAuth(c.user, c.pass)
|
req.SetBasicAuth(c.user, c.pass)
|
||||||
|
|||||||
Reference in New Issue
Block a user