From ca74503c2853281bb5eb6ed61babfa2a0e57920b Mon Sep 17 00:00:00 2001 From: Peter Date: Mon, 6 Mar 2017 01:16:00 +0300 Subject: [PATCH] no message --- TelegramCore/ChatContextResult.swift | 2 +- TelegramCore/CloudFileMediaResource.swift | 2 +- TelegramCore/Fetch.swift | 2 +- TelegramCore/MultipartFetch.swift | 10 ++++++++-- .../OutgoingMessageWithChatContextResult.swift | 2 +- 5 files changed, 12 insertions(+), 6 deletions(-) diff --git a/TelegramCore/ChatContextResult.swift b/TelegramCore/ChatContextResult.swift index 830b9da467..47ceffbb86 100644 --- a/TelegramCore/ChatContextResult.swift +++ b/TelegramCore/ChatContextResult.swift @@ -374,7 +374,7 @@ extension ChatContextResult { dimensions = CGSize(width: CGFloat(w), height: CGFloat(h)) } self = .externalReference(id: id, type: type, title: title, description: description, url: url, thumbnailUrl: thumbUrl, contentUrl: contentUrl, contentType: contentType, dimensions: dimensions, duration: duration, message: ChatContextResultMessage(apiMessage: sendMessage)) - case let .botInlineMediaResult(flags, id, type, photo, document, title, description, sendMessage): + case let .botInlineMediaResult(_, id, type, photo, document, title, description, sendMessage): var image: TelegramMediaImage? var file: TelegramMediaFile? if let photo = photo, let parsedImage = telegramMediaImageFromApiPhoto(photo) { diff --git a/TelegramCore/CloudFileMediaResource.swift b/TelegramCore/CloudFileMediaResource.swift index 8e13a111c2..495ed18c8c 100644 --- a/TelegramCore/CloudFileMediaResource.swift +++ b/TelegramCore/CloudFileMediaResource.swift @@ -494,7 +494,7 @@ public struct SecretFileMediaResource: TelegramCloudMediaResource { public struct EmptyMediaResourceId: MediaResourceId { public var uniqueId: String { - return "empty" + return "empty-resource" } public var hashValue: Int { diff --git a/TelegramCore/Fetch.swift b/TelegramCore/Fetch.swift index 02eda11e0c..db1fd89d97 100644 --- a/TelegramCore/Fetch.swift +++ b/TelegramCore/Fetch.swift @@ -71,7 +71,7 @@ private func fetchLocalFileResource(path: String) -> Signal) -> Signal { if let _ = resource as? EmptyMediaResource { - return .single(MediaResourceDataFetchResult(data: Data(), complete: false)) + return .never() } else if let secretFileResource = resource as? SecretFileMediaResource { return .single(MediaResourceDataFetchResult(data: Data(), complete: false)) |> then(fetchSecretFileResource(account: account, resource: secretFileResource, range: range)) } else if let cloudResource = resource as? TelegramCloudMediaResource { diff --git a/TelegramCore/MultipartFetch.swift b/TelegramCore/MultipartFetch.swift index 040ce30c0c..35e3b6e5ef 100644 --- a/TelegramCore/MultipartFetch.swift +++ b/TelegramCore/MultipartFetch.swift @@ -79,8 +79,14 @@ private final class MultipartFetchManager { init(size: Int?, range: Range, encryptionKey: SecretFileEncryptionKey?, decryptedSize: Int32?, fetchPart: @escaping (Int, Int) -> Signal, partReady: @escaping (Data) -> Void, completed: @escaping () -> Void) { self.completeSize = size if let size = size { - self.range = range.lowerBound ..< min(range.upperBound, size) - self.parallelParts = 4 + if size <= range.lowerBound { + //assertionFailure() + self.range = range + self.parallelParts = 0 + } else { + self.range = range.lowerBound ..< min(range.upperBound, size) + self.parallelParts = 4 + } } else { self.range = range self.parallelParts = 1 diff --git a/TelegramCore/OutgoingMessageWithChatContextResult.swift b/TelegramCore/OutgoingMessageWithChatContextResult.swift index 10442318c3..dfae67e4b6 100644 --- a/TelegramCore/OutgoingMessageWithChatContextResult.swift +++ b/TelegramCore/OutgoingMessageWithChatContextResult.swift @@ -142,7 +142,7 @@ public func outgoingMessageWithChatContextResult(_ results: ChatContextResultCol arc4random_buf(&randomId, 8) let thumbnailResource = HttpReferenceMediaResource(url: thumbnailUrl, size: nil) let imageDimensions = dimensions ?? CGSize(width: 128.0, height: 128.0) - let tmpImage = TelegramMediaImage(imageId: MediaId(namespace: Namespaces.Media.LocalImage, id: randomId), representations: [TelegramMediaImageRepresentation(dimensions: aspectFitSize(imageDimensions, to: CGSize(width: 90.0, height: 90.0)), resource: thumbnailResource), TelegramMediaImageRepresentation(dimensions: imageDimensions, resource: EmptyMediaResource())]) + let tmpImage = TelegramMediaImage(imageId: MediaId(namespace: Namespaces.Media.LocalImage, id: randomId), representations: [TelegramMediaImageRepresentation(dimensions: aspectFitSize(imageDimensions, to: CGSize(width: 90.0, height: 90.0)), resource: thumbnailResource)]) return .message(text: caption, attributes: attributes, media: tmpImage, replyToMessageId: nil) } else { return .message(text: caption, attributes: attributes, media: nil, replyToMessageId: nil)