jroal / a2dpvolume

Automatically exported from code.google.com/p/a2dpvolume
http://jimroal.com/slist.htm
95 stars 33 forks source link

a2dp.Vol.main attempt to re-open an already-closed object #227

Closed ITanCh closed 5 years ago

ITanCh commented 7 years ago
// CRASH: a2dp.Vol (pid 8406)
// Short Msg: java.lang.IllegalStateException
// Long Msg: java.lang.IllegalStateException: attempt to re-open an already-closed object: SQLiteDatabase: /data/user/0/a2dp.Vol/databases/btdevices.db
// Build Label: Android/aosp_flo/flo:6.0.1/MOB30P/tianchi10041651:userdebug/test-keys
// Build Changelist: eng.tianchi.20161004.165046
// Build Time: 1475571199000
// java.lang.IllegalStateException: attempt to re-open an already-closed object: SQLiteDatabase: /data/user/0/a2dp.Vol/databases/btdevices.db
//  at android.database.sqlite.SQLiteClosable.acquireReference(SQLiteClosable.java:55)
//  at android.database.sqlite.SQLiteDatabase.delete(SQLiteDatabase.java:1494)
//  at a2dp.Vol.DeviceDB.deleteAll(DeviceDB.java:192)
//  at a2dp.Vol.main$2.onClick(main.java:127)
//  at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:163)
//  at android.os.Handler.dispatchMessage(Handler.java:102)
//  at android.os.Looper.loop(Looper.java:148)
//  at android.app.ActivityThread.main(ActivityThread.java:5417)
//  at java.lang.reflect.Method.invoke(Native Method)
//  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
//  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
//  at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:102)
//

version: 2.12.5 device: Nexus 7 flo, android 6.0.1

jroal commented 7 years ago

I did not recreate this issue but I think I fixed it in 2.12.8. I added a check to ensure database was open before performing the delete.