Fix lock
This commit is contained in:
parent
626d147b99
commit
bfc792388c
|
@ -129,10 +129,12 @@ public class NotificationsListAdapter extends RecyclerView.Adapter implements On
|
||||||
private int style;
|
private int style;
|
||||||
private RecyclerView mRecyclerView;
|
private RecyclerView mRecyclerView;
|
||||||
private List<NotificationsListAdapter.ViewHolder> lstHolders;
|
private List<NotificationsListAdapter.ViewHolder> lstHolders;
|
||||||
|
private final Object lock = new Object();
|
||||||
|
|
||||||
private Runnable updateAnimatedEmoji = new Runnable() {
|
private Runnable updateAnimatedEmoji = new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
synchronized (lstHolders) {
|
synchronized (lock) {
|
||||||
if( mRecyclerView != null && (mRecyclerView.getLayoutManager()) != null) {
|
if( mRecyclerView != null && (mRecyclerView.getLayoutManager()) != null) {
|
||||||
int firstPosition = ((LinearLayoutManager) mRecyclerView.getLayoutManager()).findFirstCompletelyVisibleItemPosition();
|
int firstPosition = ((LinearLayoutManager) mRecyclerView.getLayoutManager()).findFirstCompletelyVisibleItemPosition();
|
||||||
int lastPosition = ((LinearLayoutManager) mRecyclerView.getLayoutManager()).findLastCompletelyVisibleItemPosition();
|
int lastPosition = ((LinearLayoutManager) mRecyclerView.getLayoutManager()).findLastCompletelyVisibleItemPosition();
|
||||||
|
@ -198,7 +200,7 @@ public class NotificationsListAdapter extends RecyclerView.Adapter implements On
|
||||||
|
|
||||||
holder = (NotificationsListAdapter.ViewHolder) viewHolder;
|
holder = (NotificationsListAdapter.ViewHolder) viewHolder;
|
||||||
|
|
||||||
synchronized (lstHolders) {
|
synchronized (lock) {
|
||||||
lstHolders.add(holder);
|
lstHolders.add(holder);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -219,11 +219,12 @@ public class StatusListAdapter extends RecyclerView.Adapter implements OnPostAct
|
||||||
private RecyclerView mRecyclerView;
|
private RecyclerView mRecyclerView;
|
||||||
static Timer tmr;
|
static Timer tmr;
|
||||||
private List<ViewHolder> lstHolders;
|
private List<ViewHolder> lstHolders;
|
||||||
|
private final Object lock = new Object();
|
||||||
|
|
||||||
private Runnable updateAnimatedEmoji = new Runnable() {
|
private Runnable updateAnimatedEmoji = new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
synchronized (lstHolders) {
|
synchronized (lock) {
|
||||||
if( mRecyclerView != null && (mRecyclerView.getLayoutManager()) != null) {
|
if( mRecyclerView != null && (mRecyclerView.getLayoutManager()) != null) {
|
||||||
int firstPosition = ((LinearLayoutManager) mRecyclerView.getLayoutManager()).findFirstCompletelyVisibleItemPosition();
|
int firstPosition = ((LinearLayoutManager) mRecyclerView.getLayoutManager()).findFirstCompletelyVisibleItemPosition();
|
||||||
int lastPosition = ((LinearLayoutManager) mRecyclerView.getLayoutManager()).findLastCompletelyVisibleItemPosition();
|
int lastPosition = ((LinearLayoutManager) mRecyclerView.getLayoutManager()).findLastCompletelyVisibleItemPosition();
|
||||||
|
@ -896,7 +897,7 @@ public class StatusListAdapter extends RecyclerView.Adapter implements OnPostAct
|
||||||
|
|
||||||
|
|
||||||
final ViewHolder holder = (ViewHolder) viewHolder;
|
final ViewHolder holder = (ViewHolder) viewHolder;
|
||||||
synchronized (lstHolders) {
|
synchronized (lock) {
|
||||||
lstHolders.add(holder);
|
lstHolders.add(holder);
|
||||||
}
|
}
|
||||||
final Status status = statuses.get(i);
|
final Status status = statuses.get(i);
|
||||||
|
|
Loading…
Reference in New Issue