diff --git a/client.go b/client.go
index <HASH>..<HASH> 100644
--- a/client.go
+++ b/client.go
@@ -1891,7 +1891,7 @@ func (c *Client) RecursivePushFile(container string, source string, target strin
 			appendLen--
 		}
 
-		targetPath := path.Join(target, p[appendLen:])
+		targetPath := path.Join(target, filepath.ToSlash(p[appendLen:]))
 		if fInfo.IsDir() {
 			mode, uid, gid := shared.GetOwnerMode(fInfo)
 			return c.Mkdir(container, targetPath, mode, uid, gid)
Fix recursive file push on Windows

filepath.Walk() sends filenames with backslashes there