From f07e86d86d461ed9f98c7f1c2df9bfca299bf427 Mon Sep 17 00:00:00 2001 From: Nick Shelley Date: Mon, 19 Dec 2016 14:57:55 -0700 Subject: [PATCH 1/2] Don't crash in Statement.next. --- SQLite/Core/Statement.swift | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/SQLite/Core/Statement.swift b/SQLite/Core/Statement.swift index 7e584ef9..c8fc15bb 100644 --- a/SQLite/Core/Statement.swift +++ b/SQLite/Core/Statement.swift @@ -203,7 +203,12 @@ extension Statement : Sequence { extension Statement : IteratorProtocol { public func next() -> [Binding?]? { - return try! step() ? Array(row) : nil + do { + return try step() ? Array(row) : nil + } catch { + print("Error in Statement.next()", error) + return nil + } } } From 4ff545c6e4611ba1594ef93e0d4c3d57eb5b25b2 Mon Sep 17 00:00:00 2001 From: Nick Shelley Date: Tue, 20 Dec 2016 09:12:22 -0700 Subject: [PATCH 2/2] Assert instead of print. --- SQLite/Core/Statement.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SQLite/Core/Statement.swift b/SQLite/Core/Statement.swift index c8fc15bb..f829dbec 100644 --- a/SQLite/Core/Statement.swift +++ b/SQLite/Core/Statement.swift @@ -206,7 +206,7 @@ extension Statement : IteratorProtocol { do { return try step() ? Array(row) : nil } catch { - print("Error in Statement.next()", error) + assert(false, "Error in Statement.next(): \(error)") return nil } }