Skip to content

Commit 06fdde3

Browse files
Merge pull request #16 from KposeFLW/bugfix/fix-textfield-exception-crash
Fix Crash Due To Unsafe TextField Iteration
2 parents 95bf0dc + c893366 commit 06fdde3

File tree

1 file changed

+11
-12
lines changed

1 file changed

+11
-12
lines changed

FlutterwaveSDK/Classes/UI/NewExtraFlutterwave/FlutterWave+UIPickerView.swift

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -29,21 +29,20 @@ extension FlutterwavePayViewController : UITextFieldDelegate,CardSelect,UIPicker
2929
item.backgroundColor = .white
3030
}
3131

32-
for (index,_) in (textField.text?.enumerated())!{
33-
pinViewContainer.pins[index].backgroundColor = .gray
34-
}
35-
if ((textField.text?.count)! == 4){
36-
textField.resignFirstResponder()
32+
if let text = textField.text {
33+
for (index, _) in text.prefix(pinViewContainer.pins.count).enumerated() {
34+
pinViewContainer.pins[index].backgroundColor = .gray
35+
}
36+
if text.count == pinViewContainer.pins.count {
37+
textField.resignFirstResponder()
38+
}
3739
}
38-
3940
}
41+
4042
if (textField == debitCardView.cardNumberTextField){
41-
if let count = textField.text?.count {
42-
if count == 6{
43-
flutterwaveCardClient.amount = self.amount
44-
flutterwaveCardClient.cardfirst6 = textField.text
45-
46-
}
43+
if let text = textField.text, text.count == 6 {
44+
flutterwaveCardClient.amount = self.amount
45+
flutterwaveCardClient.cardfirst6 = text
4746
}
4847
}
4948
}

0 commit comments

Comments
 (0)