mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-07-21 02:31:10 +00:00
Fix tempFile
This commit is contained in:
parent
0d4394fdbb
commit
b8a6f7d091
@ -23,6 +23,7 @@ private final class TempBoxFileContext {
|
||||
private struct TempBoxKey: Equatable, Hashable {
|
||||
let path: String?
|
||||
let fileName: String
|
||||
let uniqueId: Int?
|
||||
}
|
||||
|
||||
public final class TempBoxFile {
|
||||
@ -42,7 +43,7 @@ private final class TempBoxContexts {
|
||||
private var contexts: [TempBoxKey: TempBoxFileContext] = [:]
|
||||
|
||||
func file(basePath: String, path: String, fileName: String) -> TempBoxFile {
|
||||
let key = TempBoxKey(path: path, fileName: fileName)
|
||||
let key = TempBoxKey(path: path, fileName: fileName, uniqueId: nil)
|
||||
let context: TempBoxFileContext
|
||||
if let current = self.contexts[key] {
|
||||
context = current
|
||||
@ -68,13 +69,12 @@ private final class TempBoxContexts {
|
||||
}
|
||||
|
||||
func tempFile(basePath: String, fileName: String) -> TempBoxFile {
|
||||
let key = TempBoxKey(path: nil, fileName: fileName)
|
||||
let context: TempBoxFileContext
|
||||
if let current = self.contexts[key] {
|
||||
context = current
|
||||
} else {
|
||||
let id = self.nextId
|
||||
self.nextId += 1
|
||||
|
||||
let key = TempBoxKey(path: nil, fileName: fileName, uniqueId: id)
|
||||
let context: TempBoxFileContext
|
||||
|
||||
let dirName = "\(id)"
|
||||
let dirPath = basePath + "/" + dirName
|
||||
var cleanName = fileName
|
||||
@ -85,9 +85,7 @@ private final class TempBoxContexts {
|
||||
context = TempBoxFileContext(directory: dirPath, fileName: cleanName)
|
||||
self.contexts[key] = context
|
||||
let _ = try? FileManager.default.createDirectory(atPath: dirPath, withIntermediateDirectories: true, attributes: nil)
|
||||
}
|
||||
let id = self.nextId
|
||||
self.nextId += 1
|
||||
|
||||
context.subscribers.insert(id)
|
||||
return TempBoxFile(key: key, id: id, path: context.path)
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user