Compare commits
2 commits
77cceab288
...
7097334201
Author | SHA1 | Date | |
---|---|---|---|
7097334201 | |||
c2834f8254 |
3 changed files with 14 additions and 5 deletions
|
@ -179,17 +179,20 @@ pub const Image = struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn close(self: *Image) void {
|
pub fn close(self: *Image) void {
|
||||||
self.allocator.free(self.path);
|
|
||||||
self.allocator.free(self.curpath);
|
|
||||||
|
|
||||||
var st: i32 = c.sf_close(self.sndfile);
|
var st: i32 = c.sf_close(self.sndfile);
|
||||||
|
|
||||||
if (st != 0) {
|
if (st != 0) {
|
||||||
std.debug.warn("Failed to close {} ({})\n", .{
|
std.debug.warn("Failed to close {} ({})\n", .{
|
||||||
self.path,
|
self.path,
|
||||||
c.sf_error_number(st),
|
c.sf_error_number(st),
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
self.allocator.free(self.path);
|
||||||
|
self.allocator.free(self.curpath);
|
||||||
|
|
||||||
|
var allocator = self.allocator;
|
||||||
|
self.* = undefined;
|
||||||
|
allocator.destroy(self);
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn read(self: *Image, file_chans: c_int, buf: []f32) bool {
|
pub fn read(self: *Image, file_chans: c_int, buf: []f32) bool {
|
||||||
|
|
|
@ -231,7 +231,12 @@ pub fn doRepl(allocator: *std.mem.Allocator, args_it: anytype) !void {
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn main() !void {
|
pub fn main() !void {
|
||||||
const allocator = std.heap.page_allocator;
|
// const allocator = std.heap.page_allocator;
|
||||||
|
var allocator_instance = std.heap.GeneralPurposeAllocator(.{}){};
|
||||||
|
defer {
|
||||||
|
_ = allocator_instance.deinit();
|
||||||
|
}
|
||||||
|
const allocator = &allocator_instance.allocator;
|
||||||
|
|
||||||
var lang = langs.Lang.init(allocator);
|
var lang = langs.Lang.init(allocator);
|
||||||
defer lang.deinit();
|
defer lang.deinit();
|
||||||
|
|
|
@ -108,6 +108,7 @@ pub const Runner = struct {
|
||||||
// we don't copy load_path into a temporary file because we're already
|
// we don't copy load_path into a temporary file because we're already
|
||||||
// loading it under the SFM_READ mode, which won't cause any destructive
|
// loading it under the SFM_READ mode, which won't cause any destructive
|
||||||
// operations on the file.
|
// operations on the file.
|
||||||
|
if (self.image) |image| image.close();
|
||||||
self.image = try Image.open(self.allocator, load_path);
|
self.image = try Image.open(self.allocator, load_path);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue