termux / termux/termux-api

Clipboard plugins bug or anomaly

Open
#720 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
4.3k
Forks
920
PR merge metrics
No merged PRs in 30d

Description

Problem description

Try running
termux-clipboard-get | termux-clipboard-set

OR

some_command < <(termux-clipboard-get) | termux-clipboard-set

Such struck in input stdin loop

Sometimes work once but then try to run more than once and
You will struck in no stdin wiating loop

Error in ResultReturner

## Report Info


**User Action**: `crash report`  
**Sender**: `TermuxActivity`  
**Report Timestamp**: `2024-10-19 16:52:09.097 UTC`  
##

## Crash Details

**Crash Thread**: `Thread[main,5,main]`  
**Crash Timestamp**: `2024-10-19 16:52:05.186 UTC`  

**Crash Message**:

Unable to start activity ComponentInfo{com.termux/com.termux.shared.activities.ReportActivity}: java.lang.RuntimeException: Parcelable encountered IOException reading a Serializable object (name = com.termux.shared.models.ReportInfo)



### Stacktrace

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.termux/com.termux.shared.activities.ReportActivity}: java.lang.RuntimeException: Parcelable encountered IOException reading a Serializable object (name = com.termux.shared.models.ReportInfo)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3556)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3703)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2216)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:237)
at android.app.ActivityThread.main(ActivityThread.java:7948)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1075)
Caused by: java.lang.RuntimeException: Parcelable encountered IOException reading a Serializable object (name = com.termux.shared.models.ReportInfo)
at android.os.Parcel.readSerializable(Parcel.java:3153)
at android.os.Parcel.readValue(Parcel.java:2934)
at android.os.Parcel.readArrayMapInternal(Parcel.java:3261)
at android.os.BaseBundle.initializeFromParcelLocked(BaseBundle.java:292)
at android.os.BaseBundle.unparcel(BaseBundle.java:236)
at android.os.BaseBundle.containsKey(BaseBundle.java:509)
at com.termux.shared.activities.ReportActivity.updateUI(ReportActivity.java:116)
at com.termux.shared.activities.ReportActivity.onCreate(ReportActivity.java:89)
at android.app.Activity.performCreate(Activity.java:7955)
at android.app.Activity.performCreate(Activity.java:7944)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1307)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3531)
... 11 more
Caused by: java.io.InvalidClassException: com.termux.shared.models.ReportInfo; local class incompatible: stream classdesc serialVersionUID = -5165426368218339031, local class serialVersionUID = 3324698011185826218
at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:624)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1713)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1594)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1872)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1412)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:427)
at android.os.Parcel.readSerializable(Parcel.java:3151)
... 22 more

##


## Termux App Info

**APP_NAME**: `Termux`  
**PACKAGE_NAME**: `com.termux`  
**VERSION_NAME**: `0.118.1`  
**VERSION_CODE**: `1000`  
**TARGET_SDK**: `28`  
**IS_DEBUGGABLE_BUILD**: `true`  
**APK_RELEASE**: `Github`  
**SIGNING_CERTIFICATE_SHA256_DIGEST**: `B6DA01480EEFD5FBF2CD3771B8D1021EC791304BDD6C4BF41D3FAABAD48EE5E1`  
##


## Device Info

### Software

**OS_VERSION**: `4.4.177-22371317`  
**SDK_INT**: `29`  
**RELEASE**: `10`  
**ID**: `QP1A.190711.020`  
**DISPLAY**: `QP1A.190711.020.A750FXXU5CVI1`  
**INCREMENTAL**: `A750FXXU5CVI1`  
**SECURITY_PATCH**: `2022-07-01`  
**IS_DEBUGGABLE**: `0`  
**IS_TREBLE_ENABLED**: `true`  
**TYPE**: `user`  
**TAGS**: `release-keys`  

### Hardware

**MANUFACTURER**: `samsung`  
**BRAND**: `samsung`  
**MODEL**: `SM-A750F`  
**PRODUCT**: `a7y18ltejt`  
**BOARD**: `exynos7885`  
**HARDWARE**: `exynos7885`  
**DEVICE**: `a7y18lte`  
**SUPPORTED_ABIS**: `arm64-v8a, armeabi-v7a, armeabi`  
##



Steps to reproduce

Expected behavior

Additional information

  • termux-api application version:
  • termux-api package version (installed through apt):
  • Android OS version: 10
  • Device model:
    Samsung A7

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the ReportActivity.updateUI and ReportInfo entries named in the stack trace, then inspect how the crash report is passed between activities. Run the reported clipboard commands repeatedly to check the stdin loop and capture whether opening the crash report reproduces the serialization failure. Done means the commands complete consistently and the crash report opens without the reported exception.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, java
Domain
cli, mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.