diff --git a/cli/filelister.cpp b/cli/filelister.cpp index 9f38d2b2442..24acc186818 100644 --- a/cli/filelister.cpp +++ b/cli/filelister.cpp @@ -191,6 +191,12 @@ std::string FileLister::addFiles(std::list &files, const std::s #include #include +struct closedir_deleter { + void operator()(DIR* d) const { + closedir(d); + } +}; + static std::string addFiles2(std::list &files, const std::string &path, const std::set &extra, @@ -221,7 +227,7 @@ static std::string addFiles2(std::list &files, const int err = errno; return "could not open directory '" + path + "' (errno: " + std::to_string(err) + ")"; } - std::unique_ptr dir_deleter(dir, closedir); + std::unique_ptr dir_deleter(dir); std::string new_path = path; new_path += '/';