diff options
author | Arno van Amersfoort <arnova77@gmail.com> | 2019-08-15 13:11:45 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-08-15 13:11:45 +0200 |
commit | 5aaa190407255c9222ea33cbfb7d3ff09e527497 (patch) | |
tree | 9a3002cb261cb3f071cf75e368e8631d25a7bca7 | |
parent | 1e095cab1b9d42447d2dafdf6d0273319b3a4a8e (diff) | |
parent | bb0c49298d85239bd5a7e9bda7a80fc7b003340d (diff) |
Merge pull request #16431 from arnova/addon_vfs_size_date_fix
fixed: File times for vfs addons (fixes #15426)
6 files changed, 19 insertions, 13 deletions
diff --git a/xbmc/addons/VFSEntry.cpp b/xbmc/addons/VFSEntry.cpp index b7f3b36107..9d7b25c543 100644 --- a/xbmc/addons/VFSEntry.cpp +++ b/xbmc/addons/VFSEntry.cpp @@ -345,7 +345,7 @@ static void VFSDirEntriesToCFileItemList(int num_entries, item->SetLabel(entries[i].label); item->SetPath(entries[i].path); item->m_dwSize = entries[i].size; - //item->m_dateTime = entries[i].mtime; + item->m_dateTime = entries[i].date_time; item->m_bIsFolder = entries[i].folder; if (entries[i].title) item->m_strTitle = entries[i].title; diff --git a/xbmc/addons/interfaces/Addon/AddonCallbacksAddon.cpp b/xbmc/addons/interfaces/Addon/AddonCallbacksAddon.cpp index 3b73e99380..1a278f402a 100644 --- a/xbmc/addons/interfaces/Addon/AddonCallbacksAddon.cpp +++ b/xbmc/addons/interfaces/Addon/AddonCallbacksAddon.cpp @@ -612,6 +612,7 @@ static void CFileItemListToVFSDirEntries(VFSDirEntry* entries, entries[i].path = strdup(items[i]->GetPath().c_str()); entries[i].size = items[i]->m_dwSize; entries[i].folder = items[i]->m_bIsFolder; + items[i]->m_dateTime.GetAsTime(entries[i].date_time); } } diff --git a/xbmc/addons/kodi-addon-dev-kit/include/kodi/Filesystem.h b/xbmc/addons/kodi-addon-dev-kit/include/kodi/Filesystem.h index 3df6cec2d6..de73297d71 100644 --- a/xbmc/addons/kodi-addon-dev-kit/include/kodi/Filesystem.h +++ b/xbmc/addons/kodi-addon-dev-kit/include/kodi/Filesystem.h @@ -326,19 +326,22 @@ namespace vfs /// @ingroup cpp_kodi_vfs_CDirEntry /// @brief Constructor for VFS directory entry /// - /// @param[in] label [opt] Name to use for entry - /// @param[in] path [opt] Used path of the entry - /// @param[in] folder [opt] If set entry used as folder - /// @param[in] size [opt] If used as file, his size defined there + /// @param[in] label [opt] Name to use for entry + /// @param[in] path [opt] Used path of the entry + /// @param[in] folder [opt] If set entry used as folder + /// @param[in] size [opt] If used as file, his size defined there + /// @param[in] dateTime [opt] Date time of the entry /// CDirEntry(const std::string& label = "", const std::string& path = "", bool folder = false, - int64_t size = -1) : + int64_t size = -1, + time_t dateTime = 0): m_label(label), m_path(path), m_folder(folder), - m_size(size) + m_size(size), + m_dateTime(dateTime) { } //---------------------------------------------------------------------------- diff --git a/xbmc/addons/kodi-addon-dev-kit/include/kodi/addon-instance/VFS.h b/xbmc/addons/kodi-addon-dev-kit/include/kodi/addon-instance/VFS.h index 3bdc059db7..f38c64dbbe 100644 --- a/xbmc/addons/kodi-addon-dev-kit/include/kodi/addon-instance/VFS.h +++ b/xbmc/addons/kodi-addon-dev-kit/include/kodi/addon-instance/VFS.h @@ -519,6 +519,7 @@ namespace addon entries[i].path = strdup(addonEntries[i].Path().c_str()); entries[i].folder = addonEntries[i].IsFolder(); entries[i].size = addonEntries[i].Size(); + entries[i].date_time = addonEntries[i].DateTime(); entries[i].num_props = 0; const std::map<std::string, std::string>& props = addonEntries[i].GetProperties(); @@ -582,6 +583,7 @@ namespace addon entries[i].path = strdup(addonEntries[i].Path().c_str()); entries[i].folder = addonEntries[i].IsFolder(); entries[i].size = addonEntries[i].Size(); + entries[i].date_time = addonEntries[i].DateTime(); entries[i].num_props = 0; const std::map<std::string, std::string>& props = addonEntries[i].GetProperties(); diff --git a/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_vfs_types.h b/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_vfs_types.h index 233f68200a..3ca9c5bfdd 100644 --- a/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_vfs_types.h +++ b/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_vfs_types.h @@ -39,9 +39,9 @@ extern "C" char* label; //!< item label char* title; //!< item title char* path; //!< item path - int num_props; //!< Number of properties attached to item + unsigned int num_props; //!< Number of properties attached to item VFSProperty* properties; //!< Properties - //FILETIME mtime; //!< Mtime for file represented by item + time_t date_time; //!< file creation date & time bool folder; //!< Item is a folder uint64_t size; //!< Size of file represented by item }; diff --git a/xbmc/addons/kodi-addon-dev-kit/include/kodi/versions.h b/xbmc/addons/kodi-addon-dev-kit/include/kodi/versions.h index 02cc1ca499..4dc7a6958b 100644 --- a/xbmc/addons/kodi-addon-dev-kit/include/kodi/versions.h +++ b/xbmc/addons/kodi-addon-dev-kit/include/kodi/versions.h @@ -55,8 +55,8 @@ #define ADDON_GLOBAL_VERSION_AUDIOENGINE_XML_ID "kodi.binary.global.audioengine" #define ADDON_GLOBAL_VERSION_AUDIOENGINE_DEPENDS "AudioEngine.h" -#define ADDON_GLOBAL_VERSION_FILESYSTEM "1.0.2" -#define ADDON_GLOBAL_VERSION_FILESYSTEM_MIN "1.0.2" +#define ADDON_GLOBAL_VERSION_FILESYSTEM "1.0.3" +#define ADDON_GLOBAL_VERSION_FILESYSTEM_MIN "1.0.3" #define ADDON_GLOBAL_VERSION_FILESYSTEM_XML_ID "kodi.binary.global.filesystem" #define ADDON_GLOBAL_VERSION_FILESYSTEM_DEPENDS "Filesystem.h" @@ -111,8 +111,8 @@ #define ADDON_INSTANCE_VERSION_SCREENSAVER_XML_ID "kodi.binary.instance.screensaver" #define ADDON_INSTANCE_VERSION_SCREENSAVER_DEPENDS "addon-instance/Screensaver.h" -#define ADDON_INSTANCE_VERSION_VFS "2.0.0" -#define ADDON_INSTANCE_VERSION_VFS_MIN "2.0.0" +#define ADDON_INSTANCE_VERSION_VFS "2.1.0" +#define ADDON_INSTANCE_VERSION_VFS_MIN "2.1.0" #define ADDON_INSTANCE_VERSION_VFS_XML_ID "kodi.binary.instance.vfs" #define ADDON_INSTANCE_VERSION_VFS_DEPENDS "addon-instance/VFS.h" |