Google Play New problem : 64bits

All topics about ZGameEditor goes here.

Moderator: Moderators

User avatar
Ats
Posts: 800
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

If that helps, in ZOpenGL.pas, I added the trace for the name of the Non-implemented GL function called.

Code: Select all

var
  _shown : boolean = false;
  CurrentFuncName: PAnsiChar = nil;
procedure GlNotImp;
begin
  if not _shown then
  begin
    if CurrentFuncName <> nil then
      Platform_Error(PChar('Non-implemented GL function called: ' + string(CurrentFuncName)))
    else
      Platform_Error('Non-implemented GL function called');
    _shown := true; 
  end;
end;

...

  for I := 0 to High(FuncArray) do
  begin;
    if FuncArray[I].Ptr^=nil then
    begin
      FuncArray[I].Ptr^ := @GlNotImp;
      CurrentFuncName := FuncArray[I].Name;  // Track the name of the function
    end;
  end;
For Omeganaut, it traces: ZgeAndroid: Non-implemented GL function called: glColor4f
I added traces on java onPause, onStart, onResume... Is it normal that it calls those in this order? And complains about glColor4f only once?

Code: Select all

12-08 10:34:41.320 11657 11657 I ZgeAndroid: ZGEjava omeganaut
12-08 10:34:41.322 11657 11657 E ZgeAndroid: /storage/emulated/0
12-08 10:34:41.322 11657 11657 E ZgeAndroid: /data/user/0/com.txori.omeganaut/files/
12-08 10:34:41.322 11657 11657 E ZgeAndroid: /data/app/~~jGZ0Gr8SBddCuVXJD3t6SA==/com.txori.omeganaut-_5iED6KS5mqI_W0e9D3SKg==/lib/arm64/
12-08 10:34:41.322 11657 11657 I ZgeAndroid: About to open: zzdc.dat
12-08 10:34:41.322 11657 11657 I ZgeAndroid: Open ok, available: 1889152
12-08 10:34:41.513 11657 11657 E ZgeAndroid: Function not found: JNI_OnLoad
12-08 10:34:41.513 11657 11657 E ZgeAndroid: Function not found: glColorPointer
12-08 10:34:41.513 11657 11657 E ZgeAndroid: Function not found: glDepthRange
12-08 10:34:41.513 11657 11657 E ZgeAndroid: Function not found: glDisableClientState
12-08 10:34:41.513 11657 11657 E ZgeAndroid: Function not found: glEnableClientState
12-08 10:34:41.513 11657 11657 E ZgeAndroid: Function not found: glGenLists
12-08 10:34:41.513 11657 11657 E ZgeAndroid: Function not found: glMateriali
12-08 10:34:41.513 11657 11657 E ZgeAndroid: Function not found: glIndexMask
12-08 10:34:41.513 11657 11657 E ZgeAndroid: Function not found: glLightModelf
12-08 10:34:41.513 11657 11657 E ZgeAndroid: Function not found: glLightModelfv
12-08 10:34:41.513 11657 11657 E ZgeAndroid: Function not found: glLightfv
12-08 10:34:41.513 11657 11657 E ZgeAndroid: Function not found: glListBase
12-08 10:34:41.513 11657 11657 E ZgeAndroid: Function not found: glLoadIdentity
12-08 10:34:41.513 11657 11657 E ZgeAndroid: Function not found: glLoadMatrixf
12-08 10:34:41.513 11657 11657 E ZgeAndroid: Function not found: glMaterialf
12-08 10:34:41.513 11657 11657 E ZgeAndroid: Function not found: glMaterialfv
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glMatrixMode
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glNormal3f
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glNormalPointer
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glOrthof
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glFrustumf
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glBegin
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glCallList
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glColor3f
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glColor3fv
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glColor4fv
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glEnd
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glColorMaterial
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glDeleteLists
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glDrawBuffer
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glGetTexImage
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glPolygonMode
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glPopAttrib
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glPushAttrib
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glRasterPos2f
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glTexCoord2f
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glVertex2f
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glVertex3f
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glPointSize
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glPopMatrix
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glPushMatrix
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glRotatef
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glScalef
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glShadeModel
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glTexCoordPointer
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glTexGeni
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glTranslatef
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glVertexPointer
12-08 10:34:41.514 11657 11657 E ZgeAndroid: Function not found: glColor4f
12-08 10:34:41.515 11657 11657 E ZgeAndroid: Function not found: glClientActiveTexture
12-08 10:34:41.515 11657 11657 E ZgeAndroid: Function not found: glTexImage2DMultisample
12-08 10:34:41.515 11657 11657 E ZgeAndroid: Non-implemented GL function called: glColor4f
12-08 10:34:41.515 11657 11692 E ZgeAndroid: audiocallback started
12-08 10:34:41.515 11657 11657 E ZgeAndroid: GLBase: 2
12-08 10:34:41.515 11657 11657 I ZgeAndroid: GLES 2
12-08 10:34:41.518 11657 11657 I ZgeAndroid: start
12-08 10:34:41.520 11657 11657 I ZgeAndroid: resume
12-08 10:34:41.577 11657 11693 I ZgeAndroid: SurfaceCreated: OpenGL ES 3.2 v1.r27p0-01eac0.bfc9f89b34c882ca6dc6566781e4f990
12-08 10:34:41.577 11657 11693 I ZgeAndroid: SurfaceChanged
12-08 10:34:41.579 11657 11693 E ZgeAndroid: Function not found: JNI_OnLoad
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glColorPointer
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glDepthRange
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glDisableClientState
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glEnableClientState
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glGenLists
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glMateriali
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glIndexMask
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glLightModelf
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glLightModelfv
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glLightfv
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glListBase
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glLoadIdentity
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glLoadMatrixf
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glMaterialf
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glMaterialfv
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glMatrixMode
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glNormal3f
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glNormalPointer
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glOrthof
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glFrustumf
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glBegin
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glCallList
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glColor3f
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glColor3fv
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glColor4fv
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glEnd
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glColorMaterial
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glDeleteLists
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glDrawBuffer
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glGetTexImage
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glPolygonMode
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glPopAttrib
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glPushAttrib
12-08 10:34:41.580 11657 11693 E ZgeAndroid: Function not found: glRasterPos2f
12-08 10:34:41.581 11657 11693 E ZgeAndroid: Function not found: glTexCoord2f
12-08 10:34:41.581 11657 11693 E ZgeAndroid: Function not found: glVertex2f
12-08 10:34:41.581 11657 11693 E ZgeAndroid: Function not found: glVertex3f
12-08 10:34:41.581 11657 11693 E ZgeAndroid: Function not found: glPointSize
12-08 10:34:41.581 11657 11693 E ZgeAndroid: Function not found: glPopMatrix
12-08 10:34:41.581 11657 11693 E ZgeAndroid: Function not found: glPushMatrix
12-08 10:34:41.581 11657 11693 E ZgeAndroid: Function not found: glRotatef
12-08 10:34:41.581 11657 11693 E ZgeAndroid: Function not found: glScalef
12-08 10:34:41.581 11657 11693 E ZgeAndroid: Function not found: glShadeModel
12-08 10:34:41.581 11657 11693 E ZgeAndroid: Function not found: glTexCoordPointer
12-08 10:34:41.582 11657 11693 E ZgeAndroid: Function not found: glTexGeni
12-08 10:34:41.582 11657 11693 E ZgeAndroid: Function not found: glTranslatef
12-08 10:34:41.582 11657 11693 E ZgeAndroid: Function not found: glVertexPointer
12-08 10:34:41.582 11657 11693 E ZgeAndroid: Function not found: glColor4f
12-08 10:34:41.584 11657 11693 E ZgeAndroid: Function not found: glClientActiveTexture
12-08 10:34:41.584 11657 11693 E ZgeAndroid: Function not found: glTexImage2DMultisample
12-08 10:34:41.607 11657 11693 E ZgeAndroid: Function not found: JNI_OnLoad
12-08 10:34:51.043 11657 11693 E ZgeAndroid: Function not found: JNI_OnLoad
12-08 10:34:51.044 11657 11693 E ZgeAndroid: CPUs: 8
It does not complain about glColor4f in my previous BitmapNoise test.
User avatar
VilleK
Site Admin
Posts: 2371
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

Re: Google Play New problem : 64bits

Post by VilleK »

About Zge.Java: I think the logic is that it copies it to the app directory only if it is newer than the destination. To avoid overwriting any app-specific changes.

It seems the built in Android OpenGL logging have no effect because I can see no such lines in the log. I guess they have removed this feature in newer Android versions.

It would still be interesting to know that causes those "no current context" calls but I'm not sure how. Maybe if you can debug the Java code (Zge.java) from Android studio and single step line by line until you see that message in the log.
User avatar
Ats
Posts: 800
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

Sorry, I still don't understand how to import a project that isn't gradle friendly to Android Studio... But I can add traces!

Here's the initialization of the app (Omeganaut, Pixel 7 64 bits)

Code: Select all

11:14:57.028  I  Start proc 26522:com.txori.omeganaut/u0a489 for next-top-activity {com.txori.omeganaut/org.zgameeditor.ZgeActivity}
11:14:57.029  I  SetHeapTaggingLevel: tag level set to 0
11:14:57.029  D  onFixedRotationStarted: TaskInfo{userId=0 taskId=7859 displayId=0 isRunning=true baseIntent=Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.google.android.youtube/.app.honeycomb.Shell$HomeActivity } baseActivity=ComponentInfo{com.google.android.youtube/com.google.android.apps.youtube.app.watchwhile.MainActivity} topActivity=ComponentInfo{com.google.android.youtube/com.google.android.apps.youtube.app.watchwhile.MainActivity} origActivity=ComponentInfo{com.google.android.youtube/com.google.android.youtube.app.honeycomb.Shell$HomeActivity} realActivity=ComponentInfo{com.google.android.youtube/com.google.android.apps.youtube.app.watchwhile.MainActivity} numActivities=1 lastActiveTime=2069917873 supportsMultiWindow=true resizeMode=2 isResizeable=true minWidth=-1 minHeight=-1 defaultMinSize=220 token=WCT{android.window.IWindowContainerToken$Stub$Proxy@a299224} topActivityType=1 pictureInPictureParams=PictureInPictureParams( aspectRatio=427/240 expandedAspectRatio=null sourceRectHint=Rect(0, 108 - 1080, 715) hasSetActions=false hasSetCloseAction=false isAutoPipEnabled=true isSeamlessResizeEnabled=true title=null subtitle=null isLaunchIntoPip=false) shouldDockBigOverlays=false launchIntoPipHostTaskId=-1 lastParentTaskIdBeforePip=-1 displayCutoutSafeInsets=null topActivityInfo=ActivityInfo{a12618d com.google.android.youtube.app.honeycomb.Shell$HomeActivity} launchCookies=[android.os.BinderProxy@2513c6f] positionInParent=Point(0, 0) parentTaskId=-1 isFocused=true isVisible=true isVisibleRequested=true isSleeping=false locusId=null displayAreaFeatureId=1 isTopActivityTransparent=false appCompatTaskInfo=AppCompatTaskInfo { topActivityInSizeCompat=false topActivityEligibleForLetterboxEducation= falseisLetterboxEducationEnabled= false isLetterboxDoubleTapEnabled= false topActivityEligibleForUserAspectRatioButton= false topActivityBoundsLetterboxed= false isFromLetterboxDoubleTap= false topActivityLetterboxVerticalPosition= -1 topActivityLetterboxHorizontalPosition= -1 topActivityLetterboxWidth=1080 topActivityLetterboxHeight=2340 isUserFullscreenOverrideEnabled=false isSystemFullscreenOverrideEnabled=false cameraCompatTaskInfo=CameraCompatTaskInfo { cameraCompatControlState=hidden freeformCameraCompatMode=inactive}}}, state=PipTransitionState(mState=undefined, mInSwipePipToHomeTransition=false)
11:14:57.032  I  Late-enabling -Xcheck:jni
11:14:57.033  W  Unable to set buffer name VRI[omeganaut]#13813(BLAST Consumer)13813: File name too long
11:14:57.034  W  Unable to set buffer name VRI[omeganaut]#13813(BLAST Consumer)13813: File name too long
11:14:57.035  D  low-latency-playback routing:
11:14:57.035  D  dev: 0x2 
11:14:57.035  W  Unable to set buffer name VRI[omeganaut]#13813(BLAST Consumer)13813: File name too long
11:14:57.036  W  Unable to set buffer name VRI[omeganaut]#13813(BLAST Consumer)13813: File name too long
11:14:57.037  W  Unable to set buffer name VRI[omeganaut]#13813(BLAST Consumer)13813: File name too long
11:14:57.038  D  logFgsApiBegin: FGS Logger Transaction failed, -129
11:14:57.039  W  No piid assigned for invalid/internal port id 33030
11:14:57.039  D  update stream 1 active 1 gain 0.007182
11:14:57.040  D  prepare low-latency-playback
11:14:57.040  D  st_uc_monitor:uc:low-latency-playback active
11:14:57.040  D  low-latency-playback:
11:14:57.040  D  rx:
11:14:57.040  D    #0: OUT_SPEAKER_BE_CFG 0
11:14:57.040  W  cs35l41_amp_common_event: ret: 0, event: 1, state: 2, device: 4
11:14:57.040  D  Apply path: speaker
11:14:57.044  V  Sent Transition (#21295) createdAt=12-09 11:14:56.999 via request=TransitionRequestInfo { type = OPEN, triggerTask = TaskInfo{userId=0 taskId=7883 displayId=0 isRunning=true baseIntent=Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.txori.omeganaut/org.zgameeditor.ZgeActivity } baseActivity=ComponentInfo{com.txori.omeganaut/org.zgameeditor.ZgeActivity} topActivity=ComponentInfo{com.txori.omeganaut/org.zgameeditor.ZgeActivity} origActivity=null realActivity=ComponentInfo{com.txori.omeganaut/org.zgameeditor.ZgeActivity} numActivities=1 lastActiveTime=2073715049 supportsMultiWindow=true resizeMode=1 isResizeable=true minWidth=-1 minHeight=-1 defaultMinSize=220 token=WCT{RemoteToken{71f266e Task{dfaf940 #7883 type=standard A=10489:com.txori.omeganaut}}} topActivityType=1 pictureInPictureParams=null shouldDockBigOverlays=false launchIntoPipHostTaskId=-1 lastParentTaskIdBeforePip=-1 displayCutoutSafeInsets=Rect(0, 108 - 0, 0) topActivityInfo=ActivityInfo{d0d110f org.zgameeditor.ZgeActivity} launchCookies=[android.os.BinderProxy@a5d059c] positionInParent=Point(0, 0) parentTaskId=-1 isFocused=false isVisible=false isVisibleRequested=false isSleeping=false locusId=null displayAreaFeatureId=1 isTopActivityTransparent=false appCompatTaskInfo=AppCompatTaskInfo { topActivityInSizeCompat=false topActivityEligibleForLetterboxEducation= falseisLetterboxEducationEnabled= false isLetterboxDoubleTapEnabled= false topActivityEligibleForUserAspectRatioButton= false topActivityBoundsLetterboxed= false isFromLetterboxDoubleTap= false topActivityLetterboxVerticalPosition= -1 topActivityLetterboxHorizontalPosition= -1 topActivityLetterboxWidth=1080 topActivityLetterboxHeight=2340 isUserFullscreenOverrideEnabled=false isSystemFullscreenOverrideEnabled=false cameraCompatTaskInfo=CameraCompatTaskInfo { cameraCompatControlState=hidden freeformCameraCompatMode=inactive}}}, pipTask = null, remoteTransition = RemoteTransition { remoteTransition = android.window.IRemoteTransition$Stub$Proxy@3f91ba5, appThread = android.app.IApplicationThread$Stub$Proxy@e1b3b7a, debugName = QuickstepLaunch }, displayChange = null, flags = 0, debugId = 21295 }
11:14:57.044  V      startWCT=WindowContainerTransaction { changes = {} hops = [] errorCallbackToken=null taskFragmentOrganizer=null }
11:14:57.044  V      info={id=21295 t=OPEN f=0x0 trk=0 r=[0@Point(0, 0)] c=[
                         {WCT{RemoteToken{71f266e Task{dfaf940 #7883 type=standard A=10489:com.txori.omeganaut}}} m=OPEN f=NONE leash=Surface(name=Task=7883)/@0x97e8a22 sb=Rect(0, 0 - 1080, 2340) eb=Rect(0, 0 - 1080, 2340) d=0 endFixedRotation=1 taskParent=-1},
                         {WCT{RemoteToken{1d6d62f Task{8fbd8d3 #1 type=home}}} m=TO_BACK f=SHOW_WALLPAPER leash=Surface(name=Task=1)/@0x5ca8209 sb=Rect(0, 0 - 1080, 2340) eb=Rect(0, 0 - 1080, 2340) d=0 taskParent=-1}
                     ]}
11:14:57.046  V  onTransitionReady(transaction=7988640280015)
11:14:57.046  V  onTransitionReady (#21295) android.os.BinderProxy@4ca4226: {id=21295 t=OPEN f=0x0 trk=0 r=[0@Point(0, 0)] c=[{WCT{android.window.IWindowContainerToken$Stub$Proxy@d02aa44} m=OPEN f=NONE leash=Surface(name=Task=7883)/@0x1a5ecf1 sb=Rect(0, 0 - 1080, 2340) eb=Rect(0, 0 - 1080, 2340) d=0 endFixedRotation=1 taskParent=-1},{WCT{android.window.IWindowContainerToken$Stub$Proxy@e9b672d} m=TO_BACK f=SHOW_WALLPAPER leash=Surface(name=Task=1)/@0x53d80d6 sb=Rect(0, 0 - 1080, 2340) eb=Rect(0, 0 - 1080, 2340) d=0 taskParent=-1}]}
11:14:57.046  V  Playing animation for (#21295) android.os.BinderProxy@4ca4226@0
11:14:57.046  V   try firstHandler com.android.wm.shell.transition.DefaultMixedHandler@155cfee
11:14:57.046  V  Mixed transition for opening an intent with a remote transition and PIP #21295
11:14:57.046  V   Delegate animation for (#21295) to RemoteTransition { remoteTransition = android.window.IRemoteTransition$Stub$Proxy@1fc5d80, appThread = android.app.IApplicationThread$Stub$Proxy@df0ffb9, debugName = QuickstepLaunch }
11:14:57.047  D  speaker 1
11:14:57.047  D  Apply path: hostless-ulC spk-vi
11:14:57.048  W  cs35l41_amp_common_event: ret: 0, event: 2, state: 3, device: 4
11:14:57.048  D  st_comm_aud_event_monitor:codec dev:4 active
11:14:57.048  I  Mode Ambient is already selected
11:14:57.048  D  Apply path: low-latency-playbackP
11:14:57.048  D  ProcessPlaybackTunerControl: update playback tuner 1
11:14:57.048  D  UpdateThrottleState: 2->1 T
11:14:57.048  D  UpdateThrottleState: update tuning!
11:14:57.049  D  low-latency-playbackP 1
11:14:57.049  D  Apply path: speaker-post
11:14:57.049  D  F1:MSG: controller.cc, 275: AudioOutCtrl: cmd ID: 0x010f, tag: 0x02 [cntr = 94040]
11:14:57.049  D  F1:Source 1 [Primary] mastered by sink 0 [Speaker]
11:14:57.049  D  F1:AT Map:2 (LL:0), 1 EPs active, Power: Yes, Config: No
11:14:57.049  W  Requested status bar icon for non-badged user 0
11:14:57.050  D  speaker-post 1
11:14:57.050  D  F1:Mixer 0 configuration changed: (2)
11:14:57.050  D  F1:Sink 0 Configuration changed: ULL (enabled)
11:14:57.050  D  F1:AHWSinkSPKR started: 48 samples (32-bit,2 ch,48 kHz) block 384 ts_en 0
11:14:57.050  D  F1:[AHWSinkSPKR] DL resync B: 2660, A:2660. wo: 1700, target offset: 4800 (align 164) -> ro:4800
11:14:57.050  D  F1:ERR: mix_creator.cc, 136: Source CHP is not registered with AHWSinkSPKR
11:14:57.050  D  F1:Speaker TDM Started with Clk: 6144 KHz, FS: 48 KHz, Slots: 4 (4 ch used) DMA:1+2
11:14:57.051  D  F1:MSG: controller.cc, 910: AudioOutCtrl: ipc: audio_output_co, cmd ID: 0x010f, tag: 0x02, rc: 0
11:14:57.051  D  H0:Mixer AMixSPKR: 480 samples (0002/0002) (ON SC)
11:14:57.051  D  H0:	 1: 0x4e9de8
11:14:57.051  D  waves_usecase_event: low-latency-playback start
11:14:57.051  D  waves_usecase_event: trigger to update tuning when first track is running.
11:14:57.051  D  update_sink_info_from_usecases: sink 1 VOL/Stream update 0.000000(4294967295) -> 0.007182(1)
11:14:57.051  D  H0:AMixSPKR PostProcessing Config: WAVES
11:14:57.051  D  H0:Mixer configuration updated
11:14:57.052  D  H0:[Idle Tracker] long no idle:[0] average between idle:[2.115254ms] max no idle:[43.670535ms]
11:14:57.052  D  H0:Mixer state changed
11:14:57.052  D  send_waves_tuning: instance_id = 1, tuning_id = 2
11:14:57.052  D  F1:MSG: controller.cc, 275: AudioOutCtrl: cmd ID: 0x00ce, tag: 0x03 [cntr = 94041]
11:14:57.052  D  aoc_send_rtc_mixer_tuning: block_id = 16, comp_id = 2
11:14:57.052  D  F1:MSG: controller_audio_output.cc, 1895: audio_playback1 set default threshold 11520
11:14:57.052  D  F1:MSG: controller.cc, 910: AudioOutCtrl: ipc: audio_output_co, cmd ID: 0x012d, tag: 0xc4, rc: 0
11:14:57.052  D  F1:MSG: controller.cc, 275: AudioOutCtrl: cmd ID: 0x00d5, tag: 0xcb [cntr = 94042]
11:14:57.053  V   animated by firstHandler
11:14:57.054  D  H0:MSG: controller.cc, 910: AudOutCtrlH0: ipc: C-AO-H0, cmd ID: 0x00d5, tag: 0x43, rc: 0
11:14:57.054  D  F1:MSG: controller.cc, 910: AudioOutCtrl: ipc: audio_output_tu, cmd ID: 0x00d5, tag: 0x43, rc: 0
11:14:57.056  D  mSurface is null and mCurrentBlur is: 0
11:14:57.056  D  mSurface is null and mCurrentBlur is: 0
11:14:57.056  D  mSurface is null and mCurrentBlur is: 0
11:14:57.056  I  Using CollectorTypeCMC GC.
11:14:57.057  W  Unable to set buffer name VRI[omeganaut]#13813(BLAST Consumer)13813: File name too long
11:14:57.058  D  F1:MSG: controller.cc, 275: AudioOutCtrl: cmd ID: 0x00c9, tag: 0x04 [cntr = 94043]
11:14:57.058  D  F1:MSG: controller.cc, 910: AudioOutCtrl: ipc: audio_output_co, cmd ID: 0x00c9, tag: 0x04, rc: 0
11:14:57.061  I  jdwp connection from 26522
11:14:57.065  D  Load libframework-connectivity-tiramisu-jni.so using APEX ns com_android_tethering for caller /apex/com.android.tethering/javalib/framework-connectivity-t.jar: ok
11:14:57.070  W  Unable to set buffer name VRI[omeganaut]#13813(BLAST Consumer)13813: File name too long
11:14:57.072  D  mSurface is null and mCurrentBlur is: 0
11:14:57.076  D  Foreground UID status:
11:14:57.076  D  UID: 1002 is in foreground: true
11:14:57.076  D  UID: 10073 is in foreground: false
11:14:57.076  D  UID: 10085 is in foreground: false
11:14:57.076  D  UID: 10097 is in foreground: false
11:14:57.076  D  UID: 10120 is in foreground: false
11:14:57.076  D  UID: 10136 is in foreground: false
11:14:57.076  D  UID: 10143 is in foreground: false
11:14:57.076  D  UID: 10163 is in foreground: false
11:14:57.076  D  UID: 10165 is in foreground: false
11:14:57.076  D  UID: 10185 is in foreground: false
11:14:57.076  D  UID: 10192 is in foreground: true
11:14:57.076  D  UID: 10202 is in foreground: true
11:14:57.076  D  UID: 10220 is in foreground: true
11:14:57.076  D  UID: 10226 is in foreground: true
11:14:57.076  D  UID: 10232 is in foreground: false
11:14:57.076  D  UID: 10242 is in foreground: true
11:14:57.076  D  UID: 10243 is in foreground: true
11:14:57.076  D  UID: 10245 is in foreground: false
11:14:57.076  D  UID: 10489 is in foreground: true
11:14:57.099  D  Returning zygote-cached class loader: /system/framework/android.test.base.jar
11:14:57.100  W  Unable to open '/data/app/~~r-_QuPGJLpp-T9I_cqsh_A==/com.txori.omeganaut-mQwsHroeyru6bBHfZYsXLQ==/base.dm': No such file or directory
11:14:57.100  W  Unable to open '/data/app/~~r-_QuPGJLpp-T9I_cqsh_A==/com.txori.omeganaut-mQwsHroeyru6bBHfZYsXLQ==/base.dm': No such file or directory
11:14:57.101  D  Configuring clns-7 for other apk /data/app/~~r-_QuPGJLpp-T9I_cqsh_A==/com.txori.omeganaut-mQwsHroeyru6bBHfZYsXLQ==/base.apk. target_sdk_version=29, uses_libraries=, library_path=/data/app/~~r-_QuPGJLpp-T9I_cqsh_A==/com.txori.omeganaut-mQwsHroeyru6bBHfZYsXLQ==/lib/arm64:/data/app/~~r-_QuPGJLpp-T9I_cqsh_A==/com.txori.omeganaut-mQwsHroeyru6bBHfZYsXLQ==/base.apk!/lib/arm64-v8a, permitted_path=/data:/mnt/expand:/data/user/0/com.txori.omeganaut
11:14:57.101  D  Extending system_exposed_libraries: libedgetpu_dba.google.so
11:14:57.106  E  [PrimaryDisplay] resetColorMappingInfoForClientComp:: resetColorMappingInfo() idx=1 error(-22)
11:14:57.106  E  Fail to open file /data/vendor/log/hwc/PrimaryDisplay_hwc_error_log0.txt, error: Permission denied
11:14:57.106  E  Fail to open file /data/log/PrimaryDisplay_hwc_error_log0.txt, error: No such file or directory
11:14:57.106  E  Unable to open log file for PrimaryDisplay_hwc_error_log0.txt
11:14:57.100  W  type=1400 audit(0.0:271510): avc:  denied  { search } for  name="log" dev="dm-74" ino=315 scontext=u:r:hal_graphics_composer_default:s0 tcontext=u:object_r:vendor_log_file:s0 tclass=dir permissive=0
11:14:57.100  W  type=1400 audit(0.0:271511): avc:  denied  { search } for  name="log" dev="dm-74" ino=315 scontext=u:r:hal_graphics_composer_default:s0 tcontext=u:object_r:vendor_log_file:s0 tclass=dir permissive=0
11:14:57.115  V  Currently set values for:
11:14:57.115  V    angle_gl_driver_selection_pkgs=[com.android.angle, com.linecorp.b612.android, com.campmobile.snow, com.google.android.apps.tachyon]
11:14:57.115  V    angle_gl_driver_selection_values=[angle, native, native, native]
11:14:57.115  V  com.txori.omeganaut is not listed in per-application setting
11:14:57.115  V  Neither updatable production driver nor prerelease driver is supported.
11:14:57.132  D  searching for layers in '/data/app/~~r-_QuPGJLpp-T9I_cqsh_A==/com.txori.omeganaut-mQwsHroeyru6bBHfZYsXLQ==/lib/arm64'
11:14:57.132  D  searching for layers in '/data/app/~~r-_QuPGJLpp-T9I_cqsh_A==/com.txori.omeganaut-mQwsHroeyru6bBHfZYsXLQ==/base.apk!/lib/arm64-v8a'
11:14:57.159  D  Load /data/app/~~r-_QuPGJLpp-T9I_cqsh_A==/com.txori.omeganaut-mQwsHroeyru6bBHfZYsXLQ==/lib/arm64/libzgeandroid.so using ns clns-7 from class loader (caller=/data/app/~~r-_QuPGJLpp-T9I_cqsh_A==/com.txori.omeganaut-mQwsHroeyru6bBHfZYsXLQ==/base.apk): ok
11:14:57.165  I  ZGEjava omeganaut
11:14:57.166  E  /storage/emulated/0
11:14:57.166  E  /data/user/0/com.txori.omeganaut/files/
11:14:57.166  E  /data/app/~~r-_QuPGJLpp-T9I_cqsh_A==/com.txori.omeganaut-mQwsHroeyru6bBHfZYsXLQ==/lib/arm64/
11:14:57.166  I  zge java initZApp
11:14:57.166  I  About to open: zzdc.dat
11:14:57.167  I  Open ok, available: 1889148
11:14:57.169  I  zge java NativeSetDataContent
11:14:57.224  D  logFgsApiEnd: FGS Logger Transaction failed, -129
11:14:57.224  W  update_third_party_effect_amcs_data:fail to send ioctl amcs, ret -1
11:14:57.224  W  fail on interact with audio_amcs_ext.so -1
11:14:57.224  D  update_sink_info_from_usecases: update amcs, instance id 1, volume 173 0 0 0 0 0 0 0 0 0
11:14:57.224  D  update stream 1 active 0 gain 0.000000
11:14:57.228  E  Function not found: JNI_OnLoad
11:14:57.228  E  Function not found: glColorPointer
11:14:57.228  E  Function not found: glDepthRange
11:14:57.228  E  Function not found: glDisableClientState
11:14:57.228  E  Function not found: glEnableClientState
11:14:57.228  E  Function not found: glGenLists
11:14:57.228  E  Function not found: glMateriali
11:14:57.228  E  Function not found: glIndexMask
11:14:57.228  E  Function not found: glLightModelf
11:14:57.228  E  Function not found: glLightModelfv
11:14:57.228  E  Function not found: glLightfv
11:14:57.228  E  Function not found: glListBase
11:14:57.228  E  Function not found: glLoadIdentity
11:14:57.228  E  Function not found: glLoadMatrixf
11:14:57.228  E  Function not found: glMaterialf
11:14:57.228  E  Function not found: glMaterialfv
11:14:57.228  E  Function not found: glMatrixMode
11:14:57.228  E  Function not found: glNormal3f
11:14:57.228  E  Function not found: glNormalPointer
11:14:57.228  E  Function not found: glOrthof
11:14:57.228  E  Function not found: glFrustumf
11:14:57.228  E  Function not found: glBegin
11:14:57.228  E  Function not found: glCallList
11:14:57.228  E  Function not found: glColor3f
11:14:57.228  E  Function not found: glColor3fv
11:14:57.228  E  Function not found: glColor4fv
11:14:57.228  E  Function not found: glEnd
11:14:57.228  E  Function not found: glColorMaterial
11:14:57.228  E  Function not found: glDeleteLists
11:14:57.228  E  Function not found: glDrawBuffer
11:14:57.228  E  Function not found: glGetTexImage
11:14:57.228  E  Function not found: glPolygonMode
11:14:57.228  E  Function not found: glPopAttrib
11:14:57.228  E  Function not found: glPushAttrib
11:14:57.228  E  Function not found: glRasterPos2f
11:14:57.228  E  Function not found: glTexCoord2f
11:14:57.228  E  Function not found: glVertex2f
11:14:57.228  E  Function not found: glVertex3f
11:14:57.228  E  Function not found: glPointSize
11:14:57.228  E  Function not found: glPopMatrix
11:14:57.228  E  Function not found: glPushMatrix
11:14:57.228  E  Function not found: glRotatef
11:14:57.228  E  Function not found: glScalef
11:14:57.228  E  Function not found: glShadeModel
11:14:57.228  E  Function not found: glTexCoordPointer
11:14:57.228  E  Function not found: glTexGeni
11:14:57.228  E  Function not found: glTranslatef
11:14:57.228  E  Function not found: glVertexPointer
11:14:57.228  E  Function not found: glColor4f
11:14:57.228  E  call to OpenGL ES API with no current context (logged once per thread)
11:14:57.228  E  call to OpenGL ES API with no current context (logged once per thread)
11:14:57.228  E  call to OpenGL ES API with no current context (logged once per thread)
11:14:57.228  E  Function not found: glClientActiveTexture
11:14:57.228  E  Function not found: glTexImage2DMultisample
11:14:57.228  E  Non-implemented GL function called: glColor4f
11:14:57.228  E  call to OpenGL ES API with no current context (logged once per thread)
11:14:57.228  E  call to OpenGL ES API with no current context (logged once per thread)
11:14:57.228  E  call to OpenGL ES API with no current context (logged once per thread)
11:14:57.228  E  call to OpenGL ES API with no current context (logged once per thread)
11:14:57.228  E  call to OpenGL ES API with no current context (logged once per thread)
11:14:57.228  E  call to OpenGL ES API with no current context (logged once per thread)
11:14:57.228  E  call to OpenGL ES API with no current context (logged once per thread)
11:14:57.229  I  zge java setZOrderOnTop
11:14:57.229  I  zge java setEGLConfigChooser
11:14:57.229  I  zge java getHolder setFormat
11:14:57.229  E  GLBase: 2
11:14:57.229  I  GLES 2
11:14:57.229  I  zge java setEGLContextClientVersion
11:14:57.229  I  zge java setDebugFlags
11:14:57.229  I  zge java CRenderer
11:14:57.229  I  zge java setRenderer
11:14:57.229  I  zge java setFocusableInTouchMode
11:14:57.229  E  audiocallback started
11:14:57.230  I  zge java onStart
11:14:57.230  I  zge java NativeActivate
11:14:57.232  I  zge java onResume
11:14:57.232  I  zge java super.onResume
11:14:57.232  I  zge java NativeActivate
11:14:57.239  D  Client defaulted notificationFrames to 2215 for frameCount 4430
11:14:57.246  W  Use of stream types is deprecated for operations other than volume control
11:14:57.246  W  See the documentation of AudioTrack() for what to use instead with android.media.AudioAttributes to qualify your playback use case
11:14:57.249  W  moveEffectChain_ll: effect chain for session 0 not on source thread 0xb400007504ba2fe8
11:14:57.249  W  Failed looking up window session=Session{3da5bff 26522:u0a10489} callers=com.android.server.wm.WindowManagerService.windowForClientLocked:6311 com.android.server.wm.Session.updateRequestedVisibleTypes:760 android.view.IWindowSession$Stub.onTransact:1078 
11:14:57.257  D  Window{2f13ab8 u0 com.txori.omeganaut/org.zgameeditor.ZgeActivity}: Setting back callback OnBackInvokedCallbackInfo{mCallback=android.window.IOnBackInvokedCallback$Stub$Proxy@4db4a64, mPriority=0, mIsAnimationCallback=false}
11:14:57.287  E  [PrimaryDisplay] resetColorMappingInfoForClientComp:: resetColorMappingInfo() idx=1 error(-22)
11:14:57.287  E  Fail to open file /data/vendor/log/hwc/PrimaryDisplay_hwc_error_log0.txt, error: Permission denied
11:14:57.287  E  Fail to open file /data/log/PrimaryDisplay_hwc_error_log0.txt, error: No such file or directory
11:14:57.287  E  Unable to open log file for PrimaryDisplay_hwc_error_log0.txt
11:14:57.280  W  type=1400 audit(0.0:271512): avc:  denied  { search } for  name="log" dev="dm-74" ino=315 scontext=u:r:hal_graphics_composer_default:s0 tcontext=u:object_r:vendor_log_file:s0 tclass=dir permissive=0
11:14:57.280  W  type=1400 audit(0.0:271513): avc:  denied  { search } for  name="log" dev="dm-74" ino=315 scontext=u:r:hal_graphics_composer_default:s0 tcontext=u:object_r:vendor_log_file:s0 tclass=dir permissive=0
11:14:57.290  D  deep-buffer-playback routing:
11:14:57.290  D  dev: 0x2 
11:14:57.294  D  logFgsApiBegin: FGS Logger Transaction failed, -129
11:14:57.296  D  enable_hotword_aec: enable 1
11:14:57.296  D  F1:MSG: controller.cc, 275: AudioInCtrl: cmd ID: 0x00ce, tag: 0xf2 [cntr = 49938]
11:14:57.296  D  F1:MSG: audio_capture_pdm.cc, 443: Reconfig not seamless
11:14:57.297  D  F1:MSG: audio_capture_pdm.cc, 549: Stream 1 restarted (ramp ON)
11:14:57.297  D  F1:MSG: audio_capture_pdm.cc, 1016: Starting PDM in Native Ultrasonic mode, mask=0x5
11:14:57.301  I  (REDACTED) updateState: enabledInSettings=%b, playbackState=%s
11:14:57.301  I  stopMonitoring
11:14:57.301  I  (REDACTED) Updating calibration state: %s -> %s
11:14:57.302  V  glGetString(7938) returns OpenGL ES 3.2 v1.r48p0-01eac0.5df5d77a113107e1e50b593bc8073ba3;
11:14:57.302  I  zge java SurfaceCreated: OpenGL ES 3.2 v1.r48p0-01eac0.5df5d77a113107e1e50b593bc8073ba3
11:14:57.302  I  zge java NativeSurfaceCreated
11:14:57.302  I  zge java SurfaceChanged
11:14:57.302  I  zge java NativeSurfaceChanged
11:14:57.305  E  Function not found: JNI_OnLoad
11:14:57.305  E  Function not found: glColorPointer
11:14:57.305  E  Function not found: glDepthRange
11:14:57.305  E  Function not found: glDisableClientState
11:14:57.305  E  Function not found: glEnableClientState
11:14:57.305  E  Function not found: glGenLists
11:14:57.305  E  Function not found: glMateriali
11:14:57.306  E  Function not found: glIndexMask
11:14:57.306  E  Function not found: glLightModelf
11:14:57.306  E  Function not found: glLightModelfv
11:14:57.306  E  Function not found: glLightfv
11:14:57.306  E  Function not found: glListBase
11:14:57.306  E  Function not found: glLoadIdentity
11:14:57.306  E  Function not found: glLoadMatrixf
11:14:57.306  E  Function not found: glMaterialf
11:14:57.306  E  Function not found: glMaterialfv
11:14:57.306  E  Function not found: glMatrixMode
11:14:57.306  E  Function not found: glNormal3f
11:14:57.306  E  Function not found: glNormalPointer
11:14:57.306  E  Function not found: glOrthof
11:14:57.306  E  Function not found: glFrustumf
11:14:57.306  E  Function not found: glBegin
11:14:57.306  E  Function not found: glCallList
11:14:57.306  E  Function not found: glColor3f
11:14:57.306  E  Function not found: glColor3fv
11:14:57.306  E  Function not found: glColor4fv
11:14:57.306  E  Function not found: glEnd
11:14:57.306  E  Function not found: glColorMaterial
11:14:57.306  E  Function not found: glDeleteLists
11:14:57.306  E  Function not found: glDrawBuffer
11:14:57.306  E  Function not found: glGetTexImage
11:14:57.306  E  Function not found: glPolygonMode
11:14:57.306  E  Function not found: glPopAttrib
11:14:57.306  E  Function not found: glPushAttrib
11:14:57.306  E  Function not found: glRasterPos2f
11:14:57.306  E  Function not found: glTexCoord2f
11:14:57.306  E  Function not found: glVertex2f
11:14:57.306  E  Function not found: glVertex3f
11:14:57.306  E  Function not found: glPointSize
11:14:57.306  E  Function not found: glPopMatrix
11:14:57.306  E  Function not found: glPushMatrix
11:14:57.306  E  Function not found: glRotatef
11:14:57.306  E  Function not found: glScalef
11:14:57.306  I  getTransport: Cannot find entry android.hardware.graphics.allocator@4.0::IAllocator/default in either framework or device VINTF manifest.
11:14:57.306  E  Function not found: glShadeModel
11:14:57.306  E  Function not found: glTexCoordPointer
11:14:57.306  E  Function not found: glTexGeni
11:14:57.306  E  Function not found: glTranslatef
11:14:57.306  E  Function not found: glVertexPointer
11:14:57.306  E  Function not found: glColor4f
11:14:57.307  W  Unable to set buffer name VRI[ZgeActivity]#0(BLAST Consumer)0: File name too long
11:14:57.308  W  Unable to set buffer name SurfaceView[com.txori.omeganaut/org.zgameeditor.ZgeActivity]#1(BLAST Consumer)1: File name too long
11:14:57.310  E  Function not found: glClientActiveTexture
11:14:57.310  E  Function not found: glTexImage2DMultisample
11:14:57.310  I  zge java onDrawFrame
11:14:57.317  I  zge java onDrawFrame
And I got this interesting crash log afterwards, I'll see if I can find something from this address.

Code: Select all

11:11:25.245  I  zge java onDrawFrame
11:11:25.246  A  Fatal signal 4 (SIGILL), code 1 (ILL_ILLOPC), fault addr 0x7eea343010 in tid 26206 (GLThread 3223), pid 26180 (txori.omeganaut)
11:11:25.311  E  failed to get the guest state header for thread 26180: Bad address
11:11:25.311  E  failed to get the guest state header for thread 26182: Bad address
11:11:25.312  E  failed to get the guest state header for thread 26183: Bad address
11:11:25.313  E  failed to get the guest state header for thread 26184: Bad address
11:11:25.313  E  failed to get the guest state header for thread 26185: Bad address
11:11:25.313  E  failed to get the guest state header for thread 26186: Bad address
11:11:25.313  E  failed to get the guest state header for thread 26187: Bad address
11:11:25.314  E  failed to get the guest state header for thread 26188: Bad address
11:11:25.315  E  failed to get the guest state header for thread 26189: Bad address
11:11:25.315  E  failed to get the guest state header for thread 26190: Bad address
11:11:25.315  E  failed to get the guest state header for thread 26191: Bad address
11:11:25.316  E  failed to get the guest state header for thread 26194: Bad address
11:11:25.317  E  failed to get the guest state header for thread 26197: Bad address
11:11:25.317  E  failed to get the guest state header for thread 26199: Bad address
11:11:25.317  E  failed to get the guest state header for thread 26203: Bad address
11:11:25.318  E  failed to get the guest state header for thread 26204: Bad address
11:11:25.318  E  failed to get the guest state header for thread 26205: Bad address
11:11:25.318  E  failed to get the guest state header for thread 26206: Bad address
11:11:25.319  E  failed to get the guest state header for thread 26207: Bad address
11:11:25.319  E  failed to get the guest state header for thread 26208: Bad address
11:11:25.319  E  failed to get the guest state header for thread 26209: Bad address
11:11:25.319  E  failed to get the guest state header for thread 26210: Bad address
11:11:25.319  E  failed to get the guest state header for thread 26213: Bad address
11:11:25.319  E  failed to get the guest state header for thread 26214: Bad address
11:11:25.320  E  failed to get the guest state header for thread 26215: Bad address
11:11:25.320  E  failed to get the guest state header for thread 26216: Bad address
11:11:25.320  E  failed to get the guest state header for thread 26218: Bad address
11:11:25.320  E  failed to get the guest state header for thread 26219: Bad address
11:11:25.321  E  failed to get the guest state header for thread 26220: Bad address
11:11:25.321  E  failed to get the guest state header for thread 26221: Bad address
11:11:25.321  E  failed to get the guest state header for thread 26222: Bad address
11:11:25.321  E  failed to get the guest state header for thread 26225: Bad address
11:11:25.321  E  failed to get the guest state header for thread 26226: Bad address
11:11:25.322  E  failed to get the guest state header for thread 26227: Bad address
11:11:25.322  E  failed to get the guest state header for thread 26228: Bad address
11:11:25.323  E  failed to get the guest state header for thread 26229: Bad address
11:11:25.323  E  failed to get the guest state header for thread 26230: Bad address
11:11:25.323  E  failed to get the guest state header for thread 26231: Bad address
11:11:25.359  I  obtaining output fd from tombstoned, type: kDebuggerdTombstoneProto
11:11:25.360  I  received crash request for pid 26206
11:11:25.361  I  performing dump of process 26180 (target tid = 26206)
11:11:25.629  A  *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
11:11:25.629  A  Build fingerprint: 'google/cheetah/cheetah:15/AP3A.241105.007/12470370:user/release-keys'
11:11:25.629  A  Revision: 'MP1.0'
11:11:25.629  A  ABI: 'arm64'
11:11:25.629  A  Timestamp: 2024-12-09 11:11:25.369096249+0100
11:11:25.629  A  Process uptime: 28s
11:11:25.629  A  Cmdline: com.txori.omeganaut
11:11:25.629  A  pid: 26180, tid: 26206, name: GLThread 3223  >>> com.txori.omeganaut <<<
11:11:25.629  A  uid: 10489
11:11:25.629  A  tagged_addr_ctrl: 0000000000000001 (PR_TAGGED_ADDR_ENABLE)
11:11:25.629  A  signal 4 (SIGILL), code 1 (ILL_ILLOPC), fault addr 0x0000007eea343010
11:11:25.629  A      x0  0000007d6d8810c0  x1  0000007eea343000  x2  0000007b9679c648  x3  0000007eea343013
11:11:25.629  A      x4  0000000000000003  x5  0000000000000000  x6  0000000000000000  x7  0000000000000008
11:11:25.629  A      x8  0000007b876d1e18  x9  0000007ed0fd4000  x10 0000000000000001  x11 0000000000000001
11:11:25.629  A      x12 0000000000000000  x13 0000007b876a8be8  x14 0000000000000018  x15 0000007eeb9d1980
11:11:25.629  A      x16 0000007b9858c8c8  x17 0000007ed0fad700  x18 0000007b95b6c000  x19 0000000000000000
11:11:25.629  A      x20 0000000000000002  x21 0000000000000002  x22 0000007cfd85da98  x23 0000007b967a0960
11:11:25.629  A      x24 0000007b40025570  x25 0000000000000001  x26 0000007b40025730  x27 0000000000000001
11:11:25.629  A      x28 0000007b967a0830  x29 0000007b9679c620
11:11:25.629  A      lr  0000007b98559030  sp  0000007b9679c5e0  pc  0000007eea343010  pst 0000000020001000
11:11:25.629  A  1 total frames
11:11:25.629  A  backtrace:
11:11:25.629  A        #00 pc 0000000000001010  <anonymous:7eea342000>
11:11:25.646  I  add tag=data_app_native_crash isTagEnabled=true flags=0x2
11:11:25.647  E  Tombstone written to: tombstone_02
11:11:25.648  W    Force finishing activity com.txori.omeganaut/org.zgameeditor.ZgeActivity
User avatar
Ats
Posts: 800
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

Lastly, here's a logcat of init, then crash of the BitmapNoise test on Retroid (android 11 64 bits)

Code: Select all

11:43:49.021  I  ZGEjava omeganaut
11:43:49.023  E  /storage/emulated/0
11:43:49.023  E  /data/user/0/com.txori.debug_background/files/
11:43:49.023  E  /data/app/~~W0GFNHMr00S2q9p7eQlLEg==/com.txori.debug_background-1yDar0sp4EmBjGar0M55wQ==/lib/arm64/
11:43:49.023  I  zge java initZApp
11:43:49.023  I  About to open: zzdc.dat
11:43:49.023  I  Open ok, available: 382
11:43:49.023  I  zge java NativeSetDataContent
11:43:49.024  E  Function not found: JNI_OnLoad
11:43:49.024  E  Function not found: glDepthRange
11:43:49.024  E  Function not found: glGenLists
11:43:49.024  E  Function not found: glMateriali
11:43:49.024  E  Function not found: glIndexMask
11:43:49.024  E  Function not found: glListBase
11:43:49.024  E  Function not found: glBegin
11:43:49.024  E  Function not found: glCallList
11:43:49.024  E  Function not found: glColor3f
11:43:49.024  E  Function not found: glColor3fv
11:43:49.024  E  Function not found: glColor4fv
11:43:49.024  E  Function not found: glEnd
11:43:49.024  E  Function not found: glColorMaterial
11:43:49.024  E  Function not found: glDeleteLists
11:43:49.024  E  Function not found: glDrawBuffer
11:43:49.024  E  Function not found: glGetTexImage
11:43:49.024  E  Function not found: glPolygonMode
11:43:49.024  E  Function not found: glPopAttrib
11:43:49.024  E  Function not found: glPushAttrib
11:43:49.024  E  Function not found: glRasterPos2f
11:43:49.024  E  Function not found: glTexCoord2f
11:43:49.024  E  Function not found: glVertex2f
11:43:49.024  E  Function not found: glVertex3f
11:43:49.025  E  Function not found: glTexGeni
11:43:49.025  E  call to OpenGL ES API with no current context (logged once per thread)
11:43:49.025  I  uid=10203(com.txori.debug_background) identical 6 lines
11:43:49.025  E  call to OpenGL ES API with no current context (logged once per thread)
11:43:49.025  E  Function not found: glAttachShader
11:43:49.025  E  Function not found: glBindAttribLocation
11:43:49.025  E  Function not found: glCompileShader
11:43:49.025  E  Function not found: glCreateShader
11:43:49.025  E  Function not found: glCreateProgram
11:43:49.025  E  Function not found: glDeleteShader
11:43:49.025  E  Function not found: glDeleteProgram
11:43:49.025  E  Function not found: glDetachShader
11:43:49.025  E  Function not found: glGetProgramiv
11:43:49.025  E  Function not found: glGetShaderiv
11:43:49.025  E  Function not found: glGetShaderInfoLog
11:43:49.025  E  Function not found: glGetProgramInfoLog
11:43:49.025  E  Function not found: glValidateProgram
11:43:49.025  E  Function not found: glGetUniformLocation
11:43:49.025  E  Function not found: glLinkProgram
11:43:49.025  E  Function not found: glShaderSource
11:43:49.025  E  Function not found: glUniform3fv
11:43:49.025  E  Function not found: glUniform1f
11:43:49.025  E  Function not found: glUniform4fv
11:43:49.025  E  Function not found: glUniform2fv
11:43:49.025  E  Function not found: glUniform1i
11:43:49.025  E  Function not found: glUniform1fv
11:43:49.025  E  Function not found: glUniformMatrix3fv
11:43:49.025  E  Function not found: glUniformMatrix4fv
11:43:49.025  E  Function not found: glUseProgram
11:43:49.025  E  Function not found: glIsRenderbuffer
11:43:49.025  E  Function not found: glBindRenderbuffer
11:43:49.025  E  Function not found: glDeleteRenderbuffers
11:43:49.025  E  Function not found: glGenRenderbuffers
11:43:49.025  E  Function not found: glRenderbufferStorage
11:43:49.026  E  Function not found: glBindFramebuffer
11:43:49.026  E  Function not found: glDeleteFramebuffers
11:43:49.026  E  Function not found: glGenFramebuffers
11:43:49.026  E  Function not found: glCheckFramebufferStatus
11:43:49.026  E  Function not found: glFramebufferTexture2D
11:43:49.026  E  Function not found: glFramebufferRenderbuffer
11:43:49.026  E  Function not found: glGenerateMipmap
11:43:49.026  E  Function not found: glRenderbufferStorageMultisample
11:43:49.026  E  Function not found: glTexImage2DMultisample
11:43:49.026  E  Function not found: glBlitFramebuffer
11:43:49.026  E  Function not found: glDisableVertexAttribArray
11:43:49.026  E  Function not found: glEnableVertexAttribArray
11:43:49.026  E  Function not found: glVertexAttribPointer
11:43:49.026  E  call to OpenGL ES API with no current context (logged once per thread)
11:43:49.079  I  uid=10203(com.txori.debug_background) identical 16 lines
11:43:49.079  E  call to OpenGL ES API with no current context (logged once per thread)
11:43:49.079  I  zge java setZOrderOnTop
11:43:49.079  I  zge java setEGLConfigChooser
11:43:49.079  I  zge java getHolder setFormat
11:43:49.079  E  GLBase: 1.1
11:43:49.079  I  zge java setDebugFlags
11:43:49.079  I  zge java CRenderer
11:43:49.079  I  zge java setRenderer
11:43:49.080  I  zge java setFocusableInTouchMode
11:43:49.081  I  zge java onStart
11:43:49.081  I  zge java NativeActivate
11:43:49.083  I  zge java onResume
11:43:49.083  I  zge java super.onResume
11:43:49.083  I  zge java NativeActivate
11:43:49.084  I  smart_link is  not supported!!!
11:43:49.089  D  onVisibilityChanged: visible = false,,mIsMediaReady = true,,mIsVideoPlaying = true
11:43:49.089  I  unregister: id=2140000008c
11:43:49.089  I  unregister: id=2140000008a
11:43:49.089  D  pause(0xebf80a10)
11:43:49.089  I  unregister: id=2140000008b
11:43:49.089  I  unregister: id=21400000032
11:43:49.089  I  pause
11:43:49.089  I  unregister: id=21400000033
11:43:49.089  I  unregister: id=21400000034
11:43:49.089  I  unregister: id=21400000035
11:43:49.089  I  unregister: id=21400000036
11:43:49.089  I  unregister: id=21400000037
11:43:49.089  I  unregister: id=21400000038
11:43:49.089  I  unregister: id=21400000039
11:43:49.089  I  unregister: id=2140000003a
11:43:49.089  I  unregister: id=2140000003b
11:43:49.089  I  unregister: id=2140000003c
11:43:49.090  I  unregister: id=2140000003d
11:43:49.108  I  unregister: id=2140000008b
11:43:49.108  I  unregister: id=2140000008b
11:43:49.108  I  unregister: id=2140000008c
11:43:49.109  I  unregister: id=2140000008a
11:43:49.109  E  [com.android.launcher3/com.android.launcher3.uioverrides.QuickstepLauncher#0](id:24000000015,api:0,p:-1,c:576) disconnect: not connected (req=1)
11:43:49.109  W  EGLNativeWindowType 0xb400007e64434d70 disconnect failed
11:43:49.113  I  Input focus has changed to Window{349d9fe u0 com.txori.debug_background/org.zgameeditor.ZgeActivity}
11:43:49.113  D  update input focus to Window{349d9fe u0 com.txori.debug_background/org.zgameeditor.ZgeActivity} , run:true
11:43:49.119  I  onLastStrongRef automatically unlinking death recipients: <uncached descriptor>
11:43:49.121  D  after addSurfaceViewPkg packageName = com.txori.debug_background count:2
11:43:49.127  I  allocate: id=21400000094, hal_format=RGBA8888, mali_format=RGBA8888, afbc=SPLIT, usage=GPU_RW|HWC|BACKBUF, size=752x1336, stride=752, name=com.txori.debug_background/org.zgameeditor.ZgeActivity#0
11:43:49.128  I  register: id=21400000094
11:43:49.128  V  glGetString(7938) returns OpenGL ES-CM 1.1 v1.r27p0-01eac0.bfc9f89b34c882ca6dc6566781e4f990;
11:43:49.128  I  zge java SurfaceCreated: OpenGL ES-CM 1.1 v1.r27p0-01eac0.bfc9f89b34c882ca6dc6566781e4f990
11:43:49.128  I  zge java NativeSurfaceCreated
11:43:49.128  I  zge java SurfaceChanged
11:43:49.128  I  zge java NativeSurfaceChanged
11:43:49.128  E  Function not found: JNI_OnLoad
11:43:49.129  E  Function not found: glDepthRange
11:43:49.129  E  Function not found: glGenLists
11:43:49.129  E  Function not found: glMateriali
11:43:49.129  E  Function not found: glIndexMask
11:43:49.129  E  Function not found: glListBase
11:43:49.129  E  Function not found: glBegin
11:43:49.129  E  Function not found: glCallList
11:43:49.129  E  Function not found: glColor3f
11:43:49.129  I  register: id=21400000094
11:43:49.129  E  Function not found: glColor3fv
11:43:49.129  E  Function not found: glColor4fv
11:43:49.129  E  Function not found: glEnd
11:43:49.129  E  Function not found: glColorMaterial
11:43:49.129  E  Function not found: glDeleteLists
11:43:49.129  E  Function not found: glDrawBuffer
11:43:49.129  E  Function not found: glGetTexImage
11:43:49.129  E  Function not found: glPolygonMode
11:43:49.129  E  Function not found: glPopAttrib
11:43:49.129  E  Function not found: glPushAttrib
11:43:49.129  E  Function not found: glRasterPos2f
11:43:49.129  E  Function not found: glTexCoord2f
11:43:49.129  E  Function not found: glVertex2f
11:43:49.130  E  Function not found: glVertex3f
11:43:49.130  E  Function not found: glTexGeni
11:43:49.130  I  allocate: id=21400000095, hal_format=RGBA8888, mali_format=RGBA8888, afbc=SPLIT, usage=GPU_RW|HWC|BACKBUF, size=752x1336, stride=752, name=SurfaceView - com.txori.debug_background/org.zgameeditor.ZgeActivity#0
11:43:49.131  I  register: id=21400000095
11:43:49.131  I  register: id=21400000095
11:43:49.132  E  Function not found: glAttachShader
11:43:49.132  E  Function not found: glBindAttribLocation
11:43:49.132  E  Function not found: glCompileShader
11:43:49.132  E  Function not found: glCreateShader
11:43:49.132  E  Function not found: glCreateProgram
11:43:49.132  E  Function not found: glDeleteShader
11:43:49.132  E  Function not found: glDeleteProgram
11:43:49.132  E  Function not found: glDetachShader
11:43:49.132  E  Function not found: glGetProgramiv
11:43:49.132  E  Function not found: glGetShaderiv
11:43:49.132  E  Function not found: glGetShaderInfoLog
11:43:49.132  E  Function not found: glGetProgramInfoLog
11:43:49.132  E  Function not found: glValidateProgram
11:43:49.132  E  Function not found: glGetUniformLocation
11:43:49.132  E  Function not found: glLinkProgram
11:43:49.132  E  Function not found: glShaderSource
11:43:49.132  E  Function not found: glUniform3fv
11:43:49.132  E  Function not found: glUniform1f
11:43:49.132  E  Function not found: glUniform4fv
11:43:49.132  E  Function not found: glUniform2fv
11:43:49.132  E  Function not found: glUniform1i
11:43:49.132  E  Function not found: glUniform1fv
11:43:49.132  E  Function not found: glUniformMatrix3fv
11:43:49.132  E  Function not found: glUniformMatrix4fv
11:43:49.133  E  Function not found: glUseProgram
11:43:49.133  E  Function not found: glIsRenderbuffer
11:43:49.133  E  Function not found: glBindRenderbuffer
11:43:49.133  E  Function not found: glDeleteRenderbuffers
11:43:49.133  E  Function not found: glGenRenderbuffers
11:43:49.133  E  Function not found: glRenderbufferStorage
11:43:49.133  E  Function not found: glBindFramebuffer
11:43:49.133  E  Function not found: glDeleteFramebuffers
11:43:49.133  E  Function not found: glGenFramebuffers
11:43:49.133  E  Function not found: glCheckFramebufferStatus
11:43:49.133  E  Function not found: glFramebufferTexture2D
11:43:49.133  E  Function not found: glFramebufferRenderbuffer
11:43:49.133  E  Function not found: glGenerateMipmap
11:43:49.133  E  Function not found: glRenderbufferStorageMultisample
11:43:49.133  E  Function not found: glTexImage2DMultisample
11:43:49.133  E  Function not found: glBlitFramebuffer
11:43:49.133  E  Function not found: glDisableVertexAttribArray
11:43:49.133  E  Function not found: glEnableVertexAttribArray
11:43:49.133  E  Function not found: glVertexAttribPointer
11:43:49.133  I  zge java onDrawFrame
11:43:49.144  I  unregister: id=21400000094
11:43:49.144  E  [com.txori.debug_background/org.zgameeditor.ZgeActivity#0](id:24000000018,api:0,p:-1,c:576) disconnect: not connected (req=1)
11:43:49.144  W  EGLNativeWindowType 0x7e643d94c0 disconnect failed
11:43:49.146  E  reset ##### pid = 4484
11:43:49.147  I  allocate: id=21400000096, hal_format=RGBA8888, mali_format=RGBA8888, afbc=SPLIT, usage=GPU_RW|HWC|BACKBUF, size=752x1336, stride=752, name=com.txori.debug_background/org.zgameeditor.ZgeActivity#0
11:43:49.147  I  register: id=21400000096
11:43:49.147  I  register: id=21400000096
11:43:49.155  I  unregister: id=21400000094
11:43:49.166  I  stopOutput portId 17
11:43:49.166  I  stopOutput portId 17
11:43:49.166  I  stopOutput() output 13, stream 3, session 9
11:43:49.167  I  oneway function results will be dropped but finished with status OK and parcel size 4
11:43:49.172  I  unregister: id=2140000008a
11:43:49.174  I  unregister: id=2140000008c
11:43:49.183  D  getTimestamp_l(17): device stall time corrected using current time 385523440916
11:43:49.199  I  zge java onDrawFrame
11:43:49.253  I  allocate: id=21400000097, hal_format=RGBA8888, mali_format=RGBA8888, afbc=SPLIT, usage=GPU_RW|HWC|BACKBUF, size=752x1336, stride=752, name=SurfaceView - com.txori.debug_background/org.zgameeditor.ZgeActivity#0
11:43:49.254  I  register: id=21400000097
11:43:49.254  I  register: id=21400000097
11:43:49.256  I  unregister: id=21400000027
11:43:49.256  I  unregister: id=21400000024
11:43:49.256  I  unregister: id=21400000016
11:43:49.257  I  zge java onDrawFrame
11:43:49.259  D  /data/misc/iorapd/com.txori.debug_background/1/org.zgameeditor.ZgeActivity/compiled_traces/compiled_trace.pb doesn't exist
11:43:49.260  I  Displayed com.txori.debug_background/org.zgameeditor.ZgeActivity: +384ms
11:43:49.260  I  unregister: id=21400000093
11:43:49.261  I  unregister: id=21400000092
11:43:49.272  I  Focus entered window: Window{349d9fe u0 com.txori.debug_background/org.zgameeditor.ZgeActivity} in display 0
11:43:49.277  I  GoogleInputMethodService.onFinishInput():3095 
11:43:49.277  I  GoogleInputMethodService.updateDeviceLockedStatus():2167 repeatCheckTimes = 0, locked = false
11:43:49.278  I  GoogleInputMethodService.onStartInput():1911 onStartInput(EditorInfo{EditorInfo{packageName=com.txori.debug_background, inputType=0, inputTypeString=NULL, enableLearning=false, autoCorrection=false, autoComplete=false, imeOptions=0, privateImeOptions=null, actionName=UNSPECIFIED, actionLabel=null, initialSelStart=-1, initialSelEnd=-1, initialCapsMode=0, label=null, fieldId=-1, fieldName=null, extras=null, hintText=null, hintLocales=[]}}, false)
11:43:49.278  I  GoogleInputMethodService.updateDeviceLockedStatus():2167 repeatCheckTimes = 1, locked = false
11:43:49.278  I  InputBundleManager.loadActiveInputBundleId():450 loadActiveInputBundleId: und-Latn-x-password, password
11:43:49.279  I  EmojiCompatManager.getEmojiCompatIfLoaded():342 EmojiCompat.init() was never called.
                 java.lang.IllegalStateException: EmojiCompat is not initialized. Please call EmojiCompat.init() first
                 	at zg.o(PG:6)
                 	at acs.b(PG:13)
                 	at gyp.b(PG:2)
                 	at gyp.c(PG:4)
                 	at gyp.f(PG:3)
                 	at hqc.onStartInput(PG:404)
                 	at android.inputmethodservice.InputMethodService.doStartInput(InputMethodService.java:2333)
                 	at android.inputmethodservice.InputMethodService$InputMethodImpl.startInput(InputMethodService.java:620)
                 	at android.inputmethodservice.InputMethodService$InputMethodImpl.dispatchStartInputWithToken(InputMethodService.java:649)
                 	at android.inputmethodservice.IInputMethodWrapper.executeMessage(IInputMethodWrapper.java:199)
                 	at com.android.internal.os.HandlerCaller$MyHandler.handleMessage(HandlerCaller.java:44)
                 	at android.os.Handler.dispatchMessage(Handler.java:106)
                 	at android.os.Looper.loop(Looper.java:223)
                 	at android.app.ActivityThread.main(ActivityThread.java:7971)
                 	at java.lang.reflect.Method.invoke(Native Method)
                 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:603)
                 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
11:43:49.279  I  AbstractContentDataManager.startImportContentTask():243 startImportContentTask()
11:43:49.279  I  AbstractContentDataManager$ImportContentTask.doInBackground():258 doInBackground()
11:43:49.280  I  PersonalDictionaryDataHandler.beginProcess():114 LanguageTags = [en-US]
11:43:49.280  E  Failed to find provider info for user_dictionary
11:43:49.280  W  AbstractContentDataManager.importRecords():325 importRecords() : Failed to open cursor
11:43:49.280  I  AbstractContentDataManager.importContentData():298 importContentData() : Ending import process
11:43:49.295  I  PersonalLanguageModelUpdater$UpdateOperation.performInternal():165 run() : Added 0 words and 0 shortcuts
11:43:49.295  I  DynamicLanguageModelOperation.perform():43 perform() : 4 : cpb : Completed
11:43:49.296  I  AbstractContentDataManager$ImportContentTask.onPostExecute():269 onPostExecute() : Result = [1,0]
11:43:49.296  I  ShortcutsDataManager.onImportFinished():82 onImportFinished() : Result = 1 : Count = 0
11:43:49.306  I  register: id=21400000096
11:43:49.306  I  register: id=21400000097
11:43:49.313  I  zge java onDrawFrame
11:43:49.322  I  register: id=21400000095
11:43:49.369  I  zge java onDrawFrame
11:43:49.422  I  unregister: id=2140000000c
11:43:49.422  I  unregister: id=21400000028
11:43:49.422  I  unregister: id=21400000026
11:43:49.425  I  zge java onDrawFrame
11:43:49.439  I  unregister: id=21400000092
11:43:49.439  I  unregister: id=21400000093
11:43:49.439  I  unregister: id=21400000092
11:43:49.440  I  AudioSink write would block when writing 1536 bytes
11:43:49.441  I  unregister: id=21400000093
11:43:49.479  I  zge java onDrawFrame
11:43:50.820  I  uid=10203(com.txori.debug_background) identical 24 lines
11:43:50.877  I  zge java onDrawFrame
11:43:50.880  D  Enter devfreq_ddr_set: enable:0, duration: 0, /sys/class/devfreq/scene-frequency/sprd-governor/scene_boost_dfs: max
--------- beginning of crash
11:43:50.922  I  Scudo ERROR: corrupted chunk header at address 0x007cf43d6110
11:43:50.922  A  Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 4472 (ReferenceQueueD), pid 4457 (ebug_background)
11:43:50.938  I  zge java onDrawFrame
11:43:50.973  I  obtaining output fd from tombstoned, type: kDebuggerdTombstone
11:43:50.974  I  received crash request for pid 4472
11:43:50.974  I  performing dump of process 4457 (target tid = 4472)
11:43:50.988  A  *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
11:43:50.988  A  Native Crash TIME: 387328
11:43:50.988  A  *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
11:43:50.988  A  Build fingerprint: 'UNISOC/ums512_1h10_Natv/ums512_1h10:11/RP1A.201005.001/27217:user/release-keys'
11:43:50.988  A  Revision: '0'
11:43:50.988  A  ABI: 'arm64'
11:43:50.988  A  Timestamp: 2024-12-09 11:43:50+0100
11:43:50.988  A  pid: 4457, tid: 4472, name: ReferenceQueueD  >>> com.txori.debug_background <<<
11:43:50.988  A  uid: 10203
11:43:50.988  A  signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
11:43:50.988  A  Abort message: 'Scudo ERROR: corrupted chunk header at address 0x007cf43d6110
                 '
11:43:50.988  A      x0  0000000000000000  x1  0000000000001178  x2  0000000000000006  x3  0000007c82790710
11:43:50.988  A      x4  0000000000008080  x5  0000000000008080  x6  0000000000008080  x7  0000000000000038
11:43:50.988  A      x8  00000000000000f0  x9  0000007f7677d840  x10 ffffff80fffffbdf  x11 0000000000000001
11:43:50.988  A      x12 0000000000000030  x13 000000006756c9e6  x14 0036990c2f768080  x15 00005f98349c642e
11:43:50.989  A      x16 0000007f76815c80  x17 0000007f767f7420  x18 0000007c81a58000  x19 0000000000001169
11:43:50.989  A      x20 0000000000001178  x21 00000000ffffffff  x22 0000007cf43d6110  x23 0000007e543dd1f8
11:43:50.989  A      x24 000000006fe33d98  x25 0000007c82792000  x26 0000000000000155  x27 0000000000000004
11:43:50.989  A      x28 0000000000000000  x29 0000007c82790790
11:43:50.989  A      lr  0000007f767ab148  sp  0000007c827906f0  pc  0000007f767ab178  pst 0000000000000000
11:43:51.010  I  zge java onDrawFrame
11:43:51.090  A  backtrace:
11:43:51.090  A        #00 pc 000000000004e178  /apex/com.android.runtime/lib64/bionic/libc.so (abort+168) (BuildId: ddedea5a1d1071f97c5321841b6be985)
11:43:51.090  A        #01 pc 0000000000042818  /apex/com.android.runtime/lib64/bionic/libc.so (scudo::die()+8) (BuildId: ddedea5a1d1071f97c5321841b6be985)
11:43:51.090  A        #02 pc 0000000000042e50  /apex/com.android.runtime/lib64/bionic/libc.so (scudo::ScopedErrorReport::~ScopedErrorReport()+32) (BuildId: ddedea5a1d1071f97c5321841b6be985)
11:43:51.090  A        #03 pc 0000000000042f18  /apex/com.android.runtime/lib64/bionic/libc.so (scudo::reportHeaderCorruption(void*)+60) (BuildId: ddedea5a1d1071f97c5321841b6be985)
11:43:51.090  A        #04 pc 00000000000444a0  /apex/com.android.runtime/lib64/bionic/libc.so (scudo::Allocator<scudo::AndroidConfig, &(scudo_malloc_postinit)>::deallocate(void*, scudo::Chunk::Origin, unsigned long, unsigned long)+332) (BuildId: ddedea5a1d1071f97c5321841b6be985)
11:43:51.090  A        #05 pc 0000000000013c60  /apex/com.android.art/javalib/arm64/boot-core-libart.oat (art_jni_trampoline+160) (BuildId: b86c627bcadbe12cd903cf39c861c4fd74d20a8a)
11:43:51.090  A        #06 pc 00000000001337e8  /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+568) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.090  A        #07 pc 00000000001a8a88  /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+228) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.090  A        #08 pc 00000000003165ec  /apex/com.android.art/lib64/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+376) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.090  A        #09 pc 000000000030c6b0  /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+912) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.090  A        #10 pc 000000000067272c  /apex/com.android.art/lib64/libart.so (MterpInvokeStatic+536) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.090  A        #11 pc 000000000012d994  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_static+20) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.090  A        #12 pc 000000000004cbb8  /apex/com.android.art/javalib/core-libart.jar (libcore.util.NativeAllocationRegistry$CleanerThunk.run+32)
11:43:51.090  A        #13 pc 00000000006714c0  /apex/com.android.art/lib64/libart.so (MterpInvokeInterface+1796) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.090  A        #14 pc 000000000012da14  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_interface+20) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.090  A        #15 pc 0000000000246ef6  /apex/com.android.art/javalib/core-oj.jar (sun.misc.Cleaner.clean+18)
11:43:51.090  A        #16 pc 000000000066faa0  /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+1512) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.090  A        #17 pc 000000000012d814  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.090  A        #18 pc 00000000000f7720  /apex/com.android.art/javalib/core-oj.jar (java.lang.ref.ReferenceQueue.enqueueLocked+28)
11:43:51.091  A        #19 pc 00000000006720fc  /apex/com.android.art/lib64/libart.so (MterpInvokeDirect+1240) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.091  A        #20 pc 000000000012d914  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_direct+20) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.091  A        #21 pc 00000000000f79f4  /apex/com.android.art/javalib/core-oj.jar (java.lang.ref.ReferenceQueue.enqueuePending+36)
11:43:51.091  A        #22 pc 00000000006729d0  /apex/com.android.art/lib64/libart.so (MterpInvokeStatic+1212) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.091  A        #23 pc 000000000012d994  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_static+20) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.091  A        #24 pc 000000000002d59c  /apex/com.android.art/javalib/core-libart.jar (java.lang.Daemons$ReferenceQueueDaemon.runInternal+52)
11:43:51.091  A        #25 pc 000000000066faa0  /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+1512) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.091  A        #26 pc 000000000012d814  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.091  A        #27 pc 000000000002ccc2  /apex/com.android.art/javalib/core-libart.jar (java.lang.Daemons$Daemon.run+50)
11:43:51.091  A        #28 pc 00000000006714c0  /apex/com.android.art/lib64/libart.so (MterpInvokeInterface+1796) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.091  A        #29 pc 000000000012da14  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_interface+20) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.091  A        #30 pc 00000000000eb7d0  /apex/com.android.art/javalib/core-oj.jar (java.lang.Thread.run+8)
11:43:51.091  A        #31 pc 0000000000303e34  /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.llvm.14481107443624448449)+268) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.091  A        #32 pc 000000000065e5a4  /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+760) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.091  A        #33 pc 000000000013cff8  /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.091  A        #34 pc 0000000000133564  /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.091  A        #35 pc 00000000001a8a6c  /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+200) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.091  A        #36 pc 000000000054a470  /apex/com.android.art/lib64/libart.so (art::JValue art::InvokeVirtualOrInterfaceWithJValues<art::ArtMethod*>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, art::ArtMethod*, jvalue const*)+460) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.091  A        #37 pc 0000000000598bcc  /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallback(void*)+1288) (BuildId: 79991d5a5ba026c69376ba7be4e58e38)
11:43:51.091  A        #38 pc 00000000000af97c  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64) (BuildId: ddedea5a1d1071f97c5321841b6be985)
11:43:51.091  A        #39 pc 00000000000500d0  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: ddedea5a1d1071f97c5321841b6be985)
11:43:51.066  I  zge java onDrawFrame
11:43:51.107  I  type=1400 audit(0.0:7733): avc: denied { open } for path="/dev/__properties__/u:object_r:hwservicemanager_prop:s0" dev="tmpfs" ino=7529 scontext=u:r:crash_dump:s0:c203,c256,c512,c768 tcontext=u:object_r:hwservicemanager_prop:s0 tclass=file permissive=1 app=com.txori.debug_background
11:43:51.107  I  type=1400 audit(0.0:7734): avc: denied { getattr } for path="/dev/__properties__/u:object_r:hwservicemanager_prop:s0" dev="tmpfs" ino=7529 scontext=u:r:crash_dump:s0:c203,c256,c512,c768 tcontext=u:object_r:hwservicemanager_prop:s0 tclass=file permissive=1 app=com.txori.debug_background
11:43:51.107  I  type=1400 audit(0.0:7735): avc: denied { map } for path="/dev/__properties__/u:object_r:hwservicemanager_prop:s0" dev="tmpfs" ino=7529 scontext=u:r:crash_dump:s0:c203,c256,c512,c768 tcontext=u:object_r:hwservicemanager_prop:s0 tclass=file permissive=1 app=com.txori.debug_background
11:43:51.111  I  type=1400 audit(0.0:7736): avc: denied { open } for path="/dev/__properties__/u:object_r:device_config_runtime_native_prop:s0" dev="tmpfs" ino=7487 scontext=u:r:crash_dump:s0:c203,c256,c512,c768 tcontext=u:object_r:device_config_runtime_native_prop:s0 tclass=file permissive=1 app=com.txori.debug_background
11:43:51.111  I  type=1400 audit(0.0:7737): avc: denied { getattr } for path="/dev/__properties__/u:object_r:device_config_runtime_native_prop:s0" dev="tmpfs" ino=7487 scontext=u:r:crash_dump:s0:c203,c256,c512,c768 tcontext=u:object_r:device_config_runtime_native_prop:s0 tclass=file permissive=1 app=com.txori.debug_background
11:43:51.121  I  zge java onDrawFrame
11:43:51.403  I  uid=10203(com.txori.debug_background) identical 5 lines
11:43:51.460  I  zge java onDrawFrame
11:43:51.489  E  Tombstone written to: /data/tombstones/tombstone_18
11:43:51.490  W    Force finishing activity com.txori.debug_background/org.zgameeditor.ZgeActivity
11:43:51.490  I  add tag=data_app_native_crash isTagEnabled=true flags=0x2
11:43:51.490  D   update app focus from ActivityRecord{ea8f2d9 u0 com.txori.debug_background/org.zgameeditor.ZgeActivity t5451 f}} to ActivityRecord{3135e3 u0 com.android.launcher3/.uioverrides.QuickstepLauncher t5448}
11:43:51.492  I  Copying /data/tombstones/tombstone_18 to DropBox (SYSTEM_TOMBSTONE)
11:43:51.492  I  allocate: id=21400000098, hal_format=RGBA8888, mali_format=RGBA8888, afbc=false, usage=CPU_RW|GPU_RW, size=1336x752, stride=1344, name=screenshot
11:43:51.493  I  register: id=21400000098
11:43:51.493  I  add tag=SYSTEM_TOMBSTONE isTagEnabled=true flags=0x2
11:43:51.496  I  register: id=21400000098
11:43:51.502  I  zge java onPause
11:43:51.502  I  register: id=21400000098
11:43:51.502  I  zge java NativeActivate
11:43:51.502  I  zge java NativeDrawFrame
11:43:51.502  I  register: id=21400000098
11:43:51.502  W  Background execution not allowed: receiving Intent { act=android.os.UpdateLock.UPDATE_LOCK_CHANGED flg=0x4000010 (has extras) } to com.google.android.gms/.chimera.GmsIntentOperationService$PersistentTrustedReceiver
11:43:51.502  I  unregister: id=21400000098
11:43:51.503  I  register: id=21400000098
11:43:51.506  W  Background execution not allowed: receiving Intent { act=android.intent.action.DROPBOX_ENTRY_ADDED flg=0x10 (has extras) } to com.google.android.gms/.stats.service.DropBoxEntryAddedReceiver
11:43:51.507  I  unregister: id=21400000098
11:43:51.508  I  Current package: com.android.launcher3
11:43:51.509  I  register: id=21400000098
11:43:51.509  I  unregister: id=21400000098
11:43:51.512  E  set_timerslack_ns write failed: No such process
11:43:51.521  I  Focus left window: Window{349d9fe u0 com.txori.debug_background/org.zgameeditor.ZgeActivity} in display 0
11:43:51.507  W  Background execution not allowed: receiving Intent { act=android.intent.action.DROPBOX_ENTRY_ADDED flg=0x10 (has extras) } to com.google.android.gms/.stats.service.DropBoxEntryAddedReceiver
11:43:51.563  I  WIN DEATH: Window{349d9fe u0 com.txori.debug_background/org.zgameeditor.ZgeActivity}
11:43:51.563  W  Attempted to unregister already unregistered input channel '349d9fe com.txori.debug_background/org.zgameeditor.ZgeActivity (server)'
11:43:51.563  I  Remote process closed the socket (on MSG_PEEK)
11:43:51.563  I  Process com.txori.debug_background (pid 4457) has died: prcp TOP 
User avatar
VilleK
Site Admin
Posts: 2371
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

Re: Google Play New problem : 64bits

Post by VilleK »

You can try delaying the InitApp call in ZgeAndroid to NativeDrawFrame. This should help get rid of the messages about no current GL context.
Attachments
ZgeAndroid.zip
(2.76 KiB) Downloaded 59 times
User avatar
Ats
Posts: 800
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

Nice idea. Unfortunately, the error message is still there:
call to OpenGL ES API with no current context (logged once per thread)
And it still randomly crash afterward :|
User avatar
Ats
Posts: 800
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

I just discovered that Android was updated this winter on my phone, and now the 64-bit version of my game isn’t even opening anymore. Before, it would run for a random amount of time before crashing. It still does on my little console under Android 13. But on the phone with android 15, it doesn’t even reach the first screen. Hopefully, there will be new crash logs to help pinpoint the problem. I need to get back to working on this.
User avatar
VilleK
Site Admin
Posts: 2371
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

Re: Google Play New problem : 64bits

Post by VilleK »

Ats wrote: Mon Apr 14, 2025 11:41 am I need to get back to working on this.
Ok I will try to support you the best I can like before. It could be that each Android update has even worse OpenGL backward compatibility.
User avatar
Kjell
Posts: 1924
Joined: Sat Feb 23, 2008 11:15 pm

Re: Google Play New problem : 64bits

Post by Kjell »

Hi guys,

Android 15 switched to Vulkan and includes ANGLE for backwards compatibility with OpenGL ES. Although they tout this change by stating "improved compatibility, and in some cases, improved performance", this might not always be the case .. especially during this transition period:

Image

https://developer.android.com/about/ver ... n-gpu-apis

K
User avatar
Ats
Posts: 800
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

:| ...

So after reading, tweaking, and testing ANGLE for a little while, I got stuck at the "enable angle greyed out in developers options". But during the process of disabling/re-enabling Developer Options, I had to reboot my phone. And since then, Omeganaut has been working again, back to its previous state — where it crashes randomly after a while. So that's a bit better.

There's also an option called "ANGLE Preferences" in Developer Options, where I can set the OpenGL driver per app (Default, ANGLE, Native). If I set ANGLE for Omeganaut, I get a little message at launch saying "ANGLE is running" — but then it still crashes randomly.

So I guess the problem really is coming from the 64-bit Android build, somewhere in ZGE.

And I found a new thing to explore: would GLES layers be interesting in our case?
https://developer.android.com/ndk/guide ... debug-gles
User avatar
Ats
Posts: 800
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

I read the whole thread to refresh my memory about what was going on. Here's a quick recap of the latest episodes:
While I was doing this, I asked Gemini to look into potential 64-bit issues in ZPlatform_android.pas, because I read somewhere that Gemini is now good at that kind of task. Maybe it’ll help warm up the engine :lol:
Here’s its response:


"
Okay, let's analyze the provided ZPlatform_android Pascal code for potential 64-bit compatibility issues that could lead to random crashes. Migrating from 32-bit to 64-bit often exposes problems related to:
  1. Integer vs. Pointer Size: Pointers and NativeInt/NativeUInt become 64-bit, while Integer/LongInt/Cardinal/LongWord typically remain 32-bit. Code assuming pointers fit into 32-bit integers, or vice-versa, will break.
  2. Data Structure Alignment: The alignment requirements for fields within records/structs might change.
  3. External Library ABIs: Function parameters or structure layouts expected by external C libraries (like libc, JNI interfaces) might change.
  4. JNI Calls: Passing data (especially pointers and longs) between Pascal and Java via JNI needs careful handling of 64-bit types (jlong, jobject).
Here are the potential issues found in your code:

Critical Issues (High Likelihood of Causing Crashes/Corruption):

1- Platform_CreateMutex Memory Allocation:
  • Code: P := GetMem(SizeOf(Pointer));
  • Problem: This allocates memory the size of a pointer (8 bytes on 64-bit) but InitCriticalSection requires a pointer to a TRTLCriticalSection record. The actual record (TRTLCriticalSection) is significantly larger than a pointer. When InitCriticalSection, EnterCriticalSection, etc., operate on P^, they will write far beyond the allocated 8 bytes, causing heap corruption. This is a very likely source of random crashes.
  • Fix: Allocate the correct size:

Code: Select all

function Platform_CreateMutex : pointer;
var
  P : PRTLCriticalSection;
begin
  P := GetMem(SizeOf(TRTLCriticalSection)); // <-- Fix
  InitCriticalSection(P^);
  Result := P;
end;
Note: Ensure PRTLCriticalSection is correctly defined as ^TRTLCriticalSection and TRTLCriticalSection is the appropriate type from SyncObjs or cthreads.

2- JNI Helper Function C (in ReadAssetFile, Platform_NetOpen):

Code: Select all

Params : array[0..10] of integer;
// ...
function C(const args : array of const) : pointer;
var I : integer;
begin
     for I := 0 to High(args) do
       Params[I] := args[I].vinteger; // <-- Problematic Cast
     Result := @Params;
end;
// Used with CallObjectMethodV, CallVoidMethodV
Buffer := Env^.CallObjectMethodV(Env, Jobject(AndroidThis), Mid, C([Env^.NewStringUTF(Env,FileName)]) );
Env^.CallVoidMethodV(Env, Jobject(AndroidThis), Mid, C([Env^.NewStringUTF(Env,Url)]) );
  • Problem: These Call...MethodV functions expect a va_list (variable argument list) which is not the same as a pointer to an array of raw integers. Furthermore, JNI arguments like jstring (returned by NewStringUTF) are pointers (jobject). Casting these pointers to 32-bit integers (args.vinteger) and storing them in an integer array is incorrect on both 32-bit (for pointers) and especially 64-bit (where pointers are 64-bit). This will lead to incorrect arguments being passed, stack corruption, and crashes.
  • Fix: You must use the ...A versions of the JNI calls (CallObjectMethodA, CallVoidMethodA) which take an array of JValue. You already have a correct version of the helper function C and the Params array defined within AudioCallback. Reuse that pattern:
- Define Params as array[0..x] of JValue; globally or locally.
- Use the C function from AudioCallback that populates the JValue union correctly based on argument type (vtInteger, vtPointer).
- Change the calls:

Code: Select all

// In ReadAssetFile
var jniParams: array[0..0] of JValue; // Adjust size as needed
// ... use the JValue C helper...
jniParams[0].l := Env^.NewStringUTF(Env, FileName);
Buffer := Env^.CallObjectMethodA(Env, Jobject(AndroidThis), Mid, @jniParams ); // <-- Use ...A and @jniParams

// In Platform_NetOpen
var jniParams: array[0..0] of JValue; // Adjust size as needed
// ... use the JValue C helper...
jniParams[0].l := Env^.NewStringUTF(Env, Url);
Env^.CallVoidMethodA(Env, Jobject(AndroidThis), Mid, @jniParams ); // <-- Use ...A and @jniParams
Potential Issues (Could Cause Problems Depending on Usage/System):

3- TimeVal Structure Definition:
  • Code: Relies on TimeVal from UnixType unit used by gettimeofday and select.
  • Problem: The standard C struct timeval on 64-bit Android/Linux typically has tv_sec as time_t (64-bit signed integer, long) and tv_usec as suseconds_t (64-bit signed integer, long). If your UnixType.pas defines TTimeVal with 32-bit fields (like LongInt), calls to gettimeofday or select will read/write incorrect data on the stack, potentially leading to crashes or incorrect time values.
  • Fix: Ensure the TTimeVal definition in your UnixType.pas (or whichever unit defines it) matches the 64-bit ABI:

Code: Select all

// Example expected definition for 64-bit Linux/Android
PTimeVal = ^TTimeVal;
TTimeVal = record
  tv_sec: Int64; // Or Clong if mapping directly to C 'long'
  tv_usec: Int64; // Or Clong if mapping directly to C 'long'
end;
Verify against the Free Pascal UnixType or BaseUnix unit for your target.

4- Integer Types for Sizes:
  • Code: AndroidContentSize : integer;, Size : integer parameter in Platform_WriteFile, Platform_ReadFile. BufferSize : JSize; in ReadAssetFile.
  • Problem: integer is 32-bit. If you ever need to handle files, assets, or memory buffers larger than 2GB, these 32-bit integers will overflow or be insufficient. JSize is correctly 32-bit as Java arrays are limited by 32-bit integers.
  • Fix: For file/memory sizes that could exceed 2GB, use Int64 or NativeInt (which is 64-bit on 64-bit platforms).

Code: Select all

// Example
procedure Platform_WriteFile(FileName : PAnsiChar; Memory : pointer; Size : Int64; Append : Boolean);
procedure Platform_ReadFile(FileName : PAnsiChar; var Memory : pointer; var Size : Int64; IsRelative : Boolean);
var AndroidContentSize : Int64; // If content can be > 2GB
Update GetMem, BlockRead, BlockWrite calls accordingly. Note that standard Pascal FileSize typically returns Int64.

5- longint in External Function Declarations:
  • Code: select's first parameter n, return type of select, dlclose, usleep. Written : longint in Platform_WriteFile.
  • Problem: longint is 32-bit in FPC. While many C int types remain 32-bit even on 64-bit ABIs, using explicit C-compatible types (cint, clong, csize_t, cssize_t from ctypes unit) is safer. For select, n should be cint. For write's return value (used by BlockWrite), it's ssize_t which is 64-bit signed (Int64 or NativeInt). For dlclose and usleep, int return is usually 32-bit, so longint might be okay, but cint is preferred.
  • Fix: Review external declarations and variable types interacting with them. Use types from the ctypes unit where appropriate or Int64/NativeInt for sizes/counts that become 64-bit in the C ABI.

Code: Select all

// Example
function select( n : cint; ... ) : cint; cdecl; external 'libc';
// In Platform_WriteFile
var Written : NativeInt; // Or cssize_t if using ctypes
6- Thread ID Casting:
  • Code: Result := pointer(id); in Platform_CreateThread.
  • Problem: The thread id (QWord on 64-bit) returned by BeginThread isn't guaranteed to be a pointer or handle suitable for casting directly to a pointer. It might just be a numerical ID. While this might not crash directly (especially since Platform_FreeThread is empty), it's not strictly safe or portable.
  • Fix: If you need to store the thread reference, store the id itself (QWord or LongWord) rather than casting it to pointer. If you need a handle for functions like WaitForThreadTerminate, use the appropriate FPC functions which likely operate on the ID directly.
Other Observations:
  • AudioCallback Return Type: You correctly used {$IFDEF CPU64} to adjust the return type (Int64/LongInt). This is good.
  • Platform_LoadModule Return Type: Correctly uses NativeUInt.
  • JNI in AudioCallback: Seems much better, using JValue and ...A methods. Double-check all JNI calls for proper error handling (checking return values, checking/clearing exceptions with Env^.ExceptionCheck and Env^.ExceptionClear if needed).
Recommendations:
  • Fix the Critical Issues First: Address the Platform_CreateMutex allocation and the incorrect JNI helper C function usage in ReadAssetFile and Platform_NetOpen immediately. These are the most likely causes of random memory corruption and crashes.
  • Verify TTimeVal: Check the definition of TTimeVal used by your project against the 64-bit Android NDK C headers. Ensure it uses 64-bit types for tv_sec and tv_usec.
  • Review Integer Sizes: Change integer/longint to Int64 or NativeInt where sizes or counts could exceed 32 bits (file sizes, potentially large buffer sizes, ssize_t return values).
  • Use C-Compatible Types: For external function declarations, prefer types from the ctypes unit (cint, clong, csize_t, etc.) for clarity and correctness.
  • Enhanced Logging/Debugging: Add more detailed AndroidLog calls, especially around JNI interactions, file operations, and mutex locking/unlocking, to help pinpoint where crashes occur. If possible, try running a debug build attached to the Android Studio debugger or use ndk-gdb. Tools like AddressSanitizer (ASan), if compatible with your FPC/NDK setup, are excellent for finding memory errors like the one in Platform_CreateMutex.
By systematically addressing these points, particularly the critical mutex and JNI issues, you should be able to significantly improve the stability of your 64-bit build.

"


Do you think some of those AI hints might help or are those just made ups?
User avatar
Ats
Posts: 800
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

Let’s start with “1 - Platform_CreateMutex Memory Allocation.”

And... That was a quick fix: this doesn’t crash the compilation, and the result works SIGNIFICANTLY BETTER :shock:
It no longer crashes randomly within a few seconds to a few minutes on pure 64 bit system. It’s playable for a very long time.

I did get two random crashes, but both happened when heading to planets with a river, so that might just be caused by my water shader. Or there might still be a memory leak, but it’s a small one compared to before.

I’ll let you validate this change before making a GitHub commit:

Code: Select all

function Platform_CreateMutex : pointer;
var
  P : PRTLCriticalSection;
begin
  P := GetMem(SizeOf(TRTLCriticalSection));
  InitCriticalSection(P^);
  Result := P;
end;
It might be worth looking at Gemini's other fix suggestions... :oops:

Edit:
It is still randomly crashing on 64 bits, but now it is very rare.
User avatar
VilleK
Site Admin
Posts: 2371
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

Re: Google Play New problem : 64bits

Post by VilleK »

Ats wrote: Sun Apr 20, 2025 9:27 am Let’s start with “1 - Platform_CreateMutex Memory Allocation.”
Gemini is 100% correct here. I'm very impressed it found this bug.

This bug is not present in ZPlatform_Win32 so not sure why the Android version was wrong.
User avatar
Ats
Posts: 800
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

Cool. I've made the commit :wink:
I checked if that error could have been found with the compilation warning log, but unfortunately, there were no signs of it.
Then I run the comparison of compilation warnings for 32 and 64 bits in Gemini:
While there's no direct hit, the logs *do* contain warnings that are common indicators of potential 32-bit vs 64-bit issues:
  • `Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.` (Appears in both logs, e.g., in `Renderer.pas`, `ZExpressions.pas`, `ZClasses.pas`). This is risky because on 64-bit, a pointer (64 bits) cannot fit into a standard signed integer (32 bits) without truncation. Using `NativeInt` or `NativeUInt` is safer for pointer<->integer conversions.
  • `Warning: Conversion between ordinals and pointers is not portable` (Appears only in the 64-bit log, e.g., in `GLDrivers.pas`, `ZApplication.pas`, `ZClasses.pas`). This is a strong hint that the compiler detected code where integers/ordinals are being cast to/from pointers, which is dangerous when their sizes differ (as they do in 64-bit).
I'll take a look at those tonight.
User avatar
Ats
Posts: 800
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

So I've been trying to fix the warnings: "Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead."
Starting with the file that has the less: Renderer.pas

32 and 64 have the exact same warnings:
Renderer.pas(805,17) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
Renderer.pas(972,23) Warning: Local variable "TextBuf" does not seem to be initialized
Renderer.pas(1466,20) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
Renderer.pas(1467,20) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
Renderer.pas(1607,66) Warning: Local variable "ScaledGravity" does not seem to be initialized
Renderer.pas(1732,5) Note: Local variable "S" is assigned but never used
Renderer.pas(2170,3) Note: Local variable "FilterTypes" not used
I simply fixed them like that, as hinted by the warning messages:

Renderer.pas(805,17)

Code: Select all

Tp := pointer(NativeInt(Vp) + Beams.Count * 3 * (2*SizeOf(single)));
replaced by

Code: Select all

Tp := pointer(NativeUInt(Vp) + Beams.Count * 3 * (2*SizeOf(single)));
Renderer.pas(1466,20) & Renderer.pas(1467,20)

Code: Select all

ArT := Pointer(NativeInt(ArV) + (Particles.Count*6*SizeOf(Single)*2) );
ArC := Pointer(NativeInt(ArT) + (Particles.Count*6*SizeOf(Single)*2) );
replaced by

Code: Select all

ArT := Pointer(NativeUInt(ArV) + (Particles.Count*6*SizeOf(Single)*2) );
ArC := Pointer(NativeUInt(ArT) + (Particles.Count*6*SizeOf(Single)*2) );
But now 32 has different warnings:
Renderer.pas(805,9) Warning: Conversion between ordinals and pointers is not portable
Renderer.pas(972,23) Warning: Local variable "TextBuf" does not seem to be initialized
Renderer.pas(1466,12) Warning: Conversion between ordinals and pointers is not portable
Renderer.pas(1467,12) Warning: Conversion between ordinals and pointers is not portable
Renderer.pas(1607,66) Warning: Local variable "ScaledGravity" does not seem to be initialized
Renderer.pas(1732,5) Note: Local variable "S" is assigned but never used
Renderer.pas(2170,3) Note: Local variable "FilterTypes" not used
While 64 is getting better:
Renderer.pas(972,23) Warning: Local variable "TextBuf" does not seem to be initialized
Renderer.pas(1607,66) Warning: Local variable "ScaledGravity" does not seem to be initialized
Renderer.pas(1732,5) Note: Local variable "S" is assigned but never used
Renderer.pas(2170,3) Note: Local variable "FilterTypes" not used
So I really don't know :?
Post Reply