diff --git a/std/dynamic_library.zig b/std/dynamic_library.zig index 79e325b81e..3413788019 100644 --- a/std/dynamic_library.zig +++ b/std/dynamic_library.zig @@ -108,11 +108,12 @@ pub const LinuxDynLib = struct { const fd = try os.open(path, 0, os.O_RDONLY | os.O_CLOEXEC); errdefer os.close(fd); + // TODO remove this @intCast const size = @intCast(usize, (try os.fstat(fd)).size); const bytes = try os.mmap( null, - size, + mem.alignForward(size, mem.page_size), os.PROT_READ | os.PROT_EXEC, os.MAP_PRIVATE, fd, diff --git a/test/standalone/load_dynamic_library/main.zig b/test/standalone/load_dynamic_library/main.zig index 4c45ad6fde..a222f5b315 100644 --- a/test/standalone/load_dynamic_library/main.zig +++ b/test/standalone/load_dynamic_library/main.zig @@ -1,12 +1,12 @@ const std = @import("std"); pub fn main() !void { - const args = try std.os.argsAlloc(std.debug.global_allocator); - defer std.os.argsFree(std.debug.global_allocator, args); + const args = try std.process.argsAlloc(std.debug.global_allocator); + defer std.process.argsFree(std.debug.global_allocator, args); const dynlib_name = args[1]; - var lib = try std.DynLib.open(std.debug.global_allocator, dynlib_name); + var lib = try std.DynLib.open(dynlib_name); defer lib.close(); const addr = lib.lookup("add") orelse return error.SymbolNotFound;