celzero / rethink-app

DNS over HTTPS / DNS over Tor / DNSCrypt client, WireGuard proxifier, firewall, and connection tracker for Android.
https://rethinkfirewall.com/
Apache License 2.0
3.03k stars 154 forks source link

[BUG] App data corruption when stopping Rethink for a few hours #1801

Open TyraVex opened 2 days ago

TyraVex commented 2 days ago

Hello,

I have been using this app for now over a year, and it has been very useful. Thanks a lot for devs of this project.

Sadly, there is a bug that corrupts a large portion of the app data (I can't open DNS tab, per app rules are 90% gone, proxy configuration is gone, and 90% of app internet access rules are gone).

I lived well with this bug by using backups each time I needed to stop rethink, and restored them upon reusing it. Even so, the proxy config did not come back, but it wasn't a pain to import a wireguard config files and selecting the routed apps.

Today I got the app data corruption bug described above, but I erased my backups by mistake, so I am now finally taking the time to report it.

I am using HyperOS 1.0.5.0 from xiaomi.eu on a Mi 11 Ultra, Android 14. Phone is rooted with magisk. I'd like to add that this bug happens 100% of the time if the following steps are followed on my device.

To reproduce the bug:

Things I tried:

hussainmohd-a commented 2 days ago

@TyraVex, Thanks for the kind words! Could you please share the logs? You can find them in About -> Bug Report (email crash logs)`. This will help us figure out what's causing the issue on your device.

TyraVex commented 2 days ago

Thank you for your response.

Proton Mail is having a hard time processing the email request from Rethink (Proton's fault?) How can I reach you? I'd prefer to share those logs privately.

ignoramous commented 1 day ago

Send them to mz at celzero dot com (which is me) or md at celzero dot com (which is @hussainmohd-a).

If you're technical enough, take logs the second time you open the app (when you notice that most of the data is gone) via adb logcat (instead of relying on app's built-in bugreporter which may or may not capture all logs. If you can't, the in-app bugreport would also so. No pressure).

TyraVex commented 1 day ago

Thanks I'll use logcat, i'm more confortable with that rather than sending 500kb of logs