summary refs log tree commit diff stats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/pure/ftpclient.nim5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/pure/ftpclient.nim b/lib/pure/ftpclient.nim
index 65c1bfefb..26ce879b6 100644
--- a/lib/pure/ftpclient.nim
+++ b/lib/pure/ftpclient.nim
@@ -222,9 +222,12 @@ proc createDir*(ftp: var TFTPClient, dir: string, recursive: bool = false) =
     assertReply ftp.send("MKD " & dir), "257"
   else:
     var reply = TaintedString""
+    var previousDirs = ""
     for p in split(dir, {os.dirSep, os.altSep}):
       if p != "":
-        reply = ftp.send("MKD " & p)
+        previousDirs.add(p)
+        reply = ftp.send("MKD " & previousDirs)
+        previousDirs.add('/')
     assertReply reply, "257"
 
 proc list*(ftp: var TFTPClient, dir: string = "", async = false): string =