This commit is contained in:
2025-01-22 08:06:54 -06:00
parent 124dc62250
commit 97e5f17049

View File

@ -81,23 +81,23 @@ auto directory_iterator::fill_buffer(const remote::file_offset &offset,
#endif // !defined(_WIN32)
auto directory_iterator::get(std::size_t offset, std::string &item) -> int {
if (offset < items_.size()) {
item = items_[offset].api_path;
return 0;
if (offset >= items_.size()) {
errno = 120;
return -1;
}
errno = 120;
return -1;
item = items_[offset].api_path;
return 0;
}
auto directory_iterator::get_directory_item(std::size_t offset,
directory_item &di) -> api_error {
if (offset < items_.size()) {
di = items_[offset];
return api_error::success;
if (offset >= items_.size()) {
return api_error::directory_end_of_files;
}
return api_error::directory_end_of_files;
di = items_[offset];
return api_error::success;
}
auto directory_iterator::get_directory_item(const std::string &api_path,
@ -106,22 +106,22 @@ auto directory_iterator::get_directory_item(const std::string &api_path,
std::find_if(items_.begin(), items_.end(), [&](const auto &item) -> bool {
return api_path == item.api_path;
});
if (iter != items_.end()) {
di = *iter;
return api_error::success;
if (iter == items_.end()) {
return api_error::item_not_found;
}
return api_error::item_not_found;
di = *iter;
return api_error::success;
}
auto directory_iterator::get_json(std::size_t offset, json &item) -> int {
if (offset < items_.size()) {
item = json(items_.at(offset));
return 0;
if (offset >= items_.size()) {
errno = 120;
return -1;
}
errno = 120;
return -1;
item = json(items_.at(offset));
return 0;
}
auto directory_iterator::get_next_directory_offset(