summaryrefslogtreecommitdiff
path: root/gpt
diff options
context:
space:
mode:
authorAlejandro Sior <aho@sior.be>2022-06-21 11:58:41 +0200
committerAlejandro Sior <aho@sior.be>2022-06-21 11:58:41 +0200
commitd000a6edf4ad9fcc2302a80080fdbebb23fb7378 (patch)
tree3f935e08330fd0992cdcac6d182c688a3c0df53d /gpt
parentc99646423f311c9238ace86be17caf531fe61c44 (diff)
gpt.part: add fill and dump and new
Diffstat (limited to 'gpt')
-rw-r--r--gpt/gpt.ha6
1 files changed, 3 insertions, 3 deletions
diff --git a/gpt/gpt.ha b/gpt/gpt.ha
index 9474830..00720f8 100644
--- a/gpt/gpt.ha
+++ b/gpt/gpt.ha
@@ -194,9 +194,9 @@ fn findfree(self: *gpt, length: u64) u64 = {
let i = 0z;
for (i < header.entries_len) {
defer i += 1;
- if (entries[i].part_type[0] == 0 && entries[i].part_type[1] == 0)
+ if (entries[i].lba_begin == 0 && entries[i].lba_end == 0)
continue;
- if (overlap((cur, length), (entries[i].lba_begin, entries[i].lba_end - entries[i].lba_begin))) {
+ if (overlap((cur, length), (entries[i].lba_begin, entries[i].lba_end - entries[i].lba_begin + 1))) {
cur = entries[i].lba_end + 1;
break;
};
@@ -216,7 +216,7 @@ fn findfreeentry(self: *gpt) nullable *entry = {
const entries = self.primary.entries;
for (let i = 0z; i < header.entries_len; i += 1) {
- if (entries[i].part_type[0] == 0 && entries[i].part_type[1] == 0)
+ if (entries[i].lba_begin == 0 && entries[i].lba_end == 0)
return &entries[i];
};