Skip to content

Commit

Permalink
no message
Browse files Browse the repository at this point in the history
  • Loading branch information
antonmes committed Mar 18, 2016
1 parent cfc3fa9 commit a08eef5
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 18 deletions.
1 change: 0 additions & 1 deletion Package.swift
Expand Up @@ -4,6 +4,5 @@ let package = Package(
name: "MySQL",
dependencies: [
.Package(url: "https://github.com/Zewo/SQL.git", majorVersion: 0),
.Package(url: "https://github.com/Zewo/CMySQL.git", majorVersion: 1)
]
)
14 changes: 7 additions & 7 deletions Sources/Connection.swift
Expand Up @@ -12,7 +12,7 @@ import Core

public class Connection: SQL.Connection {

public enum Error: ErrorType {
public enum Error: ErrorProtocol {
case ErrorCode(UInt, String)
case BadResult
case ParameterError(String)
Expand All @@ -24,7 +24,7 @@ public class Connection: SQL.Connection {

public class Info: SQL.ConnectionInfo, ConnectionStringConvertible {

public struct Flags : OptionSetType {
public struct Flags : OptionSet {
public let rawValue: UInt
public init(rawValue: UInt) { self.rawValue = rawValue }

Expand Down Expand Up @@ -145,7 +145,7 @@ public class Connection: SQL.Connection {

var statement = string

for (i, value) in parameters.enumerate() {
for (i, value) in parameters.enumerated() {
let parameterIdentifier = "$\(i + 1)"

let data: Data
Expand All @@ -163,17 +163,17 @@ public class Connection: SQL.Connection {
throw Error.ParameterError("Failed to convert parameter \(parameterIdentifier) to string")
}

let escapedPointer = UnsafeMutablePointer<Int8>.alloc(data.length)
let escapedPointer = UnsafeMutablePointer<Int8>(allocatingCapacity: data.length)

defer {
escapedPointer.destroy()
escapedPointer.dealloc(data.length)
escapedPointer.deallocateCapacity(data.length)
}

let len = mysql_real_escape_string(connection, escapedPointer, string, strlen(string))
escapedPointer[Int(len)] = 0

guard let escapedString = String.fromCString(escapedPointer) else {
guard let escapedString = String(validatingUTF8: escapedPointer) else {
throw Error.ParameterError("Failed to escape parameter \(parameterIdentifier)")
}

Expand Down Expand Up @@ -215,7 +215,7 @@ public class Connection: SQL.Connection {
private var statusError: Error {
return Error.ErrorCode(
UInt(mysql_errno(connection)),
String.fromCString(mysql_error(connection)) ?? "None"
String(validatingUTF8: mysql_error(connection)) ?? "None"
)
}
}
16 changes: 8 additions & 8 deletions Sources/Field.swift
Expand Up @@ -28,13 +28,13 @@ public struct Field: SQL.Field {
public var maxLength: UInt

public init(_ pointer: UnsafePointer<MYSQL_FIELD>) {
name = String.fromCString(pointer.memory.name)!
originalName = String.fromCString(pointer.memory.org_name)!
table = String.fromCString(pointer.memory.table)!
originalTable = String.fromCString(pointer.memory.org_table)!
database = String.fromCString(pointer.memory.db)!
catalog = String.fromCString(pointer.memory.catalog)!
length = pointer.memory.length
maxLength = pointer.memory.max_length
name = String(validatingUTF8: pointer.pointee.name)!
originalName = String(validatingUTF8: pointer.pointee.org_name)!
table = String(validatingUTF8: pointer.pointee.table)!
originalTable = String(validatingUTF8: pointer.pointee.org_table)!
database = String(validatingUTF8: pointer.pointee.db)!
catalog = String(validatingUTF8: pointer.pointee.catalog)!
length = pointer.pointee.length
maxLength = pointer.pointee.max_length
}
}
4 changes: 2 additions & 2 deletions Sources/Result.swift
Expand Up @@ -42,12 +42,12 @@ public class Result: SQL.Result {

let lengths = mysql_fetch_lengths(resultPointer)

for (fieldIndex, field) in fields.enumerate() {
for (fieldIndex, field) in fields.enumerated() {

let val = row[fieldIndex]
let length = Int(lengths[fieldIndex])

var buffer = [UInt8](count: length, repeatedValue: 0)
var buffer = [UInt8](repeating: 0, count: length)

memcpy(&buffer, val, length)

Expand Down

0 comments on commit a08eef5

Please sign in to comment.