New issue
Advanced search Search tips

Issue 870879 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Sep 6
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 1
Type: Bug


Show other hotlists

Hotlists containing this issue:
Downloads-Home-Rework


Sign in to add a comment

[Download Home] Crash on partial bind attempt

Project Member Reported by shaktisahu@chromium.org, Aug 3

Issue description

Two crashes :
1 - Crash on partial bind attempt.

Stack trace :
08-03 00:44:20.832 19648 19648 E AndroidRuntime: java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.Void
08-03 00:44:20.832 19648 19648 E AndroidRuntime:        at org.chromium.chrome.browser.download.home.list.DateOrderedListView$ModelChangeProcessor.onBindViewHolder(DateOrderedListView.java:37)
08-03 00:44:20.832 19648 19648 E AndroidRuntime:        at org.chromium.chrome.browser.modelutil.RecyclerViewAdapter.onBindViewHolder(RecyclerViewAdapter.java:161)
08-03 00:44:20.832 19648 19648 E AndroidRuntime:        at android.support.v7.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:6541)
08-03 00:44:20.832 19648 19648 E AndroidRuntime:        at android.support.v7.widget.RecyclerView$Recycler.tryBindViewHolderByDeadline(RecyclerView.java:5484)
08-03 00:44:20.832 19648 19648 E AndroidRuntime:        at android.support.v7.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:5750)
08-03 00:44:20.832 19648 19648 E AndroidRuntime:        at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5589)
08-03 00:44:20.832 19648 19648 E AndroidRuntime:        at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5585)
08-03 00:44:20.832 19648 19648 E AndroidRuntime:        at android.support.v7.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2231)
08-03 00:44:20.832 19648 19648 E AndroidRuntime:        at android.support.v7.widget.GridLayoutManager.layoutChunk(GridLayoutManager.java:556)
08-03 00:44:20.832 19648 19648 E AndroidRuntime:        at android.support.v7.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1518)
08-03 00:44:20.832 19648 19648 E AndroidRuntime:        at android.support.v7.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:610)
08-03 00:44:20.832 19648 19648 E AndroidRuntime:        at android.support.v7.widget.GridLayoutManager.onLayoutChildren(GridLayoutManager.java:170)
08-03 00:44:20.832 19648 19648 E AndroidRuntime:        at org.chromium.chrome.browser.download.home.list.DateOrderedListView$GridLayoutManagerImpl.onLayoutChildren(DateOrderedListView.java:120)
08-03 00:44:20.832 19648 19648 E AndroidRuntime:        at android.support.v7.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:3719)
08-03 00:44:20.832 19648 19648 E AndroidRuntime:        at android.support.v7.widget.RecyclerView.dispatchLayout(RecyclerView.java:3436)
08-03 00:44:20.832 19648 19648 E AndroidRuntime:        at android.support.v7.widget.RecyclerView.consumePendingUpdateOperations(RecyclerView.java:1731)
08-03 00:44:20.832 19648 19648 E AndroidRuntime:        at android.support.v7.widget.RecyclerView$1.run(RecyclerView.java:354)
08-03 00:44:20.832 19648 19648 E AndroidRuntime:        at android.view.Choreographer$CallbackRecord.run(Choreographer.java:911)


2 - Crash on custom view rebind

08-03 00:59:57.431 21512 21512 E AndroidRuntime: java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first.
08-03 00:59:57.431 21512 21512 E AndroidRuntime:        at android.view.ViewGroup.addViewInner(ViewGroup.java:4937)
08-03 00:59:57.431 21512 21512 E AndroidRuntime:        at android.view.ViewGroup.addView(ViewGroup.java:4768)
08-03 00:59:57.431 21512 21512 E AndroidRuntime:        at android.view.ViewGroup.addView(ViewGroup.java:4740)
08-03 00:59:57.431 21512 21512 E AndroidRuntime:        at org.chromium.chrome.browser.download.home.list.holder.CustomViewHolder.bind(CustomViewHolder.java:35)
08-03 00:59:57.431 21512 21512 E AndroidRuntime:        at org.chromium.chrome.browser.download.home.list.DateOrderedListView$ModelChangeProcessor.onBindViewHolder(DateOrderedListView.java:59)
08-03 00:59:57.431 21512 21512 E AndroidRuntime:        at org.chromium.chrome.browser.download.home.list.DateOrderedListView$ModelChangeProcessor.onBindViewHolder(DateOrderedListView.java:37)
08-03 00:59:57.431 21512 21512 E AndroidRuntime:        at org.chromium.chrome.browser.modelutil.RecyclerViewAdapter.onBindViewHolder(RecyclerViewAdapter.java:149)
08-03 00:59:57.431 21512 21512 E AndroidRuntime:        at org.chromium.chrome.browser.modelutil.RecyclerViewAdapter.onBindViewHolder(RecyclerViewAdapter.java:156)
08-03 00:59:57.431 21512 21512 E AndroidRuntime:        at android.support.v7.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:6541)


 
Project Member

Comment 1 by bugdroid1@chromium.org, Aug 3

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/89f634e636627d7e470a58d4e7761cce0ba96b37

commit 89f634e636627d7e470a58d4e7761cce0ba96b37
Author: Shakti Sahu <shaktisahu@chromium.org>
Date: Fri Aug 03 23:37:34 2018

Download Home : Fixed multiple crashes

1 - Fixed a bug in partial rebind attempt
2 - Fixed a bug in custom view rebind where view already has a parent

Bug:  870879 
Change-Id: I006e2d0f92a038e3b7a44b01b3e7f0c3075ab9b3
Reviewed-on: https://chromium-review.googlesource.com/1162774
Reviewed-by: Theresa <twellington@chromium.org>
Commit-Queue: Shakti Sahu <shaktisahu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#580704}
[modify] https://crrev.com/89f634e636627d7e470a58d4e7761cce0ba96b37/chrome/android/java/src/org/chromium/chrome/browser/download/home/list/ListPropertyViewBinder.java
[modify] https://crrev.com/89f634e636627d7e470a58d4e7761cce0ba96b37/chrome/android/java/src/org/chromium/chrome/browser/download/home/list/holder/CustomViewHolder.java

Status: Fixed (was: Started)

Sign in to add a comment