summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorailurux <ailuruxx@gmail.com>2024-05-02 17:08:40 +1000
committerailurux <ailuruxx@gmail.com>2024-05-02 17:08:40 +1000
commitfb3d6a7b86991fe38da9a2741db8801785aa4c1b (patch)
tree68244346dc7d63b1ad4050aa50bd921c77389dd5
parent4aed95a3cdf6eb39e158cb2333d09b354afe3614 (diff)
downloadtangara-fw-fb3d6a7b86991fe38da9a2741db8801785aa4c1b.tar.gz
WIP: Add destructor for FileIterator
-rw-r--r--src/lua/file_iterator.cpp5
-rw-r--r--src/lua/include/file_iterator.hpp1
2 files changed, 6 insertions, 0 deletions
diff --git a/src/lua/file_iterator.cpp b/src/lua/file_iterator.cpp
index 7f2929ba..8de1a923 100644
--- a/src/lua/file_iterator.cpp
+++ b/src/lua/file_iterator.cpp
@@ -28,6 +28,11 @@ FileIterator::FileIterator(std::string filepath)
}
}
+FileIterator::~FileIterator() {
+ auto lock = drivers::acquire_spi();
+ f_closedir(&dir_);
+}
+
auto FileIterator::value() const -> const std::optional<FileEntry>& {
return current_;
}
diff --git a/src/lua/include/file_iterator.hpp b/src/lua/include/file_iterator.hpp
index 6fc58245..1632949e 100644
--- a/src/lua/include/file_iterator.hpp
+++ b/src/lua/include/file_iterator.hpp
@@ -25,6 +25,7 @@ struct FileEntry {
class FileIterator {
public:
FileIterator(std::string filepath);
+ ~FileIterator();
auto value() const -> const std::optional<FileEntry>&;
auto next() -> void;