App crashes when back button is used during downloading
zeyomir opened this issue · 2 comments
zeyomir commented
stacktrace:
11-20 20:32:36.665: E/AndroidRuntime(13442): FATAL EXCEPTION: AsyncTask #2
11-20 20:32:36.665: E/AndroidRuntime(13442): java.lang.RuntimeException: An error occured while executing doInBackground()
11-20 20:32:36.665: E/AndroidRuntime(13442): at android.os.AsyncTask$3.done(AsyncTask.java:299)
11-20 20:32:36.665: E/AndroidRuntime(13442): at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:352)
11-20 20:32:36.665: E/AndroidRuntime(13442): at java.util.concurrent.FutureTask.setException(FutureTask.java:219)
11-20 20:32:36.665: E/AndroidRuntime(13442): at java.util.concurrent.FutureTask.run(FutureTask.java:239)
11-20 20:32:36.665: E/AndroidRuntime(13442): at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
11-20 20:32:36.665: E/AndroidRuntime(13442): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
11-20 20:32:36.665: E/AndroidRuntime(13442): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
11-20 20:32:36.665: E/AndroidRuntime(13442): at java.lang.Thread.run(Thread.java:841)
11-20 20:32:36.665: E/AndroidRuntime(13442): Caused by: java.lang.NullPointerException
11-20 20:32:36.665: E/AndroidRuntime(13442): at com.zeyomir.ocfun.dao.DbAdapter.close(DbAdapter.java:67)
11-20 20:32:36.665: E/AndroidRuntime(13442): at com.zeyomir.ocfun.dao.CacheDAO.save(CacheDAO.java:30)
11-20 20:32:36.665: E/AndroidRuntime(13442): at com.zeyomir.ocfun.controller.AddCaches$DownloadCaches.doInBackground(AddCaches.java:236)
11-20 20:32:36.665: E/AndroidRuntime(13442): at com.zeyomir.ocfun.controller.AddCaches$DownloadCaches.doInBackground(AddCaches.java:186)
11-20 20:32:36.665: E/AndroidRuntime(13442): at android.os.AsyncTask$2.call(AsyncTask.java:287)
11-20 20:32:36.665: E/AndroidRuntime(13442): at java.util.concurrent.FutureTask.run(FutureTask.java:234)
11-20 20:32:36.665: E/AndroidRuntime(13442): ... 4 more
I couldn't reproduce it.
zeyomir commented
This above commit solves only half of the issue as we still don't know WHY this issue occurs. Need to find a way to gracefully close db in that situation.
zeyomir commented
the problem is bigger than that, it is caused by closing db on hitting the back button, but cache downloader still has a reference to that db.