diff --git a/src/opustags.h b/src/opustags.h index 93c323b..720be29 100644 --- a/src/opustags.h +++ b/src/opustags.h @@ -124,8 +124,14 @@ using byte_string_view = std::basic_string_view; * * It implictly converts from an already opened FILE*. */ -struct file : std::unique_ptr { - file(FILE* f = nullptr) : std::unique_ptr(f, &fclose) {} +struct fclose_deleter { + void operator()(FILE *f) const noexcept { + fclose(f); + } +}; + +struct file : std::unique_ptr { + file(FILE* f = nullptr) : std::unique_ptr(f) {} }; /**