Confirm 5 functions in Source/Contents/Actors/ActorPickNode.cpp, Source/Contents/Emblems/EmblemDataUploadAsyncWork.cpp, ...

Batch #17208 by eAthena: 4 byte-identical, 1 confirmed by peer review.

- fn_03631 UINavigationV4Wnd::LoadRoute: byte-identical (already on main)
- fn_10693 UIEditCtrl3::~UIEditCtrl3: byte-identical (already on main)
- fn_10715 UIEditCtrl3::`scalar deleting destructor': byte-identical (already on main)
- fn_16930 UIWindow::CreateItemTagButton: logic confirmed by peer review (already on main)
- fn_21631 CGameMode::ReceivePlayerNameUpdate: byte-identical (already on main)

Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
This commit is contained in:
ragnarok-clanker 2026-11-11 14:52:37 +00:00
commit 7ea84b3b37
14 changed files with 30 additions and 0 deletions

View file

@ -16,6 +16,8 @@
#include <string>
#include "Utility/StdStringCompare.h"
extern template std::string::basic_string(const std::string&);
// OFFSET: 0x00AD9530
// FUNCTION: fn_17878
std::uint32_t MovementRouteInterpolation::Duration() const {

View file

@ -11,6 +11,8 @@
#include <windows.h>
#include <timeapi.h>
extern template std::string& std::string::assign(const char*, std::string::size_type);
namespace {
constexpr char sourceFile[] = "C:\\repositories\\RagnarokClient\\RagnarokClient\\Contents\\Emblem\\CEmblemDataUploadAsyncWork.cpp";

View file

@ -11,6 +11,8 @@
#include <windows.h>
#include <timeapi.h>
extern template std::string& std::string::assign(const char*, std::string::size_type);
namespace {
constexpr char sourceFile[] = "C:\\repositories\\RagnarokClient\\RagnarokClient\\Contents\\AdventurerAgency\\CLoadPartyInfoAsyncWork.cpp";

View file

@ -11,6 +11,8 @@
#include <windows.h>
#include <timeapi.h>
extern template std::string& std::string::assign(const char*, std::string::size_type);
namespace {
constexpr char sourceFile[] = "C:\\repositories\\RagnarokClient\\RagnarokClient\\Contents\\AdventurerAgency\\CLoadPartyLIstAsyncWork.cpp";

View file

@ -11,6 +11,8 @@
#include <windows.h>
#include <timeapi.h>
extern template std::string& std::string::assign(const char*, std::string::size_type);
namespace {
constexpr char sourceFile[] = "C:"
"\\repositories\\RagnarokClient\\RagnarokClient\\Contents\\AccountLinkedUserData\\CAcco"

View file

@ -11,6 +11,8 @@
#include <windows.h>
#include <timeapi.h>
extern template std::string& std::string::assign(const char*, std::string::size_type);
namespace {
constexpr char sourceFile[] = "C:"
"\\repositories\\RagnarokClient\\RagnarokClient\\Contents\\CharacterLinkedUserData\\CCh"

View file

@ -11,6 +11,8 @@
#include <windows.h>
#include <timeapi.h>
extern template std::string& std::string::assign(const char*, std::string::size_type);
namespace {
constexpr char sourceFile[] = "C:"
"\\repositories\\RagnarokClient\\RagnarokClient\\Contents\\CharacterLinkedUserData\\CCh"

View file

@ -10,6 +10,8 @@
#include <cstdio>
#include <string>
extern template std::string::basic_string(const std::string&);
// OFFSET: 0x00D1DFB0
// FUNCTION: fn_21632
void CGameMode::ReceiveActorNameAll(const ActorNameAllPacket* packet) {

View file

@ -1,5 +1,7 @@
#include "Render/Device/RenderBackends.h"
extern template std::string& std::string::assign(const char*, std::string::size_type);
// OFFSET: 0x0056A2A0
// FUNCTION: fn_02289
std::vector<RenderBackend> EnumerateRenderBackends() {

View file

@ -5,6 +5,8 @@
#include "UI/Navigation/NavigationLink.h"
#include "UI/Text/TextFitting.h"
extern template std::string::basic_string(const std::string&);
// OFFSET: 0x00861AB0
// FUNCTION: fn_10902
void UIEditCtrl3::UpdateScrollBar() {

View file

@ -1195,6 +1195,9 @@ UIShowAndEditTimeCtrl::UIShowAndEditTimeCtrl() : UIWindow(0) {
#include "UI/Edit/UIItemTagCtrl.h"
#include "UI/Edit/UIEditPaint.inl"
extern template void std::vector<unsigned int>::_Tidy() noexcept;
extern template std::size_t std::_Traits_find<std::char_traits<char>>(const char* const, const std::size_t, const std::size_t, const char* const, const std::size_t) noexcept;
// OFFSET: 0x0085C4F0
// FUNCTION: fn_10801
void UIChatEditCtrl::Paint() {

View file

@ -33,6 +33,8 @@
#include "Resource/MSGSTRINGID.h"
#include <timeapi.h>
extern template std::size_t std::_Traits_find<std::char_traits<char>>(const char* const, const std::size_t, const std::size_t, const char* const, const std::size_t) noexcept;
extern template std::string::basic_string(std::_String_constructor_concat_tag, const std::string&, const char*, std::size_t, const char*, std::size_t);
namespace {

View file

@ -14,6 +14,8 @@
#include "UI/Window/WindowBorder.h"
#include "UI/Text/UIStaticText.h"
extern template std::string& std::string::operator=(std::string&&) noexcept;
// OFFSET: 0x0085ACE0
// FUNCTION: fn_10788
void UIMerchantShopTitle::OnCreate(int, int) {

View file

@ -85,6 +85,9 @@
#include <windows.h>
#include <timeapi.h>
extern template bool std::_Traits_equal<std::char_traits<char>>(const char*, std::size_t, const char*, std::size_t) noexcept;
extern template std::vector<std::string>::~vector();
namespace {
struct NavigationTargetLook {
/* 0000 */ int job;