diff --git a/io/include/blue/io/file.h b/io/include/blue/io/file.h index bcf801d..e665c22 100644 --- a/io/include/blue/io/file.h +++ b/io/include/blue/io/file.h @@ -62,6 +62,7 @@ BLUE_API b_status b_file_size(b_file *file, size_t *out_len); BLUE_API b_status b_file_cursor(b_file *file, size_t *out_pos); BLUE_API b_status b_file_resize(b_file *file, size_t len); BLUE_API b_status b_file_seek(b_file *file, long long offset, b_seek_basis basis); +BLUE_API const struct b_path *b_file_path(const b_file *file); BLUE_API b_status b_file_swap_shadow(b_file *main_file, b_file *shadow_file); diff --git a/io/sys/darwin/file.c b/io/sys/darwin/file.c index 7d8a7d8..ddfe6d7 100644 --- a/io/sys/darwin/file.c +++ b/io/sys/darwin/file.c @@ -274,6 +274,11 @@ static enum b_status stream_seek( return b_file_cursor(file, &stream->s_cursor); } +const struct b_path *b_file_path(const struct b_file *file) +{ + return file->path; +} + enum b_status b_file_open_stream(struct b_file *file, struct b_stream **out) { struct b_stream *stream = malloc(sizeof *stream);