AnyMemo
AnyMemo copied to clipboard
the app throw java.lang.StringIndexOutOfBoundsException when click "Merge DB" button
the environment is as follows:
App version: 10.11.3
Android version: 6.0
Device: Nexux_5X
The steps to reproduce:
The Exception log is as follows:
05-12 13:12:40.668 15386-15386/org.liberty.android.fantastischmemodev E/org.liberty.android.fantastischmemo.utils.AMGUIUtility: displayException
java.lang.RuntimeException: java.lang.StringIndexOutOfBoundsException: length=0; index=0
at org.liberty.android.fantastischmemo.dao.CardDaoImpl.createCards(CardDaoImpl.java:542)
at org.liberty.android.fantastischmemo.utils.DatabaseUtil.mergeDatabases(DatabaseUtil.java:72)
at org.liberty.android.fantastischmemo.ui.DatabaseMerger$1.doHeavyTask(DatabaseMerger.java:120)
at org.liberty.android.fantastischmemo.utils.AMGUIUtility$4.run(AMGUIUtility.java:83)
Caused by: java.lang.StringIndexOutOfBoundsException: length=0; index=0
at java.lang.String.charAt(Native Method)
at android.app.ContextImpl.validateFilePath(ContextImpl.java:1921)
at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:566)
at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:269)
at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:223)
at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:163)
at com.j256.ormlite.android.AndroidConnectionSource.getReadWriteConnection(AndroidConnectionSource.java:68)
at com.j256.ormlite.stmt.StatementExecutor.doCallBatchTasks(StatementExecutor.java:607)
at com.j256.ormlite.stmt.StatementExecutor.callBatchTasks(StatementExecutor.java:598)
at com.j256.ormlite.dao.BaseDaoImpl.callBatchTasks(BaseDaoImpl.java:724)
at org.liberty.android.fantastischmemo.dao.AbstractHelperDaoImpl.callBatchTasks(AbstractHelperDaoImpl.java:151)
at org.liberty.android.fantastischmemo.dao.CardDaoImpl.createCards(CardDaoImpl.java:493)
at org.liberty.android.fantastischmemo.utils.DatabaseUtil.mergeDatabases(DatabaseUtil.java:72)
at org.liberty.android.fantastischmemo.ui.DatabaseMerger$1.doHeavyTask(DatabaseMerger.java:120)
at org.liberty.android.fantastischmemo.utils.AMGUIUtility$4.run(AMGUIUtility.java:83)
05-12 13:12:40.671 15386-15386/org.liberty.android.fantastischmemodev E/org.liberty.android.fantastischmemo.utils.AMGUIUtility: Error running progress task
java.lang.RuntimeException: java.lang.StringIndexOutOfBoundsException: length=0; index=0
at org.liberty.android.fantastischmemo.dao.CardDaoImpl.createCards(CardDaoImpl.java:542)
at org.liberty.android.fantastischmemo.utils.DatabaseUtil.mergeDatabases(DatabaseUtil.java:72)
at org.liberty.android.fantastischmemo.ui.DatabaseMerger$1.doHeavyTask(DatabaseMerger.java:120)
at org.liberty.android.fantastischmemo.utils.AMGUIUtility$4.run(AMGUIUtility.java:83)
Caused by: java.lang.StringIndexOutOfBoundsException: length=0; index=0
at java.lang.String.charAt(Native Method)
at android.app.ContextImpl.validateFilePath(ContextImpl.java:1921)
at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:566)
at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:269)
at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:223)
at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:163)
at com.j256.ormlite.android.AndroidConnectionSource.getReadWriteConnection(AndroidConnectionSource.java:68)
at com.j256.ormlite.stmt.StatementExecutor.doCallBatchTasks(StatementExecutor.java:607)
at com.j256.ormlite.stmt.StatementExecutor.callBatchTasks(StatementExecutor.java:598)
at com.j256.ormlite.dao.BaseDaoImpl.callBatchTasks(BaseDaoImpl.java:724)
at org.liberty.android.fantastischmemo.dao.AbstractHelperDaoImpl.callBatchTasks(AbstractHelperDaoImpl.java:151)
at org.liberty.android.fantastischmemo.dao.CardDaoImpl.createCards(CardDaoImpl.java:493)
at org.liberty.android.fantastischmemo.utils.DatabaseUtil.mergeDatabases(DatabaseUtil.java:72)
at org.liberty.android.fantastischmemo.ui.DatabaseMerger$1.doHeavyTask(DatabaseMerger.java:120)
at org.liberty.android.fantastischmemo.utils.AMGUIUtility$4.run(AMGUIUtility.java:83)