Skip to content

Memory leaks after upgrading from 0.14.0 compatible version to latest master #72

@phatchman

Description

@phatchman

I'm getting some memory leaks after upgrading to the latest master. Having looked again at the examples, there doesn't seem to be any need to call any free or deinit anywhere. Am I missing something?

Sorry I don't have anything better than these traces to provide.

PS C:\src\altair_tools> .\zig-out\bin\altairdsk.exe -r .\IMG000.DSK sadf
err: memory address 0x26eac900014 leaked: 
C:\Users\phatc\AppData\Roaming\Code\User\globalStorage\ziglang.vscode-zig\zig\aarch64-windows-0.16.0\lib\std\mem\Allocator.zig:454:40: 0x7ff7f76f74d3 in dupe__anon_14365 (altairdsk_zcu.obj)
    const new_buf = try allocator.alloc(T, m.len);
                                       ^
C:\src\altair_tools\zig-pkg\cli-0.10.0-2eKe_1sIAQDecE0Bz5gAm7aLcWz5wBAc8KxlP1YQPEWr\src\value_parser.zig:92:43: 0x7ff7f7838c9f in parser (altairdsk_zcu.obj)
                const cpy = try alloc.dupe(u8, value);
                                          ^
C:\src\altair_tools\zig-pkg\cli-0.10.0-2eKe_1sIAQDecE0Bz5gAm7aLcWz5wBAc8KxlP1YQPEWr\src\value_ref.zig:26:49: 0x7ff7f77f667f in put (altairdsk_zcu.obj)
                try self.value_data.value_parser(value_ptr, value, alloc);
                                                ^
C:\src\altair_tools\zig-pkg\cli-0.10.0-2eKe_1sIAQDecE0Bz5gAm7aLcWz5wBAc8KxlP1YQPEWr\src\parser.zig:169:38: 0x7ff7f77fb8b7 in handlePositionalArgument (altairdsk_zcu.obj)
                        posArgRef.put(arg, self.orig_allocator) catch |err| {
                                     ^
C:\src\altair_tools\zig-pkg\cli-0.10.0-2eKe_1sIAQDecE0Bz5gAm7aLcWz5wBAc8KxlP1YQPEWr\src\parser.zig:227:69: 0x7ff7f77f4eab in process_interpretation (altairdsk_zcu.obj)
                        .action => try self.handlePositionalArgument(some_name),
                                                                    ^
C:\src\altair_tools\zig-pkg\cli-0.10.0-2eKe_1sIAQDecE0Bz5gAm7aLcWz5wBAc8KxlP1YQPEWr\src\parser.zig:99:64: 0x7ff7f77f4213 in parse (altairdsk_zcu.obj)
                    args_only = try self.process_interpretation(&interpretation);
                                                               ^
(additional stack frames may have been skipped...)
err: memory address 0x26eac8b0220 leaked: 
C:\Users\phatc\AppData\Roaming\Code\User\globalStorage\ziglang.vscode-zig\zig\aarch64-windows-0.16.0\lib\std\mem\Allocator.zig:454:40: 0x7ff7f76f74d3 in dupe__anon_14365 (altairdsk_zcu.obj)
    const new_buf = try allocator.alloc(T, m.len);
                                       ^
C:\src\altair_tools\zig-pkg\cli-0.10.0-2eKe_1sIAQDecE0Bz5gAm7aLcWz5wBAc8KxlP1YQPEWr\src\value_parser.zig:92:43: 0x7ff7f7838c9f in parser (altairdsk_zcu.obj)
                const cpy = try alloc.dupe(u8, value);
                                          ^
C:\src\altair_tools\zig-pkg\cli-0.10.0-2eKe_1sIAQDecE0Bz5gAm7aLcWz5wBAc8KxlP1YQPEWr\src\value_ref.zig:19:52: 0x7ff7f77f6523 in put (altairdsk_zcu.obj)
                return self.value_data.value_parser(self.dest, value, alloc);
                                                   ^
C:\src\altair_tools\zig-pkg\cli-0.10.0-2eKe_1sIAQDecE0Bz5gAm7aLcWz5wBAc8KxlP1YQPEWr\src\parser.zig:169:38: 0x7ff7f77fb8b7 in handlePositionalArgument (altairdsk_zcu.obj)
                        posArgRef.put(arg, self.orig_allocator) catch |err| {
                                     ^
C:\src\altair_tools\zig-pkg\cli-0.10.0-2eKe_1sIAQDecE0Bz5gAm7aLcWz5wBAc8KxlP1YQPEWr\src\parser.zig:227:69: 0x7ff7f77f4eab in process_interpretation (altairdsk_zcu.obj)
                        .action => try self.handlePositionalArgument(some_name),
                                                                    ^
C:\src\altair_tools\zig-pkg\cli-0.10.0-2eKe_1sIAQDecE0Bz5gAm7aLcWz5wBAc8KxlP1YQPEWr\src\parser.zig:99:64: 0x7ff7f77f4213 in parse (altairdsk_zcu.obj)
                    args_only = try self.process_interpretation(&interpretation);
                                                               ^
(additional stack frames may have been skipped...)
err: memory address 0x26eac8b0230 leaked: 
C:\Users\phatc\AppData\Roaming\Code\User\globalStorage\ziglang.vscode-zig\zig\aarch64-windows-0.16.0\lib\std\array_list.zig:661:52: 0x7ff7f7838ddb in toOwnedSlice (altairdsk_zcu.obj)
            const new_memory = try gpa.alignedAlloc(T, alignment, self.items.len);
                                                   ^
C:\src\altair_tools\zig-pkg\cli-0.10.0-2eKe_1sIAQDecE0Bz5gAm7aLcWz5wBAc8KxlP1YQPEWr\src\value_ref.zig:118:52: 0x7ff7f7838ab7 in finalize (altairdsk_zcu.obj)
                destSlice.* = try list.toOwnedSlice(alloc);
                                                   ^
C:\src\altair_tools\zig-pkg\cli-0.10.0-2eKe_1sIAQDecE0Bz5gAm7aLcWz5wBAc8KxlP1YQPEWr\src\value_ref.zig:38:41: 0x7ff7f77f528b in finalize (altairdsk_zcu.obj)
                try list.vtable.finalize(list.list_ptr.?, self.dest, alloc);
                                        ^
C:\src\altair_tools\zig-pkg\cli-0.10.0-2eKe_1sIAQDecE0Bz5gAm7aLcWz5wBAc8KxlP1YQPEWr\src\parser.zig:128:60: 0x7ff7f77f48d3 in finalize (altairdsk_zcu.obj)
                                try parg.value_ref.finalize(self.orig_allocator);
                                                           ^
C:\src\altair_tools\zig-pkg\cli-0.10.0-2eKe_1sIAQDecE0Bz5gAm7aLcWz5wBAc8KxlP1YQPEWr\src\parser.zig:105:33: 0x7ff7f77f40e3 in parse (altairdsk_zcu.obj)
            return self.finalize();
                                ^
C:\src\altair_tools\zig-pkg\cli-0.10.0-2eKe_1sIAQDecE0Bz5gAm7aLcWz5wBAc8KxlP1YQPEWr\src\app_runner.zig:69:21: 0x7ff7f77e8a5f in getAction (altairdsk_zcu.obj)
        if (cr.parse()) |action| {
                    ^
(additional stack frames may have been skipped...)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions