From 77f7bcdd713831c8f4cb7c8ebd393712d25cd49d Mon Sep 17 00:00:00 2001 From: ragnarok-clanker Date: Sat, 31 Oct 2026 01:49:06 +0000 Subject: [PATCH] Decompile fn_11255 (UIChatHisBox::ClearNaviLinks) Batch #6745 by System4z: 0 byte-identical, 1 confirmed by peer review. - fn_11255 UIChatHisBox::ClearNaviLinks: logic confirmed by peer review Peer-reviewed-by: eAthena, KWDev Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes). --- Source/UI/Lists/UIChatHisBox.h | 1 + Source/UI/Lists/UIScrollBar.cpp | 12 ++++++++++++ 2 files changed, 13 insertions(+) diff --git a/Source/UI/Lists/UIChatHisBox.h b/Source/UI/Lists/UIChatHisBox.h index d985adc6..d5c4277b 100644 --- a/Source/UI/Lists/UIChatHisBox.h +++ b/Source/UI/Lists/UIChatHisBox.h @@ -26,6 +26,7 @@ public: void PlaceNaviLinks(int line); void DropOldestLines(); void ShiftNaviLinks(); + void ClearNaviLinks(); /* 00DC */ std::list> naviLinks; /* 00E4 */ std::vector unknown_00E4; diff --git a/Source/UI/Lists/UIScrollBar.cpp b/Source/UI/Lists/UIScrollBar.cpp index 8ec70c45..68043d87 100644 --- a/Source/UI/Lists/UIScrollBar.cpp +++ b/Source/UI/Lists/UIScrollBar.cpp @@ -889,3 +889,15 @@ void UIChatHisBox::ShiftNaviLinks() { row = this->naviLinks.erase(row); } } + +// OFFSET: 0x0087CA70 +// FUNCTION: fn_11255 +void UIChatHisBox::ClearNaviLinks() { + for (auto row = this->naviLinks.begin(); row != this->naviLinks.end();) { + for (UINaviLinkButton* button : *row) { + this->RemoveChild(button, 1); + } + std::vector().swap(*row); + row = this->naviLinks.erase(row); + } +}