Разобрался!
Пришлось сделать экранирующее закрытие до l oop количества файлов, которые вы пытаетесь загрузить. например:
//define
func Upload(closure:(int)->Bool,numbers:[int]){
for num in numbers{
if closure(num){
//urls[index/num/whatever you call it]
//upload info with the index (it'll loop that many times)
}
}
}
с использованием: self.UploadTest(file: { (num) -> Bool in
return num <= urlArray.count}, urls: [0,1])