Please take a look in these two pictures. List size is 3 but it throws the same error with two different methods...
...
Same...
B4X:
Dim i As Int
Log(RecentStoreList.Size) ' Size is 3
Dim Ubound As Int = RecentStoreList.Size - 1
For i = 0 To Ubound
Log(GetType(RecentStoreList.Get(i))) ' Throws Size is 2
Dim mpcust As Map = RecentStoreList.Get(i)
Same...
B4X:
For Each mpcust As Map In RecentStoreList
If mpcust.GetDefault("server", "") = Item.Server Then ' Throws Size is 2
RecentStoreList.RemoveAt(RecentStoreList.IndexOf(mpcust))
End If
Next