murraycu / android-galaxyzoo

This Android app lets you classify Galaxy Zoo subjects. It is available in the Google Play Store: https://play.google.com/store/apps/details?id=com.murrayc.galaxyzoo.app . Try beta versions early here: https://play.google.com/apps/testing/com.murrayc.galaxyzoo.app . See also the iPhone app for Galaxy Zoo: https://github.com/murraycu/ios-galaxyzoo/
GNU General Public License v3.0
11 stars 13 forks source link

Crash: java.util.ConcurrentModificationException #15

Closed murraycu closed 9 years ago

murraycu commented 9 years ago

I've seen one crash report with this stacktrace, though the stacktrace is rather hard to understand. Maybe the retrace (in proguardgui) failed somehow.

java.lang.RuntimeException: An error occured while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:299)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:352)
at java.util.concurrent.FutureTask.setException(FutureTask.java:219)
at java.util.concurrent.FutureTask.run(FutureTask.java:239)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
at java.lang.Thread.run(Thread.java:841)
Caused by: java.util.ConcurrentModificationException
at java.util.ArrayList$ArrayListIterator.next(ArrayList.java:573)
at com.murrayc.galaxyzoo.app.QuestionFragment.android.view.View onCreateView(android.view.LayoutInflater,android.view.ViewGroup,android.os.Bundle)(Unknown Source)
                                              void onCreateOptionsMenu(android.view.Menu,android.view.MenuInflater)
                                              void onPrepareOptionsMenu(android.view.Menu)
                                              boolean onOptionsItemSelected(android.view.MenuItem)
                                              void onAttach(android.app.Activity)
                                              android.widget.TableRow addRowToTable(android.app.Activity,android.widget.TableLayout)
                                              void insertButtonInRow(android.content.Context,android.widget.TableRow,android.view.View)
                                              android.widget.Button createAnswerButton(android.app.Activity,com.murrayc.galaxyzoo.app.DecisionTree$Answer)
                                              void onAnswerButtonClicked(java.lang.String,java.lang.String)
                                              void saveClassificationSync(com.murrayc.galaxyzoo.app.QuestionFragment$ClassificationInProgress)
                                              android.support.v4.content.Loader onCreateLoader(int,android.os.Bundle)
                                              void onLoadFinished(android.support.v4.content.Loader,android.database.Cursor)
                                              void onLoaderReset(android.support.v4.content.Loader)
                                              void onLoadFinished(android.support.v4.content.Loader,java.lang.Object)
                                              void access$000(com.murrayc.galaxyzoo.app.QuestionFragment,java.lang.String,java.lang.String)
                                              void access$100(com.murrayc.galaxyzoo.app.QuestionFragment,com.murrayc.galaxyzoo.app.QuestionFragment$ClassificationInProgress)
                                              void access$200(com.murrayc.galaxyzoo.app.QuestionFragment)
at com.murrayc.galaxyzoo.app.QuestionFragment.android.view.View onCreateView(android.view.LayoutInflater,android.view.ViewGroup,android.os.Bundle)(Unknown Source)
                                              void onCreateOptionsMenu(android.view.Menu,android.view.MenuInflater)
                                              void onPrepareOptionsMenu(android.view.Menu)
                                              boolean onOptionsItemSelected(android.view.MenuItem)
                                              void onAttach(android.app.Activity)
                                              android.widget.TableRow addRowToTable(android.app.Activity,android.widget.TableLayout)
                                              void insertButtonInRow(android.content.Context,android.widget.TableRow,android.view.View)
                                              android.widget.Button createAnswerButton(android.app.Activity,com.murrayc.galaxyzoo.app.DecisionTree$Answer)
                                              void onAnswerButtonClicked(java.lang.String,java.lang.String)
                                              void saveClassificationSync(com.murrayc.galaxyzoo.app.QuestionFragment$ClassificationInProgress)
                                              android.support.v4.content.Loader onCreateLoader(int,android.os.Bundle)
                                              void onLoadFinished(android.support.v4.content.Loader,android.database.Cursor)
                                              void onLoaderReset(android.support.v4.content.Loader)
                                              void onLoadFinished(android.support.v4.content.Loader,java.lang.Object)
                                              void access$000(com.murrayc.galaxyzoo.app.QuestionFragment,java.lang.String,java.lang.String)
                                              void access$100(com.murrayc.galaxyzoo.app.QuestionFragment,com.murrayc.galaxyzoo.app.QuestionFragment$ClassificationInProgress)
                                              void access$200(com.murrayc.galaxyzoo.app.QuestionFragment)
at com.murrayc.galaxyzoo.app.QuestionFragment$SaveClassificationTask.java.lang.Void doInBackground(java.lang.Void[])(Unknown Source)
                                                                     void onPostExecute(java.lang.Void)
at com.murrayc.galaxyzoo.app.QuestionFragment$SaveClassificationTask.java.lang.Object doInBackground(java.lang.Object[])(Unknown Source)
at android.os.AsyncTask$2.call(AsyncTask.java:287)
at java.util.concurrent.FutureTask.run(FutureTask.java:234)
murraycu commented 9 years ago

This might help: https://github.com/murraycu/android-galaxyzoo/commit/b938717baa74c96e22e30686860564b5270ec37f

murraycu commented 9 years ago

And this might help too: https://github.com/murraycu/android-galaxyzoo/commit/60bcad361d4d75c8f294d47ba05fbfead942567d