Skip to content

VideoGridView: reset title and crash on rotation

Description

After selecting a few videos and rotating the view.

The title reset and the app will later crash if the rotation continues.

Expected behavior

The title shouldn't be reset and it shouldn't crash.

Steps to reproduce

  1. Long press to select
  2. Make selection
  3. Rotate until crash (4 times)

Screenshot / video

vid-crash

Some logs:

02-21 14:50:53.335  1395  1440 W WindowManager: Force clearing freeze: AppWindowToken{487ad00 token=Token{6cde783 ActivityRecord{6e43e32 u0 org.videolan.vlc.debug/org.videolan.vlc.gui.MainActivity t293}}}
02-21 14:50:53.335  1395  1440 I WindowManager: Screen frozen for +2s61ms due to AppWindowToken{487ad00 token=Token{6cde783 ActivityRecord{6e43e32 u0 org.videolan.vlc.debug/org.videolan.vlc.gui.MainActivity t293}}}
02-21 14:50:54.906 25189 25189 E VLC/VlcCrashHandler: 	at org.videolan.vlc.gui.browser.MediaBrowserFragment.restoreMultiSelectHelper(MediaBrowserFragment.kt:205)
02-21 14:50:54.906 25189 25189 E VLC/VlcCrashHandler: 	at org.videolan.vlc.gui.video.VideoGridFragment$setDataObservers$1$1.invoke(VideoGridFragment.kt:132)
02-21 14:50:54.906 25189 25189 E VLC/VlcCrashHandler: 	at org.videolan.vlc.gui.video.VideoGridFragment$setDataObservers$1$1.invoke(VideoGridFragment.kt:82)
02-21 14:50:54.906 25189 25189 E VLC/VlcCrashHandler: 	at org.videolan.vlc.gui.BaseFragment$setRefreshing$1.invokeSuspend(BaseFragment.kt:154)
02-21 14:50:54.906 25189 25189 E VLC/VlcCrashHandler: 	at org.videolan.vlc.gui.browser.MediaBrowserFragment.restoreMultiSelectHelper(MediaBrowserFragment.kt:205)
02-21 14:50:54.906 25189 25189 E VLC/VlcCrashHandler: 	at org.videolan.vlc.gui.video.VideoGridFragment$setDataObservers$1$1.invoke(VideoGridFragment.kt:132)
02-21 14:50:54.906 25189 25189 E VLC/VlcCrashHandler: 	at org.videolan.vlc.gui.video.VideoGridFragment$setDataObservers$1$1.invoke(VideoGridFragment.kt:82)
02-21 14:50:54.906 25189 25189 E VLC/VlcCrashHandler: 	at org.videolan.vlc.gui.BaseFragment$setRefreshing$1.invokeSuspend(BaseFragment.kt:154)
02-21 14:50:54.906 25189 25189 E VLC/VlcCrashHandler: 	at org.videolan.vlc.gui.BaseFragment.setRefreshing(BaseFragment.kt:150)
02-21 14:50:54.906 25189 25189 E VLC/VlcCrashHandler: 	at org.videolan.vlc.gui.video.VideoGridFragment.access$setRefreshing(VideoGridFragment.kt:82)
02-21 14:50:54.906 25189 25189 E VLC/VlcCrashHandler: 	at org.videolan.vlc.gui.video.VideoGridFragment$setDataObservers$1.onChanged(VideoGridFragment.kt:129)
02-21 14:50:54.906 25189 25189 E VLC/VlcCrashHandler: 	at org.videolan.vlc.gui.video.VideoGridFragment$setDataObservers$1.onChanged(VideoGridFragment.kt:82)
02-21 14:50:55.038 25189 25189 E AndroidRuntime: Process: org.videolan.vlc.debug, PID: 25189
02-21 14:50:55.038 25189 25189 E AndroidRuntime: 	at org.videolan.vlc.gui.browser.MediaBrowserFragment.restoreMultiSelectHelper(MediaBrowserFragment.kt:205)
02-21 14:50:55.038 25189 25189 E AndroidRuntime: 	at org.videolan.vlc.gui.video.VideoGridFragment$setDataObservers$1$1.invoke(VideoGridFragment.kt:132)
02-21 14:50:55.038 25189 25189 E AndroidRuntime: 	at org.videolan.vlc.gui.video.VideoGridFragment$setDataObservers$1$1.invoke(VideoGridFragment.kt:82)
02-21 14:50:55.038 25189 25189 E AndroidRuntime: 	at org.videolan.vlc.gui.BaseFragment$setRefreshing$1.invokeSuspend(BaseFragment.kt:154)
02-21 14:50:55.038 25189 25189 E AndroidRuntime: 	at org.videolan.vlc.gui.browser.MediaBrowserFragment.restoreMultiSelectHelper(MediaBrowserFragment.kt:205)
02-21 14:50:55.038 25189 25189 E AndroidRuntime: 	at org.videolan.vlc.gui.video.VideoGridFragment$setDataObservers$1$1.invoke(VideoGridFragment.kt:132)
02-21 14:50:55.038 25189 25189 E AndroidRuntime: 	at org.videolan.vlc.gui.video.VideoGridFragment$setDataObservers$1$1.invoke(VideoGridFragment.kt:82)
02-21 14:50:55.038 25189 25189 E AndroidRuntime: 	at org.videolan.vlc.gui.BaseFragment$setRefreshing$1.invokeSuspend(BaseFragment.kt:154)
02-21 14:50:55.038 25189 25189 E AndroidRuntime: 	at org.videolan.vlc.gui.BaseFragment.setRefreshing(BaseFragment.kt:150)
02-21 14:50:55.038 25189 25189 E AndroidRuntime: 	at org.videolan.vlc.gui.video.VideoGridFragment.access$setRefreshing(VideoGridFragment.kt:82)
02-21 14:50:55.038 25189 25189 E AndroidRuntime: 	at org.videolan.vlc.gui.video.VideoGridFragment$setDataObservers$1.onChanged(VideoGridFragment.kt:129)
02-21 14:50:55.038 25189 25189 E AndroidRuntime: 	at org.videolan.vlc.gui.video.VideoGridFragment$setDataObservers$1.onChanged(VideoGridFragment.kt:82)
02-21 14:50:55.038 25189 25189 E AndroidRuntime: 	at org.videolan.vlc.gui.AudioPlayerContainerActivity.onStart(AudioPlayerContainerActivity.kt:288)
02-21 14:50:55.038 25189 25189 E AndroidRuntime: 	at org.videolan.vlc.gui.MainActivity.onStart(MainActivity.kt:128)

Context

App version

master

Android version

Android 11

Device model

Huawei P40 Lite

App mode

Smartphone

Edited by Soomin Lee