Export failed notification, yet export works

  • I have searched for duplicates (including closed issues)
  • I have read the wiki

Bug Summary

Export settings pops up "Export Failed" briefly. Exported settings zip is created in the chosen directory.

Steps to reproduce

  1. Click Settings/Export Settings

Actual behaviour

Export settings pops up "Export Failed" briefly. Exported settings zip is created in the chosen directory.

Expected behaviour

No failure message Exported settings zip is created in the chosen directory.

Metadata

  • FMD Android version: 0.12.1
  • FMD Server version: N/A
  • Android version: 15
  • ROM name: /e/OS
  • Clean install: ?

Logs

Exporting the log using the share symbol pops up "Export succeeded", yet no file is created! I got the log below by convoluted cut and paste...

Export failed:
java.io.IOException: Stream closed
	at sun.nio.cs.StreamEncoder.ensureOpen(StreamEncoder.java:45)
	at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:152)
	at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:248)
	at de.nulide.findmydevice.utils.SettingsImportExporter.exportData$lambda$0(ImportExportUtil.kt:49)
	at de.nulide.findmydevice.utils.SettingsImportExporter.$r8$lambda$JeCibQtfRr8PLYTrx_zLXny38y4(Unknown Source:0)
	at de.nulide.findmydevice.utils.SettingsImportExporter$$ExternalSyntheticLambda1.invoke(D8$$SyntheticClass:0)
	at de.nulide.findmydevice.utils.ImportExportUtilKt.writeToUri(ImportExportUtil.kt:111)
	at de.nulide.findmydevice.utils.SettingsImportExporter.exportData(ImportExportUtil.kt:42)
	at de.nulide.findmydevice.ui.settings.SettingsFragment.onActivityResult(SettingsFragment.java:131)
	at androidx.fragment.app.FragmentManager$8.onActivityResult(FragmentManager.java:3041)
	at androidx.fragment.app.FragmentManager$8.onActivityResult(FragmentManager.java:3021)
	at androidx.activity.result.ActivityResultRegistry.doDispatch(ActivityResultRegistry.kt:350)
	at androidx.activity.result.ActivityResultRegistry.dispatchResult(ActivityResultRegistry.kt:311)
	at androidx.activity.ComponentActivity.onActivityResult(ComponentActivity.kt:756)
	at androidx.fragment.app.FragmentActivity.onActivityResult(FragmentActivity.java:151)
	at android.app.Activity.onActivityResult(Activity.java:7571)
	at android.app.Activity.internalDispatchActivityResult(Activity.java:9470)
	at android.app.Activity.dispatchActivityResult(Activity.java:9447)
	at android.app.ActivityThread.deliverResults(ActivityThread.java:6025)
	at android.app.ActivityThread.handleSendResult(ActivityThread.java:6075)
	at android.app.servertransaction.ActivityResultItem.execute(ActivityResultItem.java:78)
	at android.app.servertransaction.ActivityTransactionItem.execute(ActivityTransactionItem.java:63)
	at android.app.servertransaction.TransactionExecutor.executeNonLifecycleItem(TransactionExecutor.java:133)
	at android.app.servertransaction.TransactionExecutor.executeTransactionItems(TransactionExecutor.java:103)
	at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:80)
	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2773)
	at android.os.Handler.dispatchMessage(Handler.java:109)
	at android.os.Looper.loopOnce(Looper.java:232)
	at android.os.Looper.loop(Looper.java:317)
	at android.app.ActivityThread.main(ActivityThread.java:8934)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:591)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:911)