diff --git a/Sources/App/CapServer.swift b/Sources/App/CapServer.swift index 7532c0d..f583c33 100644 --- a/Sources/App/CapServer.swift +++ b/Sources/App/CapServer.swift @@ -170,10 +170,15 @@ final class CapServer { throw CapError.unknownId } var id = 0 + let capFolder = folder(of: cap) var f = file(of: cap, version: id) - while fm.fileExists(atPath: f.path) { - id += 1 - f = file(of: cap, version: id) + if fm.fileExists(atPath: capFolder.path) { + while fm.fileExists(atPath: f.path) { + id += 1 + f = file(of: cap, version: id) + } + } else { + try fm.createDirectory(at: capFolder, withIntermediateDirectories: true) } try data.write(to: f) caps[cap]!.count = try count(of: cap)