@@ -287,17 +287,17 @@ pub const Server = struct {
{
const iovecs = [_]std.posix.iovec_const{
.{ .iov_base = std.mem.asBytes(&header), .iov_len = @sizeOf(Header) },
.{ .iov_base = files.ptr, .iov_len = files.len },
.{ .iov_base = directories.ptr, .iov_len = directories.len },
.{ .iov_base = albums.ptr, .iov_len = albums.len },
.{ .iov_base = string_bytes.ptr, .iov_len = string_bytes.len },
.{ .base = std.mem.asBytes(&header), .len = @sizeOf(Header) },
.{ .base = files.ptr, .len = files.len },
.{ .base = directories.ptr, .len = directories.len },
.{ .base = albums.ptr, .len = albums.len },
.{ .base = string_bytes.ptr, .len = string_bytes.len },
};
try ws.writeMessagev(&iovecs);
}
var iovecs_buf: [3]std.posix.iovec_const = .{
.{ .iov_base = std.mem.asBytes(&play_queue_header), .iov_len = @sizeOf(protocol.PlayQueueHeader) },
.{ .base = std.mem.asBytes(&play_queue_header), .len = @sizeOf(protocol.PlayQueueHeader) },
undefined,
undefined,
};
@@ -310,12 +310,12 @@ pub const Server = struct {
.timestamp = s.db.state.seek_timestamp,
};
iovecs_buf[iovecs_n] = .{ .iov_base = queue_items.ptr, .iov_len = queue_items.len };
iovecs_buf[iovecs_n] = .{ .base = queue_items.ptr, .len = queue_items.len };
iovecs_n += 1;
iovecs_buf[iovecs_n] = .{
.iov_base = std.mem.asBytes(&seek),
.iov_len = @sizeOf(protocol.PlayQueueHeader.Seek),
.base = std.mem.asBytes(&seek),
.len = @sizeOf(protocol.PlayQueueHeader.Seek),
};
iovecs_n += 1;
}
@@ -749,11 +749,11 @@ fn saveDb(db: *const Db, install_directory: Directory, db_path: []const u8) !voi
};
var iovecs = [_]std.posix.iovec_const{
.{ .iov_base = std.mem.asBytes(&header), .iov_len = @sizeOf(DbFileHeader) },
.{ .iov_base = files.ptr, .iov_len = files.len },
.{ .iov_base = directories.ptr, .iov_len = directories.len },
.{ .iov_base = albums.ptr, .iov_len = albums.len },
.{ .iov_base = string_bytes.ptr, .iov_len = string_bytes.len },
.{ .base = std.mem.asBytes(&header), .len = @sizeOf(DbFileHeader) },
.{ .base = files.ptr, .len = files.len },
.{ .base = directories.ptr, .len = directories.len },
.{ .base = albums.ptr, .len = albums.len },
.{ .base = string_bytes.ptr, .len = string_bytes.len },
};
var atomic_file = try install_directory.handle.atomicFile(db_path, .{});
@@ -788,10 +788,10 @@ fn loadDb(gpa: Allocator, db: *Db, install_directory: Directory, db_path: []cons
const string_bytes = db.string_bytes.items;
var iovecs = [_]std.posix.iovec{
.{ .iov_base = files.ptr, .iov_len = files.len },
.{ .iov_base = directories.ptr, .iov_len = directories.len },
.{ .iov_base = albums.ptr, .iov_len = albums.len },
.{ .iov_base = string_bytes.ptr, .iov_len = string_bytes.len },
.{ .base = files.ptr, .len = files.len },
.{ .base = directories.ptr, .len = directories.len },
.{ .base = albums.ptr, .len = albums.len },
.{ .base = string_bytes.ptr, .len = string_bytes.len },
};
const amt_read = try file.readvAll(&iovecs);
const amt_expected = files.len + directories.len + albums.len + string_bytes.len;