diff options
| author | 2020-12-27 15:19:00 +0100 | |
|---|---|---|
| committer | 2020-12-27 15:19:00 +0100 | |
| commit | e8878ba0bf7b9577978ff40f95831e017a8f5692 (patch) | |
| tree | 475dc44dd3cdb95797a6194480cf79586210a500 /sqlite.zig | |
| parent | ci: add the build manifest for debian/buster aarch64 (diff) | |
| download | zig-sqlite-e8878ba0bf7b9577978ff40f95831e017a8f5692.tar.gz zig-sqlite-e8878ba0bf7b9577978ff40f95831e017a8f5692.tar.xz zig-sqlite-e8878ba0bf7b9577978ff40f95831e017a8f5692.zip | |
require the callers to provide a 0-terminated string
Diffstat (limited to 'sqlite.zig')
| -rw-r--r-- | sqlite.zig | 8 |
1 files changed, 2 insertions, 6 deletions
| @@ -31,7 +31,7 @@ pub const Db = struct { | |||
| 31 | 31 | ||
| 32 | /// Mode determines how the database will be opened. | 32 | /// Mode determines how the database will be opened. |
| 33 | pub const Mode = union(enum) { | 33 | pub const Mode = union(enum) { |
| 34 | File: []const u8, | 34 | File: [:0]const u8, |
| 35 | Memory, | 35 | Memory, |
| 36 | }; | 36 | }; |
| 37 | 37 | ||
| @@ -45,13 +45,9 @@ pub const Db = struct { | |||
| 45 | .File => |path| { | 45 | .File => |path| { |
| 46 | logger.info("opening {}", .{path}); | 46 | logger.info("opening {}", .{path}); |
| 47 | 47 | ||
| 48 | // Need a null-terminated string here. | ||
| 49 | const pathZ = try allocator.dupeZ(u8, path); | ||
| 50 | defer allocator.free(pathZ); | ||
| 51 | |||
| 52 | var db: ?*c.sqlite3 = undefined; | 48 | var db: ?*c.sqlite3 = undefined; |
| 53 | const result = c.sqlite3_open_v2( | 49 | const result = c.sqlite3_open_v2( |
| 54 | pathZ, | 50 | path, |
| 55 | &db, | 51 | &db, |
| 56 | c.SQLITE_OPEN_READWRITE | c.SQLITE_OPEN_CREATE, | 52 | c.SQLITE_OPEN_READWRITE | c.SQLITE_OPEN_CREATE, |
| 57 | null, | 53 | null, |