mirror of
https://github.com/rhunk/SnapEnhance.git
synced 2025-06-13 05:37:48 +02:00
fix(media_downloader): partial compat for story replies
This commit is contained in:
@ -464,7 +464,11 @@ class MediaDownloader : Feature("MediaDownloader", loadParams = FeatureLoadParam
|
|||||||
|
|
||||||
val messageReader = ProtoReader(messageContent)
|
val messageReader = ProtoReader(messageContent)
|
||||||
val urlProto: ByteArray = if (isArroyoMessage) {
|
val urlProto: ByteArray = if (isArroyoMessage) {
|
||||||
messageReader.getByteArray(*ARROYO_URL_KEY_PROTO_PATH)!!
|
var finalProto: ByteArray? = null
|
||||||
|
messageReader.readPath(4)?.each(5) {
|
||||||
|
finalProto = getByteArray(1, 3)
|
||||||
|
}
|
||||||
|
finalProto!!
|
||||||
} else {
|
} else {
|
||||||
deletedMediaReference!!
|
deletedMediaReference!!
|
||||||
}
|
}
|
||||||
|
@ -25,7 +25,17 @@ object MediaDownloaderHelper {
|
|||||||
return when (contentType) {
|
return when (contentType) {
|
||||||
ContentType.NOTE -> messageContainerPath.readPath(*mediaContainerPath)
|
ContentType.NOTE -> messageContainerPath.readPath(*mediaContainerPath)
|
||||||
ContentType.SNAP -> messageContainerPath.readPath(*(intArrayOf(11) + mediaContainerPath))
|
ContentType.SNAP -> messageContainerPath.readPath(*(intArrayOf(11) + mediaContainerPath))
|
||||||
ContentType.EXTERNAL_MEDIA -> messageContainerPath.readPath(*(intArrayOf(3, 3) + mediaContainerPath))
|
ContentType.EXTERNAL_MEDIA -> {
|
||||||
|
val externalMediaTypes = arrayOf(
|
||||||
|
intArrayOf(3, 3), //normal external media
|
||||||
|
intArrayOf(7, 12, 3), //attached story reply
|
||||||
|
intArrayOf(7, 3) //original story reply
|
||||||
|
)
|
||||||
|
externalMediaTypes.forEach { path ->
|
||||||
|
messageContainerPath.readPath(*(path + mediaContainerPath))?.also { return it }
|
||||||
|
}
|
||||||
|
null
|
||||||
|
}
|
||||||
else -> null
|
else -> null
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user