Search Issue Tracker

Fixed in 2019.3.X

Votes

0

Found in

2018.2.0a1

2018.2.5f1

Issue ID

1115638

Regression

No

[iOS] [Support] Crash on UnityPreload Thread in Unpack5554Colour

iOS

-

How to reproduce:
1. Download the project "sniper2_game__case.zip" from the link down below
2. Got to Project Settings-> Editor and in “Version Control” section changed “Mode” from "Perforce" to "Visible Meta Files"
3. Comment out the content of `InstallProvisioning` in `Assets/Technology/Build/Builder/Editor/XCode/ProvisioningUtility.cs`.
4. Comment out the middle of `InitVersion` in `Assets/Systems/DynamicContent/Editor/Build/AssetBundleBuilderPreprocessor.cs` and edit the last line to hardcode a changeset and branch name rather than retrieving them from Perforce. i.e. `ArmoryVersion.Save((int) coreSettings.Major, (int) coreSettings.Minor, 0, "unitytest");`
5. In the minibar go to "Armory" -> "Build Window", then in the window itself select iOS platform and press "Set"
6. Then press build
7. Open the XCode project, switch it to automatic signing and sign it with your personal or Unity team. Adjust the Bundle Identifier as needed.
8. After launch, tap screen with 4 fingers, uncheck ‘FTUE Active’ and press ‘Reset Game’
9. Re-launch the build in the XCode
10. Select Contracts > Select bottom left contract > Select Weapon > Start Contract
--There should be a crash in `Unpack5554Colour()`. Looks related to Terrain.

Reproduction:
iPhone 8 Plus, iOS version 12.0 (16A366), Model MQ8N2ET/A
iPad 6th gen, iOS version 11.4.1 (15G77), Model MR7F2KN/A
- 2018.2.5f1, successfully reproduced
- 2018.2.21f, successfully reproduced

2018.3, 2019.1, 2019.2:
- After iOS QA team's tests, it looks like after 2018.2 there are some API changes that the auto updater didn't catch. The project just won't be compatible with newer versions without some changes.

Notes: For more additional information on this you should visit the slack channel (mentioned in the edit field below)

Stack trace:
* thread #38, name = ‘UnityPreload’, stop reason = EXC_BAD_ACCESS (code=1, address=0x7ffc)
* frame #0: 0x000000010563ce80 **`::Unpack5554Colour() at TextureDecompression.cpp:537 [opt]
frame #1: 0x0000000105639a30 **`::DecompressNativeTextureFormat() [inlined] DecompressPVRTC<false, true> at TextureDecompression.cpp:1080 [opt]
frame #2: 0x0000000105639a18 **`::DecompressNativeTextureFormat() at TextureDecompression.cpp:1303 [opt]
frame #3: 0x000000010563a938 **`::ExtractImage() [inlined] DecompressNativeTextureFormatWithMipLevel at TextureDecompression.cpp:1247 [opt]
frame #4: 0x000000010563a920 **`::ExtractImage() at SharedTextureData.h:197 [opt]
frame #5: 0x0000000105630df0 **`::ExtractImageInternal() [inlined] ExtractImage at SharedTextureData.h:78 [opt]
frame #6: 0x0000000105630dec **`::ExtractImageInternal() at Texture2D.cpp:439 [opt]
frame #7: 0x000000010559bf34 **`::PackTextureAtlas() [inlined] ExtractImage at Texture.h:298 [opt]
frame #8: 0x000000010559bf18 **`::PackTextureAtlas() at TextureAtlas.cpp:737 [opt]
frame #9: 0x000000010559acf4 **`::PackTextureAtlasSimple() at TextureAtlas.cpp:418 [opt]
frame #10: 0x0000000105d16cb0 **`::GenerateTextureAtlasThreaded() at DetailDatabase.cpp:420 [opt]
frame #11: 0x00000001059b3334 **`::PostReadActivationQueue() at PersistentManager.cpp:1435 [opt]
frame #12: 0x00000001059b3e38 **`::ReadAndActivateObjectThreaded() at PersistentManager.cpp:1716 [opt]
frame #13: 0x00000001059b4650 **`::LoadFileCompletelyThreaded() at PersistentManager.cpp:1947 [opt]
frame #14: 0x000000010576bb60 **`::Perform() at LoadSceneOperation.cpp:143 [opt]
frame #15: 0x000000010576d60c **`::ProcessSingleOperation() at PreloadManager.cpp:277 [opt]
frame #16: 0x000000010576d3f8 **`::Run() at PreloadManager.cpp:333 [opt]
frame #17: 0x000000010576d358 **`::Run() at PreloadManager.cpp:181 [opt]
frame #18: 0x00000001058002a8 **`::RunThreadWrapper() at Thread.cpp:42 [opt]
frame #19: 0x000000018117d2fc libsystem_pthread.dylib`_pthread_body + 128
frame #20: 0x000000018117d25c libsystem_pthread.dylib`_pthread_start + 48
frame #21: 0x0000000181180d08 libsystem_pthread.dylib`thread_start + 4
(lldb)

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.