From 3daf5ea89ba75967aed436fc9a7fa9a0732a3c2b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=CE=9ET=CE=9ERNAL?= Date: Tue, 7 Oct 2025 21:53:06 +0530 Subject: [PATCH] fix: OOM errors in mapper --- .../mapper/impl/FriendsFeedEventDispatcherMapper.kt | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/mapper/src/main/kotlin/me/rhunk/snapenhance/mapper/impl/FriendsFeedEventDispatcherMapper.kt b/mapper/src/main/kotlin/me/rhunk/snapenhance/mapper/impl/FriendsFeedEventDispatcherMapper.kt index 3bd45001..30e6cf46 100644 --- a/mapper/src/main/kotlin/me/rhunk/snapenhance/mapper/impl/FriendsFeedEventDispatcherMapper.kt +++ b/mapper/src/main/kotlin/me/rhunk/snapenhance/mapper/impl/FriendsFeedEventDispatcherMapper.kt @@ -11,19 +11,21 @@ class FriendsFeedEventDispatcherMapper : AbstractClassMapper("FriendsFeedEventDi init { mapper { - for (clazz in classes) { - if (clazz.methods.count { it.name == "onClickFeed" || it.name == "onItemLongPress" } != 2) continue + classes.asSequence().firstOrNull { clazz -> + if (clazz.methods.count { it.name == "onClickFeed" || it.name == "onItemLongPress" } != 2) { + return@firstOrNull false + } val onItemLongPress = clazz.methods.first { it.name == "onItemLongPress" } - val viewHolderContainerClass = getClass(onItemLongPress.parameterTypes[0]) ?: continue + val viewHolderContainerClass = getClass(onItemLongPress.parameterTypes[0]) ?: return@firstOrNull false val viewModelDexField = viewHolderContainerClass.fields.firstOrNull { field -> val typeClass = getClass(field.type) ?: return@firstOrNull false typeClass.methods.firstOrNull {it.name == "toString"}?.implementation?.findConstString("FriendFeedItemViewModel", contains = true) == true - }?.name ?: continue + }?.name ?: return@firstOrNull false classReference.set(clazz.getClassName()) viewModelField.set(viewModelDexField) - return@mapper + true } } }