Fixed
Status Update
Comments
ne...@gmail.com <ne...@gmail.com> #2
Hi. Thanks for reporting this. Fixed in alpha-04
ne...@gmail.com <ne...@gmail.com> #3
Project: platform/frameworks/support
Branch: androidx-main
commit e782987543a9f8ccd485e970ddc74564b24378db
Author: Vighnesh Raut <vighnesh.raut13@gmail.com>
Date: Mon Jan 02 15:27:40 2023
fix: tab row crashes when only 1 tab is added
Bug: b/264018028
Test: Added unit test
Change-Id: I6381dbac304fc1d69d3708c6655f8b595668e93f
M tv/tv-material/src/androidTest/java/androidx/tv/material/TabRowTest.kt
M tv/tv-material/src/main/java/androidx/tv/material/TabRow.kt
https://android-review.googlesource.com/2373449
Branch: androidx-main
commit e782987543a9f8ccd485e970ddc74564b24378db
Author: Vighnesh Raut <vighnesh.raut13@gmail.com>
Date: Mon Jan 02 15:27:40 2023
fix: tab row crashes when only 1 tab is added
Bug:
Test: Added unit test
Change-Id: I6381dbac304fc1d69d3708c6655f8b595668e93f
M tv/tv-material/src/androidTest/java/androidx/tv/material/TabRowTest.kt
M tv/tv-material/src/main/java/androidx/tv/material/TabRow.kt
il...@google.com <il...@google.com>
ap...@google.com <ap...@google.com> #4
deleted
il...@google.com <il...@google.com> #5
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.tv:tv-material:1.0.0-alpha04
ne...@gmail.com <ne...@gmail.com> #6
Thank you for taking time to review and merge it!
Looking forward for more.
Looking forward for more.
Description
IT's reset here prematurely:
class LoaderInfo {
...
@MainThread
Loader<D> destroy(boolean reset) {
....
if ((observer == null || observer.hasDeliveredData()) && !reset) {
return this.mLoader;
} else {
this.mLoader.reset(); <----------- THIS IS CALLED, BUT SHOULD NOT, because observer.hasDeliveredData()==false
return this.mPriorLoader;
}
}
}
Offending peace of code:
static class LoaderObserver<D> implements Observer<D> {
....
public void onChanged(@Nullable D data) {
this.mCallback.onLoadFinished(this.mLoader, data);
this.mDeliveredData = true; <----------- THIS LINE SHOULD BE BEFORE onLoadFinished
}
}