From 295e3a2a3ab4f23828f607bc84de752ad56bd0d3 Mon Sep 17 00:00:00 2001 From: Alejandro Sior Date: Tue, 21 Jun 2022 18:50:36 +0200 Subject: mbr: add finish --- cmd/convert/convert.ha | 2 +- mbr/mbr.ha | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/cmd/convert/convert.ha b/cmd/convert/convert.ha index b3cfd38..1f7d474 100644 --- a/cmd/convert/convert.ha +++ b/cmd/convert/convert.ha @@ -46,7 +46,7 @@ export fn convert(args: []str) void = { defer io::close(sourcefd)!; const source = mbr::from(sourcefd)!; - // XXX need mbr::finish() + defer mbr::finish(source); let fd = cmd::openfile(); defer io::close(fd)!; diff --git a/mbr/mbr.ha b/mbr/mbr.ha index 31a9534..994bdb7 100644 --- a/mbr/mbr.ha +++ b/mbr/mbr.ha @@ -53,6 +53,11 @@ export fn from(fd: io::file) (*mbr | nombr | io::error) = { return self; }; +export fn finish(self: *mbr) void = { + sector::finish(&self.bootsector_sec); + free(self); +}; + export fn partstream_reader(self: *mbr, entry: *entry) (io::limitstream | io::error) = { const fd = self.bootsector_sec.fd; const part = entry.lba_begin * sector::sector_length; -- cgit v1.2.3