Skip to content

[UE] Bug: IOS Shipping版本 MakeSharedJsEnv时有stdstring的报错 #2147

@yxd7822544

Description

@yxd7822544

前置阅读 | Pre-reading

Puer的版本 | Puer Version

master 1.0.9

UE的版本 | UE Version

5.4

发生在哪个平台 | Platform

iOS

错误信息 | Error Message

0 libsystem_kernel.dylib 0x1db9f3198 __pthread_kill + 8
1 libsystem_pthread.dylib 0x1eaf825f8 pthread_kill + 208
2 libsystem_c.dylib 0x1a703c4b8 abort + 124
3 libsystem_malloc.dylib 0x1ad9510b8 malloc_vreport + 904
4 libsystem_malloc.dylib 0x1ad951274 malloc_report + 60
5 libsystem_malloc.dylib 0x1ad94d788 find_zone_and_free + 292
6 libc++.1.dylib 0x1adaf5838 std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator>::__grow_by_and_replace(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, char const*) + 252
7 libc++.1.dylib 0x1adaf65cc std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator>::append(char const*, unsigned long) + 108
8 IdolClient 0x109613678 puerts::V8InspectorClientImpl::V8InspectorClientImpl(int, v8::Localv8::Context) + 73496184 (V8InspectorImpl.cpp:343)
9 IdolClient 0x1095dfab8 puerts::FJsEnvImpl::FJsEnvImpl(std::__1::shared_ptrpuerts::IJSModuleLoader, std::__1::shared_ptrpuerts::ILogger, int, std::__1::function<void (FString const&)>, FString, void*, void*) + 73284280 (JsEnvImpl.cpp:0)
10 IdolClient 0x1095dcbb0 std::__1::__unique_ifpuerts::FJsEnvImpl::__unique_single std::__1::make_unique[abi:ne190102]<puerts::FJsEnvImpl, std::__1::shared_ptrpuerts::IJSModuleLoader, std::__1::shared_ptrpuerts::ILogger&, int&, std::__1::function<void (FString const&)>&, FString const&, void*&, void*&>(std::__1::shared_ptrpuerts::IJSModuleLoader&&, std::__1::shared_ptrpuerts::ILogger&, int&, std::__1::function<void (FString const&)>&, FString const&, void*&, void*&) + 73272240 (unique_ptr.h:635)
11 IdolClient 0x1095dcd5c puerts::FJsEnv::FJsEnv(std::__1::shared_ptrpuerts::IJSModuleLoader, std::__1::shared_ptrpuerts::ILogger, int, std::__1::function<void (FString const&)>, FString, void*, void*) + 73272668 (JsEnv.cpp:22)
12 IdolClient 0x1096c115c SharedPointerInternals::TIntrusiveReferenceController<puerts::FJsEnv, (ESPMode)1>::TIntrusiveReferenceController<std::__1::shared_ptrpuerts::DefaultJSModuleLoader, std::__1::shared_ptrpuerts::FDefaultLogger, int const&>(std::__1::shared_ptrpuerts::DefaultJSModuleLoader&&, std::__1::shared_ptrpuerts::FDefaultLogger&&, int const&) + 74207580 (SharedPointerInternals.h:414)
13 IdolClient 0x1096c0180 FPuertsModule::MakeSharedJsEnv() + 74203520 (PuertsModule.cpp:227)
14 IdolClient 0x1096bf614 FPuertsModule::StartupModule() + 74200596 (PuertsModule.cpp:474)
15 IdolClient 0x106195998 FModuleManager::LoadModuleWithFailureReason(FName, EModuleLoadResult&, ELoadModuleFlags) + 18454936 (ModuleManager.cpp:552)
16 IdolClient 0x1061f0634 FModuleDescriptor::LoadModulesForPhase(ELoadingPhase::Type, TArray<FModuleDescriptor, TSizedDefaultAllocator<32>> const&, TMap<FName, EModuleLoadResult, FDefaultSetAllocator, TDefaultMapHashableKeyFuncs<FName, EModuleLoadResult, false>>&) + 18826804 (ModuleDescriptor.cpp:696)
17 IdolClient 0x10620258c FPluginManager::TryLoadModulesForPlugin(FPlugin const&, ELoadingPhase::Type) const + 18900364 (PluginManager.cpp:2766)
18 IdolClient 0x106204888 FPluginManager::LoadModulesForEnabledPlugins(ELoadingPhase::Type) + 18909320 (PluginManager.cpp:2903)
19 IdolClient 0x10931d90c FEngineLoop::Init() + 70392076 (LaunchEngineLoop.cpp:4907)
20 IdolClient 0x10931d1f4 FAppEntry::Init() + 70390260 (LaunchIOS.cpp:488)
21 IdolClient 0x10649b170 -[IOSAppDelegate MainAppThread:] + 21623152 (IOSAppDelegate.cpp:327)
22 Foundation 0x19a5a8a5c NSThread__start + 704
23 libsystem_pthread.dylib 0x1eaf780ec _pthread_start + 116
24 libsystem_pthread.dylib 0x1eaf7672c thread_start + 8

问题重现 | Bug reproduce

ios18.4版本 ios shipping下会有以上崩溃
定位是 V8InspectorClientImpl::V8InspectorClientImpl std字符拼接的问题

Image

修改为以下正常:

Image

Metadata

Metadata

Assignees

Labels

UnrealbugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions