model3d: use std.c.free to free save result
std.heap.c_allocator has a small wrapper on non-posix targets. the library uses libc malloc directly by default so we can use libc free to release memory.
This commit is contained in:
parent
3a0948098f
commit
ddc3da583c
1 changed files with 2 additions and 2 deletions
|
|
@ -58,7 +58,7 @@ pub fn deinit(self: M3d) void {
|
||||||
c.m3d_free(self.handle);
|
c.m3d_free(self.handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// return value must be freed with c_allocator
|
/// return value must be freed with std.c.free
|
||||||
pub fn save(self: M3d, quality: Quality, flags: Flags) Error![]u8 {
|
pub fn save(self: M3d, quality: Quality, flags: Flags) Error![]u8 {
|
||||||
var size: u32 = 0;
|
var size: u32 = 0;
|
||||||
return if (c.m3d_save(
|
return if (c.m3d_save(
|
||||||
|
|
@ -226,7 +226,7 @@ test {
|
||||||
try testing.expectEqualStrings(model.name(), "cube.obj");
|
try testing.expectEqualStrings(model.name(), "cube.obj");
|
||||||
|
|
||||||
var out = try model.save(.float, .{});
|
var out = try model.save(.float, .{});
|
||||||
defer std.heap.c_allocator.free(out);
|
defer std.c.free(out.ptr);
|
||||||
try testing.expect(out.len >= 119);
|
try testing.expect(out.len >= 119);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue