From: Roopesh Chander Date: Mon, 24 Dec 2018 07:28:35 +0000 (+0530) Subject: Tunnel edit: Fix crash X-Git-Tag: 0.0.20181225-1~3 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=808852c547bd4d3d5d368db74d61980a5a5c2f6c;p=thirdparty%2Fwireguard-apple.git Tunnel edit: Fix crash This fixes a crash that happens when you: 1. Scroll to the end of the Edit screen 2. Delete a peer 3. Toggle the Activate On Demand switch Signed-off-by: Roopesh Chander --- diff --git a/WireGuard/WireGuard/UI/iOS/ViewController/TunnelEditTableViewController.swift b/WireGuard/WireGuard/UI/iOS/ViewController/TunnelEditTableViewController.swift index 6fc0646..a8d504e 100644 --- a/WireGuard/WireGuard/UI/iOS/ViewController/TunnelEditTableViewController.swift +++ b/WireGuard/WireGuard/UI/iOS/ViewController/TunnelEditTableViewController.swift @@ -417,7 +417,8 @@ extension TunnelEditTableViewController { self.activateOnDemandSetting.isActivateOnDemandEnabled = isOn self.loadSections() - let indexPaths = (1 ..< 4).map { IndexPath(row: $0, section: indexPath.section) } + let section = self.sections.firstIndex(where: { $0 == .onDemand })! + let indexPaths = (1 ..< 4).map { IndexPath(row: $0, section: section) } if isOn { if self.activateOnDemandSetting.activateOnDemandOption == .none { self.activateOnDemandSetting.activateOnDemandOption = TunnelViewModel.defaultActivateOnDemandOption()