Fix message content kind detection

This commit is contained in:
Ilya Laktyushin 2022-01-29 01:49:22 +03:00
parent 171d1f1241
commit dc8a9f16a7

View File

@ -117,7 +117,8 @@ public func mediaContentKind(_ media: EngineMedia, message: EngineMessage? = nil
return .image return .image
case let .file(file): case let .file(file):
var fileName: String = "" var fileName: String = ""
var isAnimation = false
var result: MessageContentKind?
for attribute in file.attributes { for attribute in file.attributes {
switch attribute { switch attribute {
case let .Sticker(text, _, _): case let .Sticker(text, _, _):
@ -138,20 +139,20 @@ public func mediaContentKind(_ media: EngineMedia, message: EngineMessage? = nil
} }
case let .Video(_, _, flags): case let .Video(_, _, flags):
if file.isAnimated { if file.isAnimated {
isAnimation = true result = .animation
} else { } else {
if flags.contains(.instantRoundVideo) { if flags.contains(.instantRoundVideo) {
return .videoMessage result = .videoMessage
} else { } else {
return .video result = .video
} }
} }
default: default:
break break
} }
} }
if isAnimation { if let result = result {
return .animation return result
} }
if file.isVideoSticker || file.isAnimatedSticker { if file.isVideoSticker || file.isAnimatedSticker {
return .sticker("") return .sticker("")