Fix paths being created with trailing "/" always
continuous-integration/drone/push Build is passing Details

This commit is contained in:
kayomn 2022-10-04 23:15:59 +01:00
parent fbd79b5b41
commit d2f4c0afe1
1 changed files with 27 additions and 14 deletions

View File

@ -550,7 +550,10 @@ pub const FileSystem = enum {
.length = 0,
};
for (sequences) |sequence| if (sequence.len != 0) {
if (sequences.len != 0) {
const last_sequence_index = sequences.len - 1;
for (sequences) |sequence, index| if (sequence.len != 0) {
var components = mem.Spliterator(u8){
.source = sequence,
.delimiter = "/",
@ -564,12 +567,22 @@ pub const FileSystem = enum {
path.length += 1;
}
if (components.hasNext()) {
if (path.length == Path.max) return error.TooLong;
path.buffer[path.length] = '/';
path.length += 1;
}
};
if (index < last_sequence_index) {
if (path.length == Path.max) return error.TooLong;
path.buffer[path.length] = '/';
path.length += 1;
}
};
}
return path;
}