Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crash on startup (input currency code is not 3-letter alphabetic code) #13600

Open
4 tasks done
vaardan opened this issue Jun 22, 2024 · 11 comments
Open
4 tasks done

Crash on startup (input currency code is not 3-letter alphabetic code) #13600

vaardan opened this issue Jun 22, 2024 · 11 comments
Labels

Comments

@vaardan
Copy link

vaardan commented Jun 22, 2024


Bug description

The application crashes after the launch. It does that only with the internet connection. Seems to be related to some kind of currency check.

Steps to reproduce

Can't really tell. It crashes right after the launch.

Actual result: Application crashes a couple of seconds after the launch.
Expected result: Application doesn't crash.

Screenshots

Device info

Device: Google Pixel 7
Android version: 14 (Graphene OS)
Signal version: 7.8.1

Crash log

type: crash
osVersion: google/panther/panther:14/AP2A.240605.024/2024062000:user/release-keys
package: org.thoughtcrime.securesms:142102
process: org.thoughtcrime.securesms
processUptime: 3477 + 255 ms
installer: com.android.vending

java.lang.IllegalArgumentException: The input currency code is not 3-letter alphabetic code.
	at android.icu.util.Currency.getInstance(Currency.java:289)
	at java.util.Currency.getInstance(Currency.java:278)
	at org.thoughtcrime.securesms.keyvalue.DonationsValues.setSubscriber(DonationsValues.kt:248)
	at org.thoughtcrime.securesms.storage.StorageSyncHelper.applyAccountStorageSyncUpdates(StorageSyncHelper.java:230)
	at org.thoughtcrime.securesms.storage.AccountRecordProcessor.updateLocal(AccountRecordProcessor.java:183)
	at org.thoughtcrime.securesms.storage.DefaultStorageRecordProcessor.process(DefaultStorageRecordProcessor.java:68)
	at org.thoughtcrime.securesms.storage.AccountRecordProcessor.process(AccountRecordProcessor.java:28)
	at org.thoughtcrime.securesms.jobs.StorageSyncJob.processKnownRecords(StorageSyncJob.java:413)
	at org.thoughtcrime.securesms.jobs.StorageSyncJob.performSync(StorageSyncJob.java:293)
	at org.thoughtcrime.securesms.jobs.StorageSyncJob.onRun(StorageSyncJob.java:194)
	at org.thoughtcrime.securesms.jobs.BaseJob.run(BaseJob.java:31)
	at org.thoughtcrime.securesms.jobmanager.JobRunner.run(JobRunner.java:86)
	at org.thoughtcrime.securesms.jobmanager.JobRunner.run(JobRunner.java:49)
	at [[ ↑↑ Original Trace ↑↑ ]].(:0)
	at [[ ↓↓ Exception Message ↓↓ ]].(:0)
	at The input currency code is not 3-letter alphabetic code..(:0)

Link to debug log

Adding log as a file. I can't export it so it can be a link because that requires internet connection & that leads to a crash.
log.txt

@petre2dor
Copy link

Same issue here.
LineageOS 21 with Google Apps, Oneplus 8T.

@tkeitzl
Copy link

tkeitzl commented Jun 23, 2024

Same issue here.
Device: Fairphone 3
Android version: 13
Signal version: 7.8.1

Quick fix: manually install version 7.9.6 - https://github.com/signalapp/Signal-Android/releases/tag/v7.9.6

@betrieb
Copy link

betrieb commented Jun 23, 2024

Same issue here with LineageOS 19, Android 12, Oneplus 5T

@vaardan
Copy link
Author

vaardan commented Jun 24, 2024

@tkeitzl the v7.9.6 works for me as well

@santiago-mooser
Copy link

Same issue here.

Device: Pixel 8
OS: CalyxOS 5.8.0 (Android 14, June 5 security update)
Signal version: 7.8.1
Extra info: The OS uses MicroG instead of google play services, but I don't think that's related to the issue.

Updating to v7.9.6 worked for me too. The app is no longer crashing, but it seems like the error is still there. The error seems to be related to being a subscriber since it's in the org.thoughtcrime.securesms.keyvalue.DonationsValues.setSubscriber method.

Just as extra info: I donate monthly and I pay through the website in Hong Kong Dollar (HKD $29 every month).

[7.8.1] [4209 ] 2024-06-24 09:19:02.626 GMT+08:00 I DonationsValues: Setting subscriber for currency 
[7.8.1] [4209 ] 2024-06-24 09:19:02.626 GMT+08:00 I DonationsValues: java.lang.Exception
[7.8.1] [4209 ] 2024-06-24 09:19:02.626 GMT+08:00 I DonationsValues: 	at org.thoughtcrime.securesms.keyvalue.DonationsValues.setSubscriber(DonationsValues.kt:241)
[7.8.1] [4209 ] 2024-06-24 09:19:02.626 GMT+08:00 I DonationsValues: 	at org.thoughtcrime.securesms.storage.StorageSyncHelper.applyAccountStorageSyncUpdates(StorageSyncHelper.java:230)
[7.8.1] [4209 ] 2024-06-24 09:19:02.626 GMT+08:00 I DonationsValues: 	at org.thoughtcrime.securesms.storage.AccountRecordProcessor.updateLocal(AccountRecordProcessor.java:183)
[7.8.1] [4209 ] 2024-06-24 09:19:02.626 GMT+08:00 I DonationsValues: 	at org.thoughtcrime.securesms.storage.DefaultStorageRecordProcessor.process(DefaultStorageRecordProcessor.java:68)
[7.8.1] [4209 ] 2024-06-24 09:19:02.626 GMT+08:00 I DonationsValues: 	at org.thoughtcrime.securesms.storage.AccountRecordProcessor.process(AccountRecordProcessor.java:28)
[7.8.1] [4209 ] 2024-06-24 09:19:02.626 GMT+08:00 I DonationsValues: 	at org.thoughtcrime.securesms.jobs.StorageSyncJob.processKnownRecords(StorageSyncJob.java:413)
[7.8.1] [4209 ] 2024-06-24 09:19:02.626 GMT+08:00 I DonationsValues: 	at org.thoughtcrime.securesms.jobs.StorageSyncJob.performSync(StorageSyncJob.java:293)
[7.8.1] [4209 ] 2024-06-24 09:19:02.626 GMT+08:00 I DonationsValues: 	at org.thoughtcrime.securesms.jobs.StorageSyncJob.onRun(StorageSyncJob.java:194)
[7.8.1] [4209 ] 2024-06-24 09:19:02.626 GMT+08:00 I DonationsValues: 	at org.thoughtcrime.securesms.jobs.BaseJob.run(BaseJob.java:31)
[7.8.1] [4209 ] 2024-06-24 09:19:02.626 GMT+08:00 I DonationsValues: 	at org.thoughtcrime.securesms.jobmanager.JobRunner.run(JobRunner.java:86)
[7.8.1] [4209 ] 2024-06-24 09:19:02.626 GMT+08:00 I DonationsValues: 	at org.thoughtcrime.securesms.jobmanager.JobRunner.run(JobRunner.java:49)
[7.8.1] [4209 ] 2024-06-24 09:19:02.626 GMT+08:00 I DonationsValues: 
[7.8.1] [4209 ] 2024-06-24 09:19:02.630 GMT+08:00 E BaseJob: Encountered a fatal exception. Crash imminent.
[7.8.1] [4209 ] 2024-06-24 09:19:02.630 GMT+08:00 E BaseJob: java.lang.IllegalArgumentException: The input currency code is not 3-letter alphabetic code.
[7.8.1] [4209 ] 2024-06-24 09:19:02.630 GMT+08:00 E BaseJob: 	at android.icu.util.Currency.getInstance(Currency.java:289)
[7.8.1] [4209 ] 2024-06-24 09:19:02.630 GMT+08:00 E BaseJob: 	at java.util.Currency.getInstance(Currency.java:278)
[7.8.1] [4209 ] 2024-06-24 09:19:02.630 GMT+08:00 E BaseJob: 	at org.thoughtcrime.securesms.keyvalue.DonationsValues.setSubscriber(DonationsValues.kt:248)
[7.8.1] [4209 ] 2024-06-24 09:19:02.630 GMT+08:00 E BaseJob: 	at org.thoughtcrime.securesms.storage.StorageSyncHelper.applyAccountStorageSyncUpdates(StorageSyncHelper.java:230)
[7.8.1] [4209 ] 2024-06-24 09:19:02.630 GMT+08:00 E BaseJob: 	at org.thoughtcrime.securesms.storage.AccountRecordProcessor.updateLocal(AccountRecordProcessor.java:183)
[7.8.1] [4209 ] 2024-06-24 09:19:02.630 GMT+08:00 E BaseJob: 	at org.thoughtcrime.securesms.storage.DefaultStorageRecordProcessor.process(DefaultStorageRecordProcessor.java:68)
[7.8.1] [4209 ] 2024-06-24 09:19:02.630 GMT+08:00 E BaseJob: 	at org.thoughtcrime.securesms.storage.AccountRecordProcessor.process(AccountRecordProcessor.java:28)
[7.8.1] [4209 ] 2024-06-24 09:19:02.630 GMT+08:00 E BaseJob: 	at org.thoughtcrime.securesms.jobs.StorageSyncJob.processKnownRecords(StorageSyncJob.java:413)
[7.8.1] [4209 ] 2024-06-24 09:19:02.630 GMT+08:00 E BaseJob: 	at org.thoughtcrime.securesms.jobs.StorageSyncJob.performSync(StorageSyncJob.java:293)
[7.8.1] [4209 ] 2024-06-24 09:19:02.630 GMT+08:00 E BaseJob: 	at org.thoughtcrime.securesms.jobs.StorageSyncJob.onRun(StorageSyncJob.java:194)
[7.8.1] [4209 ] 2024-06-24 09:19:02.630 GMT+08:00 E BaseJob: 	at org.thoughtcrime.securesms.jobs.BaseJob.run(BaseJob.java:31)
[7.8.1] [4209 ] 2024-06-24 09:19:02.630 GMT+08:00 E BaseJob: 	at org.thoughtcrime.securesms.jobmanager.JobRunner.run(JobRunner.java:86)
[7.8.1] [4209 ] 2024-06-24 09:19:02.630 GMT+08:00 E BaseJob: 	at org.thoughtcrime.securesms.jobmanager.JobRunner.run(JobRunner.java:49)
[7.8.1] [4209 ] 2024-06-24 09:19:02.630 GMT+08:00 E BaseJob: 
[7.8.1] [4209 ] 2024-06-24 09:19:02.635 GMT+08:00 E JobRunner: [JOB::56af8707-9cb6-4c07-8315-8da28d515dce][StorageSyncJob][2] Job failed with a fatal exception. Crash imminent. (Time Since Submission: 4122 ms, Lifespan: 86400000 ms, Run Attempt: 1/3, Queue: StorageSyncingJobs)
[7.8.1] [4209 ] 2024-06-24 09:19:02.639 GMT+08:00 E SignalUncaughtException: 
[7.8.1] [4209 ] 2024-06-24 09:19:02.639 GMT+08:00 E SignalUncaughtException: java.lang.IllegalArgumentException: The input currency code is not 3-letter alphabetic code.
[7.8.1] [4209 ] 2024-06-24 09:19:02.639 GMT+08:00 E SignalUncaughtException: 	at android.icu.util.Currency.getInstance(Currency.java:289)
[7.8.1] [4209 ] 2024-06-24 09:19:02.639 GMT+08:00 E SignalUncaughtException: 	at java.util.Currency.getInstance(Currency.java:278)
[7.8.1] [4209 ] 2024-06-24 09:19:02.639 GMT+08:00 E SignalUncaughtException: 	at org.thoughtcrime.securesms.keyvalue.DonationsValues.setSubscriber(DonationsValues.kt:248)
[7.8.1] [4209 ] 2024-06-24 09:19:02.639 GMT+08:00 E SignalUncaughtException: 	at org.thoughtcrime.securesms.storage.StorageSyncHelper.applyAccountStorageSyncUpdates(StorageSyncHelper.java:230)
[7.8.1] [4209 ] 2024-06-24 09:19:02.639 GMT+08:00 E SignalUncaughtException: 	at org.thoughtcrime.securesms.storage.AccountRecordProcessor.updateLocal(AccountRecordProcessor.java:183)
[7.8.1] [4209 ] 2024-06-24 09:19:02.639 GMT+08:00 E SignalUncaughtException: 	at org.thoughtcrime.securesms.storage.DefaultStorageRecordProcessor.process(DefaultStorageRecordProcessor.java:68)
[7.8.1] [4209 ] 2024-06-24 09:19:02.639 GMT+08:00 E SignalUncaughtException: 	at org.thoughtcrime.securesms.storage.AccountRecordProcessor.process(AccountRecordProcessor.java:28)
[7.8.1] [4209 ] 2024-06-24 09:19:02.639 GMT+08:00 E SignalUncaughtException: 	at org.thoughtcrime.securesms.jobs.StorageSyncJob.processKnownRecords(StorageSyncJob.java:413)
[7.8.1] [4209 ] 2024-06-24 09:19:02.639 GMT+08:00 E SignalUncaughtException: 	at org.thoughtcrime.securesms.jobs.StorageSyncJob.performSync(StorageSyncJob.java:293)
[7.8.1] [4209 ] 2024-06-24 09:19:02.639 GMT+08:00 E SignalUncaughtException: 	at org.thoughtcrime.securesms.jobs.StorageSyncJob.onRun(StorageSyncJob.java:194)
[7.8.1] [4209 ] 2024-06-24 09:19:02.639 GMT+08:00 E SignalUncaughtException: 	at org.thoughtcrime.securesms.jobs.BaseJob.run(BaseJob.java:31)
[7.8.1] [4209 ] 2024-06-24 09:19:02.639 GMT+08:00 E SignalUncaughtException: 	at org.thoughtcrime.securesms.jobmanager.JobRunner.run(JobRunner.java:86)
[7.8.1] [4209 ] 2024-06-24 09:19:02.639 GMT+08:00 E SignalUncaughtException: 	at org.thoughtcrime.securesms.jobmanager.JobRunner.run(JobRunner.java:49)
[7.8.1] [4209 ] 2024-06-24 09:19:02.639 GMT+08:00 E SignalUncaughtException: 

You can find my logs here:
https://debuglogs.org/android/7.9.6/97b55a7c1b1f49edd3509f980f2c6c7aeb6df06977b2094330ecacb4f9ce1382

@vaardan @petre2dor @tkeitzl @betrieb @vaardan do you guys donate as well?

@vaardan
Copy link
Author

vaardan commented Jun 24, 2024

@santiago-mooser yep, I do donate as well

@betrieb
Copy link

betrieb commented Jun 24, 2024

@santiago-mooser I've never donated

@schoeda
Copy link

schoeda commented Jun 24, 2024

Same problem here with a Pixel 8 and i do a donation too.

@vaardan
Copy link
Author

vaardan commented Jun 24, 2024

For the quick fix, if you don't want/know how to manually compile v7.9.6, you can temporarily get the apk from apk mirror.

The apk seems fine & it's signed by Signal (Whisper Systems) itself.

@alex-signal
Copy link
Contributor

Hi everyone! I've just updated the rollout for 7.9.6 to 100% on production so the build should be available to all without having to go through apk mirror. Sorry for the crash!

Copy link

stale bot commented Aug 24, 2024

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the wontfix label Aug 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

No branches or pull requests

7 participants