]> git.ktnx.net Git - mobile-ledger.git/blobdiff - app/src/main/java/net/ktnx/mobileledger/ui/transaction_list/TransactionListViewModel.java
Data.transactions -> observable list
[mobile-ledger.git] / app / src / main / java / net / ktnx / mobileledger / ui / transaction_list / TransactionListViewModel.java
index 513bf9f48f0aeef72e8649955a19ac48d574de15..7e0214c1f909795ff23627a2e9a04c0a06917ffb 100644 (file)
@@ -40,11 +40,12 @@ public class TransactionListViewModel extends ViewModel {
         task.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, filter);
     }
     public static TransactionListItem getTransactionListItem(int position) {
         task.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, filter);
     }
     public static TransactionListItem getTransactionListItem(int position) {
-        List<TransactionListItem> transactions = Data.transactions.get();
-        if (transactions == null) return null;
-        if (position >= transactions.size() + 1) return null;
-        if (position == transactions.size()) return new TransactionListItem();
-        return transactions.get(position);
+        try(LockHolder lh = Data.transactions.lockForReading()) {
+            if (Data.transactions == null) return null;
+            if (position >= Data.transactions.size() + 1) return null;
+            if (position == Data.transactions.size()) return new TransactionListItem();
+            return Data.transactions.get(position);
+        }
     }
     public static int getTransactionCount() {
         List<TransactionListItem> transactions = Data.transactions.get();
     }
     public static int getTransactionCount() {
         List<TransactionListItem> transactions = Data.transactions.get();