From f0e1cc7fc59aa3cb8f90a5ae81644a84944aa2d4 Mon Sep 17 00:00:00 2001 From: "Scott E. Graves" Date: Fri, 12 Sep 2025 11:54:51 -0500 Subject: [PATCH] Pinning a file should automatically initiate a download to cache #38 --- repertory/librepertory/src/file_manager/file_manager.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/repertory/librepertory/src/file_manager/file_manager.cpp b/repertory/librepertory/src/file_manager/file_manager.cpp index d6d33923..1d62c060 100644 --- a/repertory/librepertory/src/file_manager/file_manager.cpp +++ b/repertory/librepertory/src/file_manager/file_manager.cpp @@ -158,22 +158,26 @@ auto file_manager::download_pinned_file(const std::string &api_path) -> bool { try { if (provider_.is_read_only()) { + // TODO handle error return false; } std::string str_pinned; auto res = provider_.get_item_meta(api_path, META_PINNED, str_pinned); if (res != api_error::success) { + // TODO handle error return false; } if (not utils::string::to_bool(str_pinned)) { + // TODO handle error return false; } - auto handle{static_cast(REPERTORY_INVALID_HANDLE)}; + std::uint64_t handle{}; std::shared_ptr open_file; res = open(api_path, false, {}, handle, open_file); if (res != api_error::success) { + // TODO handle error return false; } @@ -182,6 +186,8 @@ auto file_manager::download_pinned_file(const std::string &api_path) -> bool { open_file->force_download(); } + // TODO handle error (ret == false) + close(handle); return ret; } catch (const std::exception &ex) {