Google Play New problem : 64bits
Moderator: Moderators
Re: Google Play New problem : 64bits
And I just tried the latest version of Omeganaut, where I'm building sounds on start using SFXR, and it crashes while doing so.
So I'm going to try the simple SFXR example and see if I can get it to crash with proper log.
That might be coming from sampleExpression. I don't know, I didn't manage to crash the strip down example yet.
I'll continue tomorrow...
Oh, and regarding the sound quality, that may come from the speakers that are way better on the new phone, and the sound was always that crappy
Edit:
I was able to play the latest version of Omeganaut for several minutes. The crash is random and doesn't seem to be related to the SFXR/SampleExpression. Debug or Release mode. Might be another thread audio problem. Tomorrow, I'll try Omeganaut without sound again.
So I'm going to try the simple SFXR example and see if I can get it to crash with proper log.
That might be coming from sampleExpression. I don't know, I didn't manage to crash the strip down example yet.
I'll continue tomorrow...
Oh, and regarding the sound quality, that may come from the speakers that are way better on the new phone, and the sound was always that crappy
Edit:
I was able to play the latest version of Omeganaut for several minutes. The crash is random and doesn't seem to be related to the SFXR/SampleExpression. Debug or Release mode. Might be another thread audio problem. Tomorrow, I'll try Omeganaut without sound again.
Re: Google Play New problem : 64bits
Old version of Omeganaut (no SFXR) without audio is still randomly crashing after a while. So the problem isn't coming from audio.
Might be threads again, or some other little thing.
And the crash dump isn't helping either:
Build fingerprint: 'google/cheetah/cheetah:14/AP2A.240905.003/12231197:user/release-keys'
#00 0x0000000000003000 <anonymous:74de5f1000>
Edit:
It is definitely coming from threads. With threads deactivated:
ZClasses.Tasks.Enabled := False;
The game is super slow at times, but it's not crashing.
Might be threads again, or some other little thing.
And the crash dump isn't helping either:
Build fingerprint: 'google/cheetah/cheetah:14/AP2A.240905.003/12231197:user/release-keys'
#00 0x0000000000003000 <anonymous:74de5f1000>
Edit:
It is definitely coming from threads. With threads deactivated:
ZClasses.Tasks.Enabled := False;
The game is super slow at times, but it's not crashing.
Re: Google Play New problem : 64bits
Perhaps try playing the game in Android Studio and see if you can reproduce the crash. If it only happens with threads enabled then it is likely related to meshexpression or bitmapexpression.
Re: Google Play New problem : 64bits
So I made a simple BitmapExpression frenzy example:
On Android 64, with threads activated, it can crash right away, or after several minutes. It always gives this error :
But it doesn't seem to crash with threads deactivated.
And I wasn't able to get that crash on the old 32/64 bit phone. But it doesn't support the Color/OneMinusSourceColor blend effect either, so maybe it comes from that? I don't know. Edit:
I deactivated the blend effect and still get that weird inverted cubes on the old phone.
And I got it to crash too:
Edit 2:
Wow... The cubes are rendered inverted only if both
@RefreshContent(Component:BitmapClouds);
@RefreshContent(Component:BitmapCells);
are called...
Code: Select all
<?xml version="1.0" encoding="iso-8859-1" ?>
<ZApplication Name="App" Caption="Omeganaut" ClearColor="0.502 0.502 1 1" AmbientLightColor="1 1 1 1" FullScreen="255" FrameRateStyle="1" ScreenMode="0" CameraPosition="0 0 14" MouseVisible="255" FileVersion="2" PreviewClearColor="0 0 0 1" AndroidPackageName="com.txori.omeganaut" AndroidPortrait="2">
<OnLoaded>
<ZLibrary HasInitializer="1">
<Source>
<![CDATA[int frame = 0;
int timer = 0;]]>
</Source>
</ZLibrary>
<SetAppState State="State_Cubes"/>
</OnLoaded>
<States>
<AppState Name="State_Ready">
<OnUpdate>
<KeyPress Keys="{">
<OnPressed>
<SetAppState State="State_Cubes"/>
</OnPressed>
</KeyPress>
<ZExpression>
<Expression>
<![CDATA[int TouchCount = touchGetCount();
if (TouchCount > 0) @SetAppState(State:State_Cubes);]]>
</Expression>
</ZExpression>
<Timer Interval="1" RepeatCount="10">
<OnTimer>
<ZExpression>
<Expression>
<![CDATA[timer ++;
trace(intToStr(timer));
if (timer == 10) @SetAppState(State:State_Cubes);]]>
</Expression>
</ZExpression>
</OnTimer>
</Timer>
</OnUpdate>
</AppState>
<AppState Name="State_Cubes">
<OnStart>
<ZExpression>
<Expression>
<![CDATA[trace("READY ???");
//Quit();
BitmapCloud.ZHeight = 0;
TransformBG.Rotate.Z = 0;
TransformCell.Rotate.Z = 0;
BitmapCell.RandomSeed = 0;]]>
</Expression>
</ZExpression>
</OnStart>
<OnUpdate>
<ZExpression>
<Expression>
<![CDATA[BitmapCloud.ZHeight += App.DeltaTime;
TransformBG.Rotate.Z += App.DeltaTime / 10;
@RefreshContent(Component:BitmapClouds);
BitmapCell.RandomSeed ++;
TransformCell.Rotate.Z -= App.DeltaTime / 20;
@RefreshContent(Component:BitmapCells);]]>
</Expression>
</ZExpression>
</OnUpdate>
<OnRender>
<RenderTransformGroup Name="TransformBG" Scale="14 14 1" Rotate="0 0 0.4733">
<Children>
<UseMaterial Material="MaterialClouds"/>
<RenderMesh Mesh="SquareMesh"/>
</Children>
</RenderTransformGroup>
<RenderTransformGroup Name="TransformCell" Scale="4 4 1" Rotate="0 0 -0.2367">
<Children>
<UseMaterial Material="MaterialCells"/>
<RenderMesh Mesh="SquareMesh"/>
</Children>
</RenderTransformGroup>
<Repeat Name="repeat" Count="6">
<OnIteration>
<ZExpression>
<Expression>
<![CDATA[int i = repeat.Iteration;
transform.Translate.X = -2.5+(i%3)*2.5;
transform.Translate.Y = 1.5-(i/3)*3;
switch(i) {
case 0: @UseMaterial(Material:MaterialGeneratedMirror); break;
case 1: @UseMaterial(Material:MaterialGeneratedTile); break;
case 2: @UseMaterial(Material:MaterialGeneratedClamp); break;
case 3: @UseMaterial(Material:MaterialModelDefinedMirror); break;
case 4: @UseMaterial(Material:MaterialModelDefinedTile); break;
case 5: @UseMaterial(Material:MaterialModelDefinedClamp); break;
}]]>
</Expression>
</ZExpression>
<RenderTransformGroup Name="transform" Translate="2.5 -1.5 0">
<Children>
<RenderTransform Rotate="0.1 0.1 0"/>
<RenderMesh Mesh="CubeMesh"/>
</Children>
</RenderTransformGroup>
</OnIteration>
</Repeat>
</OnRender>
</AppState>
</States>
<OnUpdate>
<ZExpression>
<Expression>
<![CDATA[//trace("Frame "+intToStr(frame));
frame ++;]]>
</Expression>
</ZExpression>
</OnUpdate>
<Content>
<Mesh Name="CubeMesh">
<Producers>
<MeshBox/>
</Producers>
</Mesh>
<Bitmap Name="BitmapRainbow" Width="32" Height="32" Filter="1">
<Producers>
<BitmapExpression>
<Expression>
<![CDATA[int u = round(X*31), v = round(Y*31);
if(u == 0 || u == 31 || v == 0 || v == 31)
{
Pixel = 1;
}
else
{
Pixel.R = X;
Pixel.G = Y;
Pixel.B = 1-X;
}]]>
</Expression>
</BitmapExpression>
</Producers>
</Bitmap>
<Material Name="MaterialGeneratedMirror">
<Textures>
<MaterialTexture Texture="BitmapRainbow"/>
</Textures>
</Material>
<Material Name="MaterialGeneratedTile">
<Textures>
<MaterialTexture Texture="BitmapRainbow" TextureWrapMode="1"/>
</Textures>
</Material>
<Material Name="MaterialGeneratedClamp">
<Textures>
<MaterialTexture Texture="BitmapRainbow" TextureWrapMode="2"/>
</Textures>
</Material>
<Material Name="MaterialModelDefinedMirror">
<Textures>
<MaterialTexture Texture="BitmapRainbow" TexCoords="1"/>
</Textures>
</Material>
<Material Name="MaterialModelDefinedTile">
<Textures>
<MaterialTexture Texture="BitmapRainbow" TextureWrapMode="1" TexCoords="1"/>
</Textures>
</Material>
<Material Name="MaterialModelDefinedClamp">
<Textures>
<MaterialTexture Texture="BitmapRainbow" TextureWrapMode="2" TexCoords="1"/>
</Textures>
</Material>
<Mesh Name="SquareMesh">
<Producers>
<MeshBox Grid2DOnly="255"/>
</Producers>
</Mesh>
<Bitmap Name="BitmapClouds">
<Producers>
<BitmapNoise Name="BitmapCloud" Octaves="5" Offset="0.34" ZHeight="4.7332"/>
<BitmapBlur Radius="3" Amplify="1.1" Kind="2"/>
</Producers>
</Bitmap>
<Material Name="MaterialClouds">
<Textures>
<MaterialTexture Name="MaterialCloudTexture" Texture="BitmapClouds" TextureRotate="-0.6469" TextureWrapMode="1" TexCoords="1"/>
</Textures>
</Material>
<Bitmap Name="BitmapCells" Width="256" Height="256">
<Producers>
<BitmapCells Name="BitmapCell" UsedMetrics="3" RandomSeed="297" BorderPixels="0" PointCount="6"/>
<BitmapBlur Radius="1"/>
</Producers>
</Bitmap>
<Material Name="MaterialCells">
<Textures>
<MaterialTexture Texture="BitmapCells" TextureWrapMode="1" TexCoords="1"/>
</Textures>
</Material>
</Content>
</ZApplication>
Code: Select all
********** Crash dump: **********
Build fingerprint: 'google/cheetah/cheetah:14/AP2A.240905.003/12231197:user/release-keys'
Abort message: 'Scudo ERROR: corrupted chunk header at address 0x20000797259d830'
#00 0x000000000005d8e4 /apex/com.android.runtime/lib64/bionic/libc.so (abort+164) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#01 0x0000000000048d18 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::die()+8) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#02 0x00000000000499ec /apex/com.android.runtime/lib64/bionic/libc.so (scudo::reportRawError(char const*)+28) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#03 0x000000000004995c /apex/com.android.runtime/lib64/bionic/libc.so (scudo::ScopedErrorReport::~ScopedErrorReport()+12) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#04 0x0000000000049ac0 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::reportHeaderCorruption(void*)+96) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#05 0x000000000004bab4 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::Allocator<scudo::AndroidNormalConfig, &(scudo_malloc_postinit)>::deallocate(void*, scudo::Chunk::Origin, unsigned long, unsigned long)+276) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#06 0x00000000022df41c /memfd:jit-cache (deleted) (offset 0x2000000) (art_jni_trampoline+140)
#07 0x00000000022ad23c /memfd:jit-cache (deleted) (offset 0x2000000) (libcore.util.NativeAllocationRegistry$CleanerThunk.run+156)
#08 0x00000000022acde8 /memfd:jit-cache (deleted) (offset 0x2000000) (sun.misc.Cleaner.clean+248)
#09 0x000000000036db74 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+612) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#10 0x00000000003671e4 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+1928) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#11 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#12 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#13 0x000000000012b6fc /apex/com.android.art/javalib/core-oj.jar (java.lang.ref.ReferenceQueue.enqueuePending+0)
#14 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#15 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#16 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#17 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#18 0x000000000002c164 /apex/com.android.art/javalib/core-libart.jar (java.lang.Daemons$ReferenceQueueDaemon.runInternal+0)
#19 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#20 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#21 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#22 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#23 0x000000000002b314 /apex/com.android.art/javalib/core-libart.jar (java.lang.Daemons$Daemon.run+0)
#24 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#25 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#26 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#27 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#28 0x0000000000117a28 /apex/com.android.art/javalib/core-oj.jar (java.lang.Thread.run+0)
#29 0x00000000003589dc /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+1932) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#30 0x0000000000384498 /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#31 0x000000000036db74 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+612) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#32 0x0000000000359324 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+132) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#33 0x0000000000944438 /apex/com.android.art/lib64/libart.so (_ZN3art9ArtMethod14InvokeInstanceILc86ETpTncJEEENS_6detail12ShortyTraitsIXT_EE4TypeEPNS_6ThreadENS_6ObjPtrINS_6mirror6ObjectEEEDpNS3_IXT0_EE4TypeE+60) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#34 0x00000000006209f4 /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallback(void*)+1344) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#35 0x00000000006204a4 /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallbackWithUffdGc(void*)+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#36 0x000000000006efbc /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+204) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#37 0x0000000000060d60 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
Crash dump is completed
And I wasn't able to get that crash on the old 32/64 bit phone. But it doesn't support the Color/OneMinusSourceColor blend effect either, so maybe it comes from that? I don't know. Edit:
I deactivated the blend effect and still get that weird inverted cubes on the old phone.
And I got it to crash too:
Code: Select all
********** Crash dump: **********
Build fingerprint: 'google/sargo/sargo:12/SP2A.220505.008/8782922:user/release-keys'
Abort message: 'Scudo ERROR: corrupted chunk header at address 0x2000071b6151970
#00 0x000000000004facc /apex/com.android.runtime/lib64/bionic/libc.so (abort+164) (BuildId: cd7952cb40d1a2deca6420c2da7910be)
#01 0x0000000000040364 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::die()+8) (BuildId: cd7952cb40d1a2deca6420c2da7910be)
#02 0x0000000000040a10 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::ScopedErrorReport::~ScopedErrorReport()+32) (BuildId: cd7952cb40d1a2deca6420c2da7910be)
#03 0x0000000000040ad8 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::reportHeaderCorruption(void*)+60) (BuildId: cd7952cb40d1a2deca6420c2da7910be)
#04 0x0000000000042238 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::Allocator<scudo::AndroidConfig, &(scudo_malloc_postinit)>::deallocate(void*, scudo::Chunk::Origin, unsigned long, unsigned long)+296) (BuildId: cd7952cb40d1a2deca6420c2da7910be)
#05 0x0000000000378f70 /apex/com.android.art/lib64/libart.so (art_quick_generic_jni_trampoline+144) (BuildId: 1ee2c234829500686eefa384068e67c8)
#06 0x0000000000362a40 /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+640) (BuildId: 1ee2c234829500686eefa384068e67c8)
#07 0x000000000035bd94 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+2048) (BuildId: 1ee2c234829500686eefa384068e67c8)
#08 0x000000000076df64 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 1ee2c234829500686eefa384068e67c8)
#09 0x000000000037b5d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 1ee2c234829500686eefa384068e67c8)
#10 0x000000000003fb10 /apex/com.android.art/javalib/core-libart.jar (libcore.util.NativeAllocationRegistry$CleanerThunk.run+0)
#11 0x000000000034e21c /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.2845697060370838518)+428) (BuildId: 1ee2c234829500686eefa384068e67c8)
#12 0x000000000035c5b0 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 1ee2c234829500686eefa384068e67c8)
#13 0x000000000076df64 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 1ee2c234829500686eefa384068e67c8)
#14 0x000000000037b5d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 1ee2c234829500686eefa384068e67c8)
#15 0x00000000002c21f4 /apex/com.android.art/javalib/core-oj.jar (sun.misc.Cleaner.clean+0)
#16 0x000000000034e21c /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.2845697060370838518)+428) (BuildId: 1ee2c234829500686eefa384068e67c8)
#17 0x000000000035c5b0 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 1ee2c234829500686eefa384068e67c8)
#18 0x000000000076df64 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 1ee2c234829500686eefa384068e67c8)
#19 0x000000000037b5d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 1ee2c234829500686eefa384068e67c8)
#20 0x000000000012b6fc /apex/com.android.art/javalib/core-oj.jar (java.lang.ref.ReferenceQueue.enqueuePending+0)
#21 0x000000000034e21c /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.2845697060370838518)+428) (BuildId: 1ee2c234829500686eefa384068e67c8)
#22 0x000000000035c5b0 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 1ee2c234829500686eefa384068e67c8)
#23 0x000000000076df64 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 1ee2c234829500686eefa384068e67c8)
#24 0x000000000037b5d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 1ee2c234829500686eefa384068e67c8)
#25 0x000000000002c164 /apex/com.android.art/javalib/core-libart.jar (java.lang.Daemons$ReferenceQueueDaemon.runInternal+0)
#26 0x000000000034e21c /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.2845697060370838518)+428) (BuildId: 1ee2c234829500686eefa384068e67c8)
#27 0x000000000035c5b0 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 1ee2c234829500686eefa384068e67c8)
#28 0x000000000076df64 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 1ee2c234829500686eefa384068e67c8)
#29 0x000000000037b5d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 1ee2c234829500686eefa384068e67c8)
#30 0x000000000002b314 /apex/com.android.art/javalib/core-libart.jar (java.lang.Daemons$Daemon.run+0)
#31 0x000000000034e21c /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.2845697060370838518)+428) (BuildId: 1ee2c234829500686eefa384068e67c8)
#32 0x000000000035c5b0 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 1ee2c234829500686eefa384068e67c8)
#33 0x000000000076df64 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 1ee2c234829500686eefa384068e67c8)
#34 0x000000000037b5d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 1ee2c234829500686eefa384068e67c8)
#35 0x0000000000117a28 /apex/com.android.art/javalib/core-oj.jar (java.lang.Thread.run+0)
#36 0x000000000034d5a8 /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+1932) (BuildId: 1ee2c234829500686eefa384068e67c8)
#37 0x0000000000379098 /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88) (BuildId: 1ee2c234829500686eefa384068e67c8)
#38 0x0000000000362774 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+612) (BuildId: 1ee2c234829500686eefa384068e67c8)
#39 0x000000000034def0 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+132) (BuildId: 1ee2c234829500686eefa384068e67c8)
#40 0x0000000000943e28 /apex/com.android.art/lib64/libart.so (_ZN3art9ArtMethod14InvokeInstanceILc86ETpTncJEEENS_6detail12ShortyTraitsIXT_EE4TypeEPNS_6ThreadENS_6ObjPtrINS_6mirror6ObjectEEEDpNS3_IXT0_EE4TypeE+60) (BuildId: 1ee2c234829500686eefa384068e67c8)
#41 0x000000000063ebd4 /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallback(void*)+1344) (BuildId: 1ee2c234829500686eefa384068e67c8)
#42 0x00000000000b1810 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+264) (BuildId: cd7952cb40d1a2deca6420c2da7910be)
#43 0x00000000000512f0 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: cd7952cb40d1a2deca6420c2da7910be)
Crash dump is completed
Wow... The cubes are rendered inverted only if both
@RefreshContent(Component:BitmapClouds);
@RefreshContent(Component:BitmapCells);
are called...
Re: Google Play New problem : 64bits
I added this line to your example because otherwise the BitmapExpression is only updated at startup:
Code: Select all
@RefreshContent(Component:BitmapRainbow);
Re: Google Play New problem : 64bits
BitmapRainbow isn't supposed to be refreshed in this example ?
I stripped down the example even more:
The problem only appears if both @RefreshContent are used.
With this, the cubes are rendered inverted on the (not so) old phone... But is rendering perfectly on the 64bit only phone.
Otherwise, it is just:
I stripped down the example even more:
Code: Select all
<?xml version="1.0" encoding="iso-8859-1" ?>
<ZApplication Name="App" Caption="Omeganaut" ClearColor="0.502 0.502 1 1" AmbientLightColor="1 1 1 1" FullScreen="255" FrameRateStyle="1" ScreenMode="0" CameraPosition="0 0 14" MouseVisible="255" FileVersion="2" PreviewClearColor="0 0 0 1" AndroidPackageName="com.txori.omeganaut" AndroidPortrait="2">
<OnLoaded>
<ZLibrary HasInitializer="1">
<Source>
<![CDATA[int frame = 0;
int timer = 0;]]>
</Source>
</ZLibrary>
<ZExpression>
<Expression>
<![CDATA[
BitmapCloud.ZHeight = 0;
BitmapCell.RandomSeed = 0;]]>
</Expression>
</ZExpression>
</OnLoaded>
<OnUpdate>
<ZExpression>
<Expression>
<![CDATA[@RefreshContent(Component:BitmapClouds);
@RefreshContent(Component:BitmapCells);]]>
</Expression>
</ZExpression>
</OnUpdate>
<OnRender>
<Repeat Name="repeat" Count="6">
<OnIteration>
<ZExpression>
<Expression>
<![CDATA[int i = repeat.Iteration;
transform.Translate.X = -2.5+(i%3)*2.5;
transform.Translate.Y = 1.5-(i/3)*3;
switch(i) {
case 0: @UseMaterial(Material:MaterialGeneratedMirror); break;
case 1: @UseMaterial(Material:MaterialGeneratedTile); break;
case 2: @UseMaterial(Material:MaterialGeneratedClamp); break;
case 3: @UseMaterial(Material:MaterialModelDefinedMirror); break;
case 4: @UseMaterial(Material:MaterialModelDefinedTile); break;
case 5: @UseMaterial(Material:MaterialModelDefinedClamp); break;
}]]>
</Expression>
</ZExpression>
<RenderTransformGroup Name="transform" Translate="2.5 -1.5 0">
<Children>
<RenderTransform Rotate="0.1 0.1 0"/>
<RenderMesh Mesh="CubeMesh"/>
</Children>
</RenderTransformGroup>
</OnIteration>
</Repeat>
</OnRender>
<Content>
<Mesh Name="CubeMesh">
<Producers>
<MeshBox/>
</Producers>
</Mesh>
<Bitmap Name="BitmapRainbow" Width="32" Height="32" Filter="1">
<Producers>
<BitmapExpression>
<Expression>
<![CDATA[int u = round(X*31), v = round(Y*31);
if(u == 0 || u == 31 || v == 0 || v == 31)
{
Pixel = 1;
}
else
{
Pixel.R = X;
Pixel.G = Y;
Pixel.B = 1-X;
}]]>
</Expression>
</BitmapExpression>
</Producers>
</Bitmap>
<Material Name="MaterialGeneratedMirror">
<Textures>
<MaterialTexture Texture="BitmapRainbow"/>
</Textures>
</Material>
<Material Name="MaterialGeneratedTile">
<Textures>
<MaterialTexture Texture="BitmapRainbow" TextureWrapMode="1"/>
</Textures>
</Material>
<Material Name="MaterialGeneratedClamp">
<Textures>
<MaterialTexture Texture="BitmapRainbow" TextureWrapMode="2"/>
</Textures>
</Material>
<Material Name="MaterialModelDefinedMirror">
<Textures>
<MaterialTexture Texture="BitmapRainbow" TexCoords="1"/>
</Textures>
</Material>
<Material Name="MaterialModelDefinedTile">
<Textures>
<MaterialTexture Texture="BitmapRainbow" TextureWrapMode="1" TexCoords="1"/>
</Textures>
</Material>
<Material Name="MaterialModelDefinedClamp">
<Textures>
<MaterialTexture Texture="BitmapRainbow" TextureWrapMode="2" TexCoords="1"/>
</Textures>
</Material>
<Bitmap Name="BitmapClouds" Width="256" Height="256">
<Producers>
<BitmapNoise Name="BitmapCloud" Octaves="5" Offset="0.34" ZHeight="4.7332"/>
<BitmapBlur Radius="3" Amplify="1.1" Kind="2"/>
</Producers>
</Bitmap>
<Bitmap Name="BitmapCells" Width="256" Height="256">
<Producers>
<BitmapCells Name="BitmapCell" UsedMetrics="3" RandomSeed="297" BorderPixels="0" PointCount="6"/>
<BitmapBlur Radius="1"/>
</Producers>
</Bitmap>
</Content>
</ZApplication>
With this, the cubes are rendered inverted on the (not so) old phone... But is rendering perfectly on the 64bit only phone.
You mean the full thing with all the traces I added to the code? I hope it is going to crash right away, otherwise this is going to be longCan you reproduce the crash with a debugger attached?
Otherwise, it is just:
Code: Select all
10-21 14:27:34.653 30917 30917 E ZgeAndroid: /storage/emulated/0
10-21 14:27:34.653 30917 30917 E ZgeAndroid: /data/user/0/com.txori.omeganaut/files/
10-21 14:27:34.653 30917 30917 E ZgeAndroid: /data/app/~~Gn7RcUZnTxWukLMllNaJwA==/com.txori.omeganaut-zV-9Rs0o6boLH4QrcYiZqA==/lib/arm64/
10-21 14:27:34.655 30917 30917 E ZgeAndroid: Function not found: JNI_OnLoad
10-21 14:27:34.655 30917 30917 E ZgeAndroid: Function not found: glDepthRange
10-21 14:27:34.655 30917 30917 E ZgeAndroid: Function not found: glGenLists
10-21 14:27:34.655 30917 30917 E ZgeAndroid: Function not found: glMateriali
10-21 14:27:34.655 30917 30917 E ZgeAndroid: Function not found: glIndexMask
10-21 14:27:34.655 30917 30917 E ZgeAndroid: Function not found: glListBase
10-21 14:27:34.655 30917 30917 E ZgeAndroid: Function not found: glBegin
10-21 14:27:34.655 30917 30917 E ZgeAndroid: Function not found: glCallList
10-21 14:27:34.655 30917 30917 E ZgeAndroid: Function not found: glColor3f
10-21 14:27:34.655 30917 30917 E ZgeAndroid: Function not found: glColor3fv
10-21 14:27:34.655 30917 30917 E ZgeAndroid: Function not found: glColor4fv
10-21 14:27:34.655 30917 30917 E ZgeAndroid: Function not found: glEnd
10-21 14:27:34.655 30917 30917 E ZgeAndroid: Function not found: glColorMaterial
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glDeleteLists
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glDrawBuffer
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glGetTexImage
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glPolygonMode
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glPopAttrib
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glPushAttrib
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glRasterPos2f
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glTexCoord2f
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glVertex2f
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glVertex3f
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glTexGeni
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glAttachShader
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glBindAttribLocation
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glCompileShader
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glCreateShader
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glCreateProgram
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glDeleteShader
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glDeleteProgram
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glDetachShader
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glGetProgramiv
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glGetShaderiv
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glGetShaderInfoLog
10-21 14:27:34.656 30917 30917 E ZgeAndroid: Function not found: glGetProgramInfoLog
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glValidateProgram
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glGetUniformLocation
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glLinkProgram
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glShaderSource
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glUniform3fv
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glUniform1f
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glUniform4fv
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glUniform2fv
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glUniform1i
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glUniform1fv
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glUniformMatrix3fv
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glUniformMatrix4fv
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glUseProgram
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glIsRenderbuffer
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glBindRenderbuffer
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glDeleteRenderbuffers
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glGenRenderbuffers
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glRenderbufferStorage
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glBindFramebuffer
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glDeleteFramebuffers
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glGenFramebuffers
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glCheckFramebufferStatus
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glFramebufferTexture2D
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glFramebufferRenderbuffer
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glGenerateMipmap
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glRenderbufferStorageMultisample
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glTexImage2DMultisample
10-21 14:27:34.657 30917 30917 E ZgeAndroid: Function not found: glBlitFramebuffer
10-21 14:27:34.658 30917 30917 E ZgeAndroid: Function not found: glDisableVertexAttribArray
10-21 14:27:34.658 30917 30917 E ZgeAndroid: Function not found: glEnableVertexAttribArray
10-21 14:27:34.658 30917 30917 E ZgeAndroid: Function not found: glVertexAttribPointer
10-21 14:27:34.658 30917 30917 E ZgeAndroid: GLBase: 1.1
10-21 14:27:34.842 30917 30917 E ZgeAndroid: CPUs: 8
Re: Google Play New problem : 64bits
Perhaps we are looking at two different problems here. If you get crash only when Tasks.Enabled = true then I suggest you make a test project that only has a MeshExpression and a BitmapExpression and that are both refreshed using RefreshContent each frame. That should stress test the problem.
Re: Google Play New problem : 64bits
I think it is an entirely new and weird problem. So let's forget the old phone for now. I made this thing (maybe @Kjell can make a better looking one ) :
That gives the same error on android 64:
And here's the full logcat:
Code: Select all
<?xml version="1.0" encoding="iso-8859-1" ?>
<ZApplication Name="App" Caption="Omeganaut" ClearColor="0.502 0.502 1 1" AmbientLightColor="1 1 1 1" FullScreen="255" FrameRateStyle="1" ScreenMode="0" CameraPosition="0 0 14" MouseVisible="255" FileVersion="2" PreviewClearColor="0 0 0 1" AndroidPackageName="com.txori.omeganaut" AndroidPortrait="2">
<OnLoaded>
<ZLibrary Source="int frame = 0;" HasInitializer="1"/>
<ZExpression Expression="BitmapCloud.ZHeight = 0;"/>
</OnLoaded>
<OnUpdate>
<ZExpression>
<Expression>
<![CDATA[frame++;
BitmapCloud.ZHeight += App.DeltaTime;
@RefreshContent(Component:BitmapClouds);
@RefreshContent(Component:SphereExpression);]]>
</Expression>
</ZExpression>
</OnUpdate>
<OnRender>
<UseMaterial Material="MaterialCloud"/>
<RenderMesh Mesh="TheMesh"/>
</OnRender>
<Content>
<Bitmap Name="BitmapClouds">
<Producers>
<BitmapNoise Name="BitmapCloud" Octaves="5" Offset="0.34" ZHeight="11.9554"/>
<BitmapBlur Radius="3" Amplify="1.1" Kind="2"/>
</Producers>
</Bitmap>
<Material Name="MaterialCloud">
<Textures>
<MaterialTexture Texture="BitmapClouds" TexCoords="1"/>
</Textures>
</Material>
<Mesh Name="TheMesh">
<Producers>
<MeshBox Scale="2 2 2" XCount="1" YCount="32"/>
<MeshExpression Name="SphereExpression" HasTexCoords="255">
<Expression>
<![CDATA[V.X = 4*cos(frame *V.Y*0.01);
V.Y = 4*sin(frame *V.X*0.01);]]>
</Expression>
</MeshExpression>
</Producers>
</Mesh>
</Content>
</ZApplication>
Code: Select all
********** Crash dump: **********
Build fingerprint: 'google/cheetah/cheetah:14/AP2A.240905.003/12231197:user/release-keys'
Abort message: 'Scudo ERROR: corrupted chunk header at address 0x20000797259d8d0'
#00 0x000000000005d8e4 /apex/com.android.runtime/lib64/bionic/libc.so (abort+164) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#01 0x0000000000048d18 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::die()+8) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#02 0x00000000000499ec /apex/com.android.runtime/lib64/bionic/libc.so (scudo::reportRawError(char const*)+28) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#03 0x000000000004995c /apex/com.android.runtime/lib64/bionic/libc.so (scudo::ScopedErrorReport::~ScopedErrorReport()+12) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#04 0x0000000000049ac0 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::reportHeaderCorruption(void*)+96) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#05 0x000000000004bab4 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::Allocator<scudo::AndroidNormalConfig, &(scudo_malloc_postinit)>::deallocate(void*, scudo::Chunk::Origin, unsigned long, unsigned long)+276) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#06 0x00000000022dfd3c /memfd:jit-cache (deleted) (offset 0x2000000) (art_jni_trampoline+140)
#07 0x00000000022adeec /memfd:jit-cache (deleted) (offset 0x2000000) (libcore.util.NativeAllocationRegistry$CleanerThunk.run+156)
#08 0x00000000022ada98 /memfd:jit-cache (deleted) (offset 0x2000000) (sun.misc.Cleaner.clean+248)
#09 0x000000000036db74 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+612) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#10 0x00000000003671e4 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+1928) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#11 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#12 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#13 0x000000000012b6fc /apex/com.android.art/javalib/core-oj.jar (java.lang.ref.ReferenceQueue.enqueuePending+0)
#14 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#15 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#16 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#17 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#18 0x000000000002c164 /apex/com.android.art/javalib/core-libart.jar (java.lang.Daemons$ReferenceQueueDaemon.runInternal+0)
#19 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#20 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#21 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#22 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#23 0x000000000002b314 /apex/com.android.art/javalib/core-libart.jar (java.lang.Daemons$Daemon.run+0)
#24 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#25 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#26 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#27 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#28 0x0000000000117a28 /apex/com.android.art/javalib/core-oj.jar (java.lang.Thread.run+0)
#29 0x00000000003589dc /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+1932) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#30 0x0000000000384498 /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#31 0x000000000036db74 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+612) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#32 0x0000000000359324 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+132) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#33 0x0000000000944438 /apex/com.android.art/lib64/libart.so (_ZN3art9ArtMethod14InvokeInstanceILc86ETpTncJEEENS_6detail12ShortyTraitsIXT_EE4TypeEPNS_6ThreadENS_6ObjPtrINS_6mirror6ObjectEEEDpNS3_IXT0_EE4TypeE+60) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#34 0x00000000006209f4 /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallback(void*)+1344) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#35 0x00000000006204a4 /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallbackWithUffdGc(void*)+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#36 0x000000000006efbc /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+204) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#37 0x0000000000060d60 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
Crash dump is completed
- Attachments
-
- log.zip
- (73.84 KiB) Downloaded 76 times
Re: Google Play New problem : 64bits
Hi Ats,
K
Hmm .. i suspect this might be caused by GLESPixelsFromTexture executing at the wrong time. That function temporarily disables depth testing and face culling when using ES 1.0.
K
Re: Google Play New problem : 64bits
I see, yes. This would paint pixels on the screen but since it it uses push/pop attrib it should restore those settings. If the glPushAttrib emulation function is working as it should.Kjell wrote: ↑Mon Oct 21, 2024 2:29 pm Hmm .. i suspect this might be caused by GLESPixelsFromTexture executing at the wrong time. That function temporarily disables depth testing and face culling when using ES 1.0.
Re: Google Play New problem : 64bits
Hi Ats,
After some digging & PM'ing with Ville .. the "inverted" problem is probably caused by glGetIntegerv not being implemented fully ( GL_DEPTH_TEST and GL_CULL_FACE are missing ) in the ES1.x emulation layer used by modern Android devices.
So if you're developing a project that targets ES1.x, you should be able to fix the issue by activating a dummy Material that has ZBuffer=disabled and DrawBackFace=enabled immediately after refreshing your Bitmaps.
K
After some digging & PM'ing with Ville .. the "inverted" problem is probably caused by glGetIntegerv not being implemented fully ( GL_DEPTH_TEST and GL_CULL_FACE are missing ) in the ES1.x emulation layer used by modern Android devices.
So if you're developing a project that targets ES1.x, you should be able to fix the issue by activating a dummy Material that has ZBuffer=disabled and DrawBackFace=enabled immediately after refreshing your Bitmaps.
K
Re: Google Play New problem : 64bits
Adding the dummy material worked perfectly. Sorry for finding brand-new bugs while trying to correct other ones
By the way, while testing the repaired backface example, I found out that the 'Scudo ERROR' bug listed before is happening right out of the start, regardless of threads activated or not, when :
for 64 bits:
Does ZGE allocate or deallocate memory at launch or something like that? Maybe we need to set something different with the trampoline for Android 64 bits?
Here's the last log that I got when having that bug.
By the way, while testing the repaired backface example, I found out that the 'Scudo ERROR' bug listed before is happening right out of the start, regardless of threads activated or not, when :
for 64 bits:
- Happens very easily after installing + launching the app with run.bat (1 out of 3)
- Can happen when launching the app from the phone (1 out of 10)
- It NEVER happens (0 out of 200)
Does ZGE allocate or deallocate memory at launch or something like that? Maybe we need to set something different with the trampoline for Android 64 bits?
Here's the last log that I got when having that bug.
- Attachments
-
- log.zip
- (26.98 KiB) Downloaded 77 times
Re: Google Play New problem : 64bits
Looking at the end of the callstack, it seems it triggers in a OpenGL call from TZApplication.UpdateScreen.
There are not many GL-calls in UpdateScreen. You could try commenting out the glFlush call and see what happens.
Code: Select all
#31 pc 00000000001872ec /vendor/lib64/egl/libGLESv2_adreno.so
#32 pc 0000000000041d00 libzgeandroid.so (ZAPPLICATION$_$TZAPPLICATION_$__$$_UPDATESCREEN+200)
Re: Google Play New problem : 64bits
I didn't see that line yesterday evening.
I was currently adding traces in GenerateTrampoline, TExpExternalFuncCall.Execute and TExpExternalFuncCall.Destroy.
Omeganaut is tracing them, but simpler examples such as the previous inverted cubes does not even enter those functions when running. And since both app can crash with the same error log, it is not coming from that, I guess.
So I added logs to TZApplication.UpdateScreen, and I'm not sure if it verifies anything.
When I run the app, I can get one of those two crashes right from the start:
With this crash log:
Or that one:
With this crash log:
Oh, and I added uses cmem,cthreads in ZApplication, ZPlatform_Android and GLDrivers.pas, just in case. It doesn't help
So I plan to add traces to GLDrivers.pas / RenderMesh...
What is the difference between procedure TGLDriverFixed.RenderMesh(Mesh: TMesh); and procedure TGLDriverProgrammable.RenderMesh(Mesh: TMesh); ?
I was currently adding traces in GenerateTrampoline, TExpExternalFuncCall.Execute and TExpExternalFuncCall.Destroy.
Omeganaut is tracing them, but simpler examples such as the previous inverted cubes does not even enter those functions when running. And since both app can crash with the same error log, it is not coming from that, I guess.
So I added logs to TZApplication.UpdateScreen, and I'm not sure if it verifies anything.
When I run the app, I can get one of those two crashes right from the start:
Code: Select all
10-23 11:15:03.188 26591 26613 E ZgeAndroid: UpdateScreen: Starting screen update
10-23 11:15:03.188 26591 26613 E ZgeAndroid: UpdateScreen: Starting render pass 0
10-23 11:15:03.188 26591 26613 E ZgeAndroid: UpdateScreen: Updating viewport
10-23 11:15:03.188 26591 26613 E ZgeAndroid: UpdateScreen: Applying camera transform
10-23 11:15:03.188 26591 26613 E ZgeAndroid: UpdateScreen: Clearing screen with ClearColor
10-23 11:15:03.188 26591 26613 E ZgeAndroid: UpdateScreen: Setting ambient light color
10-23 11:15:03.188 26591 26613 E ZgeAndroid: UpdateScreen: Applying default light
10-23 11:15:03.188 26591 26613 E ZgeAndroid: UpdateScreen: Enabling default material
10-23 11:15:03.188 26591 26613 E ZgeAndroid: UpdateScreen: Rendering models
10-23 11:15:03.188 26591 26613 E ZgeAndroid: UpdateScreen: Rendering application and current state
10-23 11:15:03.189 26591 26613 E ZgeAndroid: CPUs: 8
10-23 11:15:03.214 26591 26613 E ZgeAndroid: UpdateScreen: Re-enabling default material
10-23 11:15:03.214 26591 26613 E ZgeAndroid: UpdateScreen: Flushing OpenGL commands
10-23 11:15:03.215 26591 26613 E ZgeAndroid: UpdateScreen: Swapping buffers
10-23 11:15:03.215 26591 26613 E ZgeAndroid: UpdateScreen: Screen update finished
10-23 11:15:03.395 26591 26613 E ZgeAndroid: UpdateScreen: Starting screen update
10-23 11:15:03.395 26591 26613 E ZgeAndroid: UpdateScreen: Starting render pass 0
10-23 11:15:03.395 26591 26613 E ZgeAndroid: UpdateScreen: Updating viewport
10-23 11:15:03.395 26591 26613 E ZgeAndroid: UpdateScreen: Applying camera transform
10-23 11:15:03.395 26591 26613 E ZgeAndroid: UpdateScreen: Clearing screen with ClearColor
10-23 11:15:03.396 26591 26613 E ZgeAndroid: UpdateScreen: Setting ambient light color
10-23 11:15:03.396 26591 26613 E ZgeAndroid: UpdateScreen: Applying default light
10-23 11:15:03.396 26591 26613 E ZgeAndroid: UpdateScreen: Enabling default material
10-23 11:15:03.396 26591 26613 E ZgeAndroid: UpdateScreen: Rendering models
10-23 11:15:03.396 26591 26613 E ZgeAndroid: UpdateScreen: Rendering application and current state
10-23 11:15:03.396 26591 26613 E ZgeAndroid: UpdateScreen: Re-enabling default material
10-23 11:15:03.396 26591 26613 E ZgeAndroid: UpdateScreen: Flushing OpenGL commands
10-23 11:15:03.397 26591 26613 E ZgeAndroid: UpdateScreen: Swapping buffers
10-23 11:15:03.397 26591 26613 E ZgeAndroid: UpdateScreen: Screen update finished
Code: Select all
********** Crash dump: **********
Build fingerprint: 'google/sargo/sargo:12/SP2A.220505.008/8782922:user/release-keys'
Abort message: 'Scudo ERROR: corrupted chunk header at address 0x2000070145df1d0
#00 0x000000000004facc /apex/com.android.runtime/lib64/bionic/libc.so (abort+164) (BuildId: cd7952cb40d1a2deca6420c2da7910be)
#01 0x0000000000040364 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::die()+8) (BuildId: cd7952cb40d1a2deca6420c2da7910be)
#02 0x0000000000040a10 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::ScopedErrorReport::~ScopedErrorReport()+32) (BuildId: cd7952cb40d1a2deca6420c2da7910be)
#03 0x0000000000040ad8 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::reportHeaderCorruption(void*)+60) (BuildId: cd7952cb40d1a2deca6420c2da7910be)
#04 0x0000000000042238 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::Allocator<scudo::AndroidConfig, &(scudo_malloc_postinit)>::deallocate(void*, scudo::Chunk::Origin, unsigned long, unsigned long)+296) (BuildId: cd7952cb40d1a2deca6420c2da7910be)
#05 0x0000000000378f70 /apex/com.android.art/lib64/libart.so (art_quick_generic_jni_trampoline+144) (BuildId: 1ee2c234829500686eefa384068e67c8)
#06 0x0000000000362a40 /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+640) (BuildId: 1ee2c234829500686eefa384068e67c8)
#07 0x000000000035bd94 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+2048) (BuildId: 1ee2c234829500686eefa384068e67c8)
#08 0x000000000076df64 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 1ee2c234829500686eefa384068e67c8)
#09 0x000000000037b5d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 1ee2c234829500686eefa384068e67c8)
#10 0x000000000003fb10 /apex/com.android.art/javalib/core-libart.jar (libcore.util.NativeAllocationRegistry$CleanerThunk.run+0)
#11 0x000000000034e21c /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.2845697060370838518)+428) (BuildId: 1ee2c234829500686eefa384068e67c8)
#12 0x000000000035c5b0 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 1ee2c234829500686eefa384068e67c8)
#13 0x000000000076df64 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 1ee2c234829500686eefa384068e67c8)
#14 0x000000000037b5d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 1ee2c234829500686eefa384068e67c8)
#15 0x00000000002c21f4 /apex/com.android.art/javalib/core-oj.jar (sun.misc.Cleaner.clean+0)
#16 0x000000000034e21c /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.2845697060370838518)+428) (BuildId: 1ee2c234829500686eefa384068e67c8)
#17 0x000000000035c5b0 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 1ee2c234829500686eefa384068e67c8)
#18 0x000000000076df64 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 1ee2c234829500686eefa384068e67c8)
#19 0x000000000037b5d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 1ee2c234829500686eefa384068e67c8)
#20 0x000000000012b6fc /apex/com.android.art/javalib/core-oj.jar (java.lang.ref.ReferenceQueue.enqueuePending+0)
#21 0x000000000034e21c /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.2845697060370838518)+428) (BuildId: 1ee2c234829500686eefa384068e67c8)
#22 0x000000000035c5b0 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 1ee2c234829500686eefa384068e67c8)
#23 0x000000000076df64 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 1ee2c234829500686eefa384068e67c8)
#24 0x000000000037b5d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 1ee2c234829500686eefa384068e67c8)
#25 0x000000000002c164 /apex/com.android.art/javalib/core-libart.jar (java.lang.Daemons$ReferenceQueueDaemon.runInternal+0)
#26 0x000000000034e21c /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.2845697060370838518)+428) (BuildId: 1ee2c234829500686eefa384068e67c8)
#27 0x000000000035c5b0 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 1ee2c234829500686eefa384068e67c8)
#28 0x000000000076df64 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 1ee2c234829500686eefa384068e67c8)
#29 0x000000000037b5d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 1ee2c234829500686eefa384068e67c8)
#30 0x000000000002b314 /apex/com.android.art/javalib/core-libart.jar (java.lang.Daemons$Daemon.run+0)
#31 0x000000000034e21c /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.2845697060370838518)+428) (BuildId: 1ee2c234829500686eefa384068e67c8)
#32 0x000000000035c5b0 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 1ee2c234829500686eefa384068e67c8)
#33 0x000000000076df64 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 1ee2c234829500686eefa384068e67c8)
#34 0x000000000037b5d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 1ee2c234829500686eefa384068e67c8)
#35 0x0000000000117a28 /apex/com.android.art/javalib/core-oj.jar (java.lang.Thread.run+0)
#36 0x000000000034d5a8 /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+1932) (BuildId: 1ee2c234829500686eefa384068e67c8)
#37 0x0000000000379098 /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88) (BuildId: 1ee2c234829500686eefa384068e67c8)
#38 0x0000000000362774 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+612) (BuildId: 1ee2c234829500686eefa384068e67c8)
#39 0x000000000034def0 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+132) (BuildId: 1ee2c234829500686eefa384068e67c8)
#40 0x0000000000943e28 /apex/com.android.art/lib64/libart.so (_ZN3art9ArtMethod14InvokeInstanceILc86ETpTncJEEENS_6detail12ShortyTraitsIXT_EE4TypeEPNS_6ThreadENS_6ObjPtrINS_6mirror6ObjectEEEDpNS3_IXT0_EE4TypeE+60) (BuildId: 1ee2c234829500686eefa384068e67c8)
#41 0x000000000063ebd4 /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallback(void*)+1344) (BuildId: 1ee2c234829500686eefa384068e67c8)
#42 0x00000000000b1810 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+264) (BuildId: cd7952cb40d1a2deca6420c2da7910be)
#43 0x00000000000512f0 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: cd7952cb40d1a2deca6420c2da7910be)
Crash dump is completed
Or that one:
Code: Select all
10-23 11:16:27.477 26696 26734 E ZgeAndroid: UpdateScreen: Starting screen update
10-23 11:16:27.478 26696 26734 E ZgeAndroid: UpdateScreen: Starting render pass 0
10-23 11:16:27.478 26696 26734 E ZgeAndroid: UpdateScreen: Updating viewport
10-23 11:16:27.478 26696 26734 E ZgeAndroid: UpdateScreen: Applying camera transform
10-23 11:16:27.478 26696 26734 E ZgeAndroid: UpdateScreen: Clearing screen with ClearColor
10-23 11:16:27.478 26696 26734 E ZgeAndroid: UpdateScreen: Setting ambient light color
10-23 11:16:27.478 26696 26734 E ZgeAndroid: UpdateScreen: Applying default light
10-23 11:16:27.478 26696 26734 E ZgeAndroid: UpdateScreen: Enabling default material
10-23 11:16:27.478 26696 26734 E ZgeAndroid: UpdateScreen: Rendering models
10-23 11:16:27.478 26696 26734 E ZgeAndroid: UpdateScreen: Rendering application and current state
10-23 11:16:27.478 26696 26734 E ZgeAndroid: CPUs: 8
Code: Select all
********** Crash dump: **********
Build fingerprint: 'google/sargo/sargo:12/SP2A.220505.008/8782922:user/release-keys'
Abort message: 'Scudo ERROR: corrupted chunk header at address 0x2000070145e0af0
#00 0x000000000004facc /apex/com.android.runtime/lib64/bionic/libc.so (abort+164) (BuildId: cd7952cb40d1a2deca6420c2da7910be)
#01 0x0000000000040364 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::die()+8) (BuildId: cd7952cb40d1a2deca6420c2da7910be)
#02 0x0000000000040a10 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::ScopedErrorReport::~ScopedErrorReport()+32) (BuildId: cd7952cb40d1a2deca6420c2da7910be)
#03 0x0000000000040ad8 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::reportHeaderCorruption(void*)+60) (BuildId: cd7952cb40d1a2deca6420c2da7910be)
#04 0x0000000000042238 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::Allocator<scudo::AndroidConfig, &(scudo_malloc_postinit)>::deallocate(void*, scudo::Chunk::Origin, unsigned long, unsigned long)+296) (BuildId: cd7952cb40d1a2deca6420c2da7910be)
#05 0x0000000000216c54 /vendor/lib64/libllvm-glnext.so (!!!0000!42f27a605c8ab1cde0f82aa028959f!781e7d0!+4052) (BuildId: 667eaf842f14e883b58806d6da95fbda)
#06 0x0000000000214d10 /vendor/lib64/libllvm-glnext.so (!!!0000!4318d8ed047ac0a2c63359d8f65122!781e7d0!+16) (BuildId: 667eaf842f14e883b58806d6da95fbda)
#07 0x00000000007c3074 /vendor/lib64/libllvm-glnext.so (!!!0000!349710a61ef202d86ab9fcab53d6c8!781e7d0!+136) (BuildId: 667eaf842f14e883b58806d6da95fbda)
#08 0x0000000000872970 /vendor/lib64/libllvm-glnext.so (QGLCLinkProgram(void*, unsigned int, QGLC_SRCSHADER_IRSHADER**, QGLC_LINKPROGRAM_DATA*, QGLC_LINKPROGRAM_RESULT*)+124) (BuildId: 667eaf842f14e883b58806d6da95fbda)
#09 0x0000000000212fe4 /vendor/lib64/egl/libGLESv2_adreno.so (!!!0000!21c3d0e01b653442370882debb8a54!781e7d0!+2516) (BuildId: ff1097fb39e8bf5a42c6adfc673009a8)
#10 0x00000000001e7fc4 /vendor/lib64/egl/libGLESv2_adreno.so (!!!0000!8b96d97b28460c2822a5897b3ff6e2!781e7d0!+436) (BuildId: ff1097fb39e8bf5a42c6adfc673009a8)
#11 0x0000000000130a68 /vendor/lib64/egl/libGLESv2_adreno.so (!!!0000!5094ab766f406130e15d3aad524265!781e7d0!+88) (BuildId: ff1097fb39e8bf5a42c6adfc673009a8)
#12 0x000000000002ba50 /vendor/lib64/egl/libGLESv1_CM_adreno.so (gliSetShaderProgram+1664) (BuildId: ef219156adf1d883c02f44e4c1fc04b2)
#13 0x00000000000225e0 /vendor/lib64/egl/libGLESv1_CM_adreno.so (validateShadowState+7272) (BuildId: ef219156adf1d883c02f44e4c1fc04b2)
#14 0x0000000000023a2c /vendor/lib64/egl/libGLESv1_CM_adreno.so (glDrawElements+152) (BuildId: ef219156adf1d883c02f44e4c1fc04b2)
#15 0x000000000007c7dc /data/app/~~aWdRCdb2k5chInOGGRdnxw==/com.txori.omeganaut-17HIM0oiQbsuOA9Guxm1GQ==/lib/arm64/libzgeandroid.so (GLDRIVERS$_$TGLDRIVERFIXED_$__$$_RENDERMESH$TMESH+476) (BuildId: 23cb1c17ff785b7cc4fc7ef786aea4b9b20afed1)
Crash dump is completed
So I plan to add traces to GLDrivers.pas / RenderMesh...
What is the difference between procedure TGLDriverFixed.RenderMesh(Mesh: TMesh); and procedure TGLDriverProgrammable.RenderMesh(Mesh: TMesh); ?
Re: Google Play New problem : 64bits
Hi Ats,
K
One is for the fixed-function pipeline ( legacy OpenGL ), the other is for use with shaders ( modern OpenGL ). The fixed-function pipeline had functions specifically for vertex positions / colors / normals / texCoords ... these all got removed in ( for example ) ES 2.0 as they were no longer necessary.
K