From cc35eb244a210bad080d6aa4ec419c7a2a771e98 Mon Sep 17 00:00:00 2001 From: Karlson2k Date: Sat, 28 Jun 2014 19:48:08 +0400 Subject: Reflect int64_t -> size_t changes for "Read()" to Addons --- addons/library.xbmc.addon/libXBMC_addon.h | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'addons/library.xbmc.addon/libXBMC_addon.h') diff --git a/addons/library.xbmc.addon/libXBMC_addon.h b/addons/library.xbmc.addon/libXBMC_addon.h index 0b2d17c93b..d85653c084 100644 --- a/addons/library.xbmc.addon/libXBMC_addon.h +++ b/addons/library.xbmc.addon/libXBMC_addon.h @@ -28,6 +28,10 @@ #include #ifdef _WIN32 // windows +#ifndef _SSIZE_T_DEFINED +typedef intptr_t ssize_t; +#define _SSIZE_T_DEFINED +#endif // !_SSIZE_T_DEFINED #include "dlfcn-win32.h" #define ADDON_DLL "\\library.xbmc.addon\\libXBMC_addon" ADDON_HELPER_EXT #define ADDON_HELPER_EXT ".dll" @@ -186,7 +190,7 @@ namespace ADDON dlsym(m_libXBMC_addon, "XBMC_open_file_for_write"); if (XBMC_open_file_for_write == NULL) { fprintf(stderr, "Unable to assign function %s\n", dlerror()); return false; } - XBMC_read_file = (unsigned int (*)(void* HANDLE, void* CB, void* file, void* lpBuf, int64_t uiBufSize)) + XBMC_read_file = (ssize_t (*)(void* HANDLE, void* CB, void* file, void* lpBuf, size_t uiBufSize)) dlsym(m_libXBMC_addon, "XBMC_read_file"); if (XBMC_read_file == NULL) { fprintf(stderr, "Unable to assign function %s\n", dlerror()); return false; } @@ -375,9 +379,11 @@ namespace ADDON * @param file The file handle to read from. * @param lpBuf The buffer to store the data in. * @param uiBufSize The size of the buffer. - * @return Number of bytes read. + * @return number of successfully read bytes if any bytes were read and stored in + * buffer, zero if no bytes are available to read (end of file was reached) + * or undetectable error occur, -1 in case of any explicit error */ - unsigned int ReadFile(void* file, void* lpBuf, int64_t uiBufSize) + ssize_t ReadFile(void* file, void* lpBuf, size_t uiBufSize) { return XBMC_read_file(m_Handle, m_Callbacks, file, lpBuf, uiBufSize); } @@ -562,7 +568,7 @@ namespace ADDON void (*XBMC_free_string)(void *HANDLE, void* CB, char* str); void* (*XBMC_open_file)(void *HANDLE, void* CB, const char* strFileName, unsigned int flags); void* (*XBMC_open_file_for_write)(void *HANDLE, void* CB, const char* strFileName, bool bOverWrite); - unsigned int (*XBMC_read_file)(void *HANDLE, void* CB, void* file, void* lpBuf, int64_t uiBufSize); + ssize_t (*XBMC_read_file)(void *HANDLE, void* CB, void* file, void* lpBuf, size_t uiBufSize); bool (*XBMC_read_file_string)(void *HANDLE, void* CB, void* file, char *szLine, int iLineLength); int (*XBMC_write_file)(void *HANDLE, void* CB, void* file, const void* lpBuf, int64_t uiBufSize); void (*XBMC_flush_file)(void *HANDLE, void* CB, void* file); -- cgit v1.2.3