diff --git a/src/core/services/get-media.cpp b/src/core/helpers/get_file_tree.cpp similarity index 74% rename from src/core/services/get-media.cpp rename to src/core/helpers/get_file_tree.cpp index 3a50ff4..c436a8d 100644 --- a/src/core/services/get-media.cpp +++ b/src/core/helpers/get_file_tree.cpp @@ -1,29 +1,24 @@ -#include "./get-media.h" #include "../../iDescriptor.h" +#include #include #include #include #include -MediaFileTree getMediaFileTree(afc_client_t afcClient, - lockdownd_service_descriptor_t lockdownService, - - const std::string &path = "/") +MediaFileTree get_file_tree(afc_client_t afcClient, idevice_t device, + const std::string &path) { MediaFileTree result; result.currentPath = path; if (afcClient == nullptr) { - qDebug() << "AFC client is not initialized in getMediaFileTree"; - } - - if (lockdownService == nullptr) { - qDebug() << "Lockdown service is not initialized in getMediaFileTree"; + qDebug() << "AFC client is not initialized in get_file_tree"; } char **dirs = NULL; - if (afc_read_directory(afcClient, path.c_str(), &dirs) != AFC_E_SUCCESS) { + if (safe_afc_read_directory(afcClient, device, path.c_str(), &dirs) != + AFC_E_SUCCESS) { // afc_client_free(afcClient); // lockdownd_service_descriptor_free(lockdownService); result.success = false; @@ -57,6 +52,7 @@ MediaFileTree getMediaFileTree(afc_client_t afcClient, } result.entries.push_back({entryName, isDir}); } + free(dirs); // TODO : Freed when device is disconnected // afc_client_free(afc); // lockdownd_service_descriptor_free(service); diff --git a/src/core/services/get-media.h b/src/core/services/get-media.h deleted file mode 100644 index fd7dbff..0000000 --- a/src/core/services/get-media.h +++ /dev/null @@ -1,14 +0,0 @@ -#pragma once -#include -#include - -struct MediaEntry { - std::string name; - bool isDir; -}; - -struct MediaFileTree { - std::vector entries; - bool success; - std::string currentPath; -};