Skip to content

[Bug]: suddenly close #4725

@TermuxTyro

Description

@TermuxTyro

Problem description

Crash Details

Crash Thread: Thread[main,5,main]
Crash Timestamp: 2025-08-25 04:14:29.891 UTC

Crash Message:

The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a background thread, but only from the UI thread. Make sure your adapter calls notifyDataSetChanged() when its content changes. [in ListView(2131231117, class android.widget.ListView) with Adapter(class com.termux.app.terminal.TermuxSessionsListViewController)]

Stacktrace

java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a background thread, but only from the UI thread. Make sure your adapter calls notifyDataSetChanged() when its content changes. [in ListView(2131231117, class android.widget.ListView) with Adapter(class com.termux.app.terminal.TermuxSessionsListViewController)]
	at android.widget.ListView.layoutChildren(ListView.java:1715)
	at android.widget.AbsListView.onTouchUp(AbsListView.java:4256)
	at android.widget.AbsListView.onTouchEvent(AbsListView.java:4032)
	at android.view.View.performOnTouchCallback(View.java:16681)
	at android.view.View.dispatchTouchEvent(View.java:16585)
	at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3192)
	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2852)
	at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3198)
	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2866)
	at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3198)
	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2866)
	at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3198)
	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2866)
	at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3198)
	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2866)
	at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3198)
	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2866)
	at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3198)
	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2866)
	at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3198)
	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2866)
	at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3198)
	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2866)
	at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3198)
	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2866)
	at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:551)
	at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:2032)
	at android.app.Activity.dispatchTouchEvent(Activity.java:4663)
	at androidx.appcompat.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:69)
	at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:499)
	at android.view.View.dispatchPointerEvent(View.java:16980)
	at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:8947)
	at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:8620)
	at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:8005)
	at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:8069)
	at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:8028)
	at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:8201)
	at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:8036)
	at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:8258)
	at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:8009)
	at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:8069)
	at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:8028)
	at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:8036)
	at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:8009)
	at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:11458)
	at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:11405)
	at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:11351)
	at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:11624)
	at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:313)
	at android.os.MessageQueue.nativePollOnce(Native Method)
	at android.os.MessageQueue.next(MessageQueue.java:370)
	at android.os.Looper.loopOnce(Looper.java:214)
	at android.os.Looper.loop(Looper.java:393)
	at android.app.ActivityThread.main(ActivityThread.java:9559)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:600)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1005)

Termux App Info

APP_NAME: Termux
PACKAGE_NAME: com.termux
VERSION_NAME: 0.119.0-beta.3
VERSION_CODE: 1022
UID: 10326
TARGET_SDK: 28
IS_DEBUGGABLE_BUILD: false
SE_PROCESS_CONTEXT: u:r:untrusted_app_27:s0:c70,c257,c512,c768
SE_FILE_CONTEXT: u:object_r:app_data_file:s0:c70,c257,c512,c768
SE_INFO: default:targetSdkVersion=28:complete
TERMUX_APP_PACKAGE_MANAGER: APT
TERMUX_APP_PACKAGE_VARIANT: APT_ANDROID_7
APK_RELEASE: F-Droid
SIGNING_CERTIFICATE_SHA256_DIGEST: 228FB2CFE90831C1499EC3CCAF61E96E8E1CE70766B9474672CE427334D41C42

Device Info

crash_log_backup.md

Software

OS_VERSION: 6.1.128-android14-11-o-g9aef2a13e33d
SDK_INT: 35
RELEASE: 15
ID: AP3A.240617.008
DISPLAY: CPH2629_15.0.0.840(EX01)
INCREMENTAL: U.R4T2.2594c7f-6f70bd-6f70ba
SECURITY_PATCH: 2025-07-01
IS_TREBLE_ENABLED: true
TYPE: user
TAGS: release-keys
MAX_PHANTOM_PROCESSES: - (Requires DUMP and PACKAGE_USAGE_STATS permission)
MONITOR_PHANTOM_PROCS: false
DEVICE_CONFIG_SYNC_DISABLED: -

Hardware

MANUFACTURER: OPPO
BRAND: OPPO
MODEL: CPH2629
PRODUCT: CPH2629IN
BOARD: k6878v1_64
HARDWARE: mt6878
DEVICE: OP5AE1L1
SUPPORTED_ABIS: arm64-v8a
SUPPORTED_32_BIT_ABIS:
SUPPORTED_64_BIT_ABIS: arm64-v8a
PAGE_SIZE: 4096

Steps to reproduce the behavior.

I m working with open multiple sessions.

What is the expected behavior?

No response

System information

  • Termux application version:
  • Android OS version:
  • Device model:

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions