IngvarJackal / FurView2

Программа для просмотра и организации изображений на Андроиде с имиджборд и других источников
Apache License 2.0
4 stars 0 forks source link

Баги при листании сохраненных изображений #110

Open connertech opened 9 years ago

connertech commented 9 years ago

Ветка: dev Версия: 403274ba66631702802ad2ed9239daa4018c24fb

При листании сохраненных изображений на экране просмотра перелистывание с предпоследнего на последнее изображение то работает, то нет. Если при отказавшем листании попробовать выйти на экран результатов поиска кнопкой "назад", приложение падает.

Примечание: проверялось на небольшом числе сохраненных изображений (3-5)

Пример воспроизведения для пяти сохраненных изображений (в скобках - фактический результат действия): 1) Сделать пустой поиск среди локальных изображений 2) На странице результатов открыть предпоследнее изображение (изображение открывается корректно) 3) Сделать перелистывание на следующее, последнее изображение (переход происходит) 4) Сделать обратное перелистывание на предпоследнее изображение (переход происходит) 5) Сделать перелистывание вперёд (переход на следующее, последнее изображение не происходит, строка в логе: 19621-19621/ru.furry.furview2 D/ViewRootImpl﹕ ViewPostImeInputStage ACTION_DOWN) 6) Сделать ещё три или более пролистываний вперёд (переход на следующее изображение не происходит, сообщения в логе аналогичны) 7) Сделать пролистывание назад (переход на предыдущее не происходит, строка в логе: 19621-19621/ru.furry.furview2 D/fgsfds﹕ MainActivity.cursor 6 fIndex 6 8) Нажать кнопку "назад" (происходит падение приложения)

Лог падения:

08-24 23:57:39.384  19621-19621/ru.furry.furview2 V/ActivityThread﹕ updateVisibility : ActivityRecord{f0b6bec token=android.os.BinderProxy@133792c1 {ru.furry.furview2/ru.furry.furview2.FullscreenActivity}} show : true
08-24 23:59:43.299  19621-19621/ru.furry.furview2 I/Timeline﹕ Timeline: Activity_idle id: android.os.BinderProxy@133792c1 time:40694471
08-24 23:59:45.764  19621-19621/ru.furry.furview2 D/fgsfds﹕ Cursor: 6
08-24 23:59:45.764  19621-19621/ru.furry.furview2 D/AndroidRuntime﹕ Shutting down VM
08-24 23:59:45.764  19621-19621/ru.furry.furview2 E/AndroidRuntime﹕ FATAL EXCEPTION: main
    Process: ru.furry.furview2, PID: 19621
    java.lang.RuntimeException: Unable to resume activity {ru.furry.furview2/ru.furry.furview2.MainActivity}: java.lang.IndexOutOfBoundsException: Invalid index 5, size is 5
            at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3394)
            at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3425)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1492)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:145)
            at android.app.ActivityThread.main(ActivityThread.java:5942)
            at java.lang.reflect.Method.invoke(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:372)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1400)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1195)
     Caused by: java.lang.IndexOutOfBoundsException: Invalid index 5, size is 5
            at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:255)
            at java.util.ArrayList.get(ArrayList.java:308)
            at ru.furry.furview2.MainActivity$RemoteImagesIterator.previous(MainActivity.java:172)
            at ru.furry.furview2.MainActivity$RemoteImagesIterator.previous(MainActivity.java:90)
            at ru.furry.furview2.MainActivity.redrawImages(MainActivity.java:450)
            at ru.furry.furview2.MainActivity.onRestart(MainActivity.java:465)
            at android.app.Instrumentation.callActivityOnRestart(Instrumentation.java:1244)
            at android.app.Activity.performRestart(Activity.java:6388)
            at android.app.Activity.performResume(Activity.java:6404)
            at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3383)
            at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3425)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1492)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:145)
            at android.app.ActivityThread.main(ActivityThread.java:5942)
            at java.lang.reflect.Method.invoke(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:372)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1400)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1195)
IngvarJackal commented 9 years ago

воспроизведено