 			throw DBError.queryFailed
 		}
 		var files = [File]()
+		assert(results.rowCount >= 0)
 		for row in 0..<results.rowCount {
 			files.append(try file(from: results, row: row))
 		}

			throw DBError.queryFailed
		}
		var wspaces: [Workspace] = []
		for row in 0..<results.rowCount {
			let wspace = try workspace(from: results, row: row)
			wspaces.append(wspace)

			throw DBError.queryFailed
		}
		var projects: [Project] = []
		assert(results.rowCount >= 0)
		for row in 0..<results.rowCount {
			let project = Project(id: try Rc2DAO.value(columnName: "id", results: results, row: row),
								  version: try Rc2DAO.value(columnName: "version", results: results, row: row),
