'Crash when opening Android window after using Unity ScrollRect component
java.lang.Error: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
Version '2020.3.14f1 (d0d1bb862f9d)', Build type 'Release', Scripting Backend 'mono', CPU 'armeabi-v7a' Build fingerprint: 'HUAWEI/ANA-AN00/HWANA:10/HUAWEIANA-AN00/102.0.0.236C00:user/release-keys' Revision: '0' ABI: 'arm' Timestamp: 2022-05-17 17:02:37+0800 pid: 11322, tid: 13025, name: UnityMain >>> com.hwen.egg <<< uid: 10270 signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0 Cause: null pointer dereference r0 b7d0d000 r1 00ffffe9 r2 00000001 r3 00ffffdc r4 00000000 r5 00000000 r6 00000010 r7 00420000 r8 00400001 r9 ec6eb17c r10 00400011 r11 00001d10 ip bbb87420 sp ba47a8e8 lr bade8ca1 pc bb497e32
backtrace:
#00 pc 00953e32 /data/app/com.hwen.egg-kLmp4gehHdP02YIKdyPSiw==/lib/arm/libunity.so
#01 pc 002a4c9d /data/app/com.hwen.egg-kLmp4gehHdP02YIKdyPSiw==/lib/arm/libunity.so
#02 pc 002a1307 /data/app/com.hwen.egg-kLmp4gehHdP02YIKdyPSiw==/lib/arm/libunity.so
#03 pc 002a121d /data/app/com.hwen.egg-kLmp4gehHdP02YIKdyPSiw==/lib/arm/libunity.so
#04 pc 00399cc1 /data/app/com.hwen.egg-kLmp4gehHdP02YIKdyPSiw==/lib/arm/libunity.so
#05 pc 000bbf4d /data/app/com.hwen.egg-kLmp4gehHdP02YIKdyPSiw==/lib/arm/libunity.so
#06 pc 001cb68f /data/app/com.hwen.egg-kLmp4gehHdP02YIKdyPSiw==/lib/arm/libunity.so
#07 pc 002f62cb /data/app/com.hwen.egg-kLmp4gehHdP02YIKdyPSiw==/lib/arm/libunity.so
#08 pc 002f6ae7 /data/app/com.hwen.egg-kLmp4gehHdP02YIKdyPSiw==/lib/arm/libunity.so
#09 pc 0087ac77 /data/app/com.hwen.egg-kLmp4gehHdP02YIKdyPSiw==/lib/arm/libunity.so
#10 pc 00877da3 /data/app/com.hwen.egg-kLmp4gehHdP02YIKdyPSiw==/lib/arm/libunity.so
#11 pc 00874025 /data/app/com.hwen.egg-kLmp4gehHdP02YIKdyPSiw==/lib/arm/libunity.so
#12 pc 00875d93 /data/app/com.hwen.egg-kLmp4gehHdP02YIKdyPSiw==/lib/arm/libunity.so
#13 pc 00889a6b /data/app/com.hwen.egg-kLmp4gehHdP02YIKdyPSiw==/lib/arm/libunity.so
#14 pc 00889999 /data/app/com.hwen.egg-kLmp4gehHdP02YIKdyPSiw==/lib/arm/libunity.so
#15 pc 000040d6 <anonymous:d197e000>
managed backtrace:
#00 (wrapper managed-to-native) UnityEngine.TextGenerator:Populate_Internal_Injected (UnityEngine.TextGenerator,string,UnityEngine.Font,UnityEngine.Color&,int,single,single,UnityEngine.FontStyle,bool,bool,int,int,int,int,bool,UnityEngine.TextAnchor,single,single,single,single,bool,bool,uint&)
#01 UnityEngine.TextGenerator:Populate_Internal (string,UnityEngine.Font,UnityEngine.Color,int,single,single,UnityEngine.FontStyle,bool,bool,int,int,int,int,bool,UnityEngine.TextAnchor,single,single,single,single,bool,bool,uint&) <0x1a7>
#02 UnityEngine.TextGenerator:Populate_Internal (string,UnityEngine.Font,UnityEngine.Color,int,single,single,UnityEngine.FontStyle,bool,bool,int,int,UnityEngine.VerticalWrapMode,UnityEngine.HorizontalWrapMode,bool,UnityEngine.TextAnchor,UnityEngine.Vector2,UnityEngine.Vector2,bool,bool,UnityEngine.TextGenerationError&) <0x207>
#03 UnityEngine.TextGenerator:PopulateAlways (string,UnityEngine.TextGenerationSettings) <0x2d7>
#04 UnityEngine.TextGenerator:PopulateWithError (string,UnityEngine.TextGenerationSettings) <0x20b>
#05 UnityEngine.TextGenerator:PopulateWithErrors (string,UnityEngine.TextGenerationSettings,UnityEngine.GameObject) <0x10b>
#06 UnityEngine.UI.Text:OnPopulateMesh (UnityEngine.UI.VertexHelper) <0x1c3>
#07 UnityEngine.UI.Graphic:DoMeshGeneration () <0x127>
#08 UnityEngine.UI.Graphic:UpdateGeometry () <0x2b>
#09 UnityEngine.UI.Text:UpdateGeometry () <0x37>
#10 UnityEngine.UI.Graphic:Rebuild (UnityEngine.UI.CanvasUpdate) <0x6b>
#11 UnityEngine.UI.CanvasUpdateRegistry:PerformUpdate () <0x3fb>
#12 (wrapper delegate-invoke) <Module>:invoke_void ()
#13 UnityEngine.Canvas:SendWillRenderCanvases () <0x33>
#14 UnityEngine.Canvas:ForceUpdateCanvases () <0xb>
#15 UnityEngine.UI.ScrollRect:EnsureLayoutHasRebuilt () <0x2b>
#16 UnityEngine.UI.ScrollRect:LateUpdate () <0x83>
#17 (wrapper runtime-invoke) object:runtime_invoke_void__this__ (object,intptr,intptr,intptr)
at libunity.0x953e32(Native Method)
at libunity.0x2a4c9d(Native Method)
at libunity.0x2a1307(Native Method)
at libunity.0x2a121d(Native Method)
at libunity.0x399cc1(Native Method)
at libunity.0xbbf4d(Native Method)
at libunity.0x1cb68f(Native Method)
at libunity.0x2f62cb(Native Method)
at libunity.0x2f6ae7(Native Method)
at libunity.0x87ac77(Native Method)
at libunity.0x877da3(Native Method)
at libunity.0x874025(Native Method)
at libunity.0x875d93(Native Method)
at libunity.0x889a6b(Native Method)
at libunity.0x889999(Native Method)
at UnityEngine.TextGenerator.Populate_Internal_Injected (UnityEngine.TextGenerator,string,UnityEngine.Font,UnityEngine.Color&,int,single,single,UnityEngine.FontStyle,bool,bool,int,int,int,int,bool,UnityEngine.TextAnchor,single,single,single,single,bool,bool,uint&)(Native Method)
at UnityEngine.TextGenerator.Populate_Internal (string,UnityEngine.Font,UnityEngine.Color,int,single,single,UnityEngine.FontStyle,bool,bool,int,int,int,int,bool,UnityEngine.TextAnchor,single,single,single,single,bool,bool,uint&)(0x1a7:423)
at UnityEngine.TextGenerator.Populate_Internal (string,UnityEngine.Font,UnityEngine.Color,int,single,single,UnityEngine.FontStyle,bool,bool,int,int,UnityEngine.VerticalWrapMode,UnityEngine.HorizontalWrapMode,bool,UnityEngine.TextAnchor,UnityEngine.Vector2,UnityEngine.Vector2,bool,bool,UnityEngine.TextGenerationError&)(0x207:519)
at UnityEngine.TextGenerator.PopulateAlways (string,UnityEngine.TextGenerationSettings)(0x2d7:727)
at UnityEngine.TextGenerator.PopulateWithError (string,UnityEngine.TextGenerationSettings)(0x20b:523)
at UnityEngine.TextGenerator.PopulateWithErrors (string,UnityEngine.TextGenerationSettings,UnityEngine.GameObject)(0x10b:267)
at UnityEngine.UI.Text.OnPopulateMesh (UnityEngine.UI.VertexHelper)(0x1c3:451)
at UnityEngine.UI.Graphic.DoMeshGeneration ()(0x127:295)
at UnityEngine.UI.Graphic.UpdateGeometry ()(0x2b:43)
at UnityEngine.UI.Text.UpdateGeometry ()(0x37:55)
at UnityEngine.UI.Graphic.Rebuild (UnityEngine.UI.CanvasUpdate)(0x6b:107)
at UnityEngine.UI.CanvasUpdateRegistry.PerformUpdate ()(0x3fb:1019)
at <Module>.invoke_void ()(Native Method)
at UnityEngine.Canvas.SendWillRenderCanvases ()(0x33:51)
at UnityEngine.Canvas.ForceUpdateCanvases ()(0xb:11)
at UnityEngine.UI.ScrollRect.EnsureLayoutHasRebuilt ()(0x2b:43)
at UnityEngine.UI.ScrollRect.LateUpdate ()(0x83:131)
Solution 1:[1]
It is Unity bug.Upgrade my Unity 2020.3.14->2020.3.34 can fixed!
Solution 2:[2]
After adding a background() call to the draw() the problem now appears to be with the SQUARE strokeCap as I initially thought and not the noLoop(). REM out strokeCap(SQUARE) and it runs ok. UN-REM it and the lines come back with or without noLoop(); PROJECT caps and no caps are still without lines, with or without noLoop(). I don't think the float values make a difference. Note that I removed the decimal values for strokeCap(SQUARE) to rule this out as a possibility. I'm unable to tell you why the lines occur with strokeCap(SQUARE), but the only way that I see to get rid of the lines is to use the PROJECT option, no caps at all, or keep them, but overlap the ends by 1 point. For whatever it's worth, Processing Reference states that all parameters for line() are floats.
void setup() {
size(500, 500);
noLoop();
}
void draw() {
background(209); // Added and it makes a difference
stroke(0);
strokeWeight(50);
// NO cap
line(60, 80, 180.3, 80);
line(180.3, 80, 280.8, 80);
line(280.8, 80, 380.5, 80);
// (SQUARE) cap
strokeCap(SQUARE); // REM this out to get rid of lines
line(60, 160, 160, 160);
line(160, 160, 260, 160);
line(260, 160, 360, 160);
// (PROJECT) cap
strokeCap(PROJECT);
line(60, 260, 160.5, 260);
line(160.5, 260, 260.5, 260);
line(260.5, 260, 360.5, 260);
// (SQUARE) cap with 1 point of overlap
strokeCap(SQUARE); // No lines with overlap
line(60, 360, 160.8, 360);
line(159.8, 360, 260.3, 360);
line(259.3, 360, 360.5, 360);
}
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | Erik Fu |
| Solution 2 |
