diff options
author | Marcel Groothuis <margro.xbmc@gmail.com> | 2011-01-09 21:15:01 +0100 |
---|---|---|
committer | Marcel Groothuis <margro.xbmc@gmail.com> | 2011-01-09 21:15:01 +0100 |
commit | ce7222a76b3c8ff14d25ca7208e7be1162b32c07 (patch) | |
tree | 2252e90a705daabfeae31757242d0d293a211a47 /addons/library.xbmc.addon | |
parent | b27ec62fe74f097482a92b4f73cb80aced87ad67 (diff) |
pvr: libXBMC_addon.dll is a C dll and should not use std::string as function argument or return type. This fixes heap corruption problems under VC++.
Diffstat (limited to 'addons/library.xbmc.addon')
-rw-r--r-- | addons/library.xbmc.addon/libXBMC_addon.h | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/addons/library.xbmc.addon/libXBMC_addon.h b/addons/library.xbmc.addon/libXBMC_addon.h index 7af0d1cf7d..0be6d46da5 100644 --- a/addons/library.xbmc.addon/libXBMC_addon.h +++ b/addons/library.xbmc.addon/libXBMC_addon.h @@ -106,7 +106,7 @@ public: dlsym(m_libXBMC_addon, "XBMC_log"); if (Log == NULL) { fprintf(stderr, "Unable to assign function %s\n", dlerror()); return false; } - GetSetting = (bool (*)(std::string settingName, void *settingValue)) + GetSetting = (bool (*)(const char* settingName, void *settingValue)) dlsym(m_libXBMC_addon, "XBMC_get_setting"); if (GetSetting == NULL) { fprintf(stderr, "Unable to assign function %s\n", dlerror()); return false; } @@ -118,11 +118,11 @@ public: dlsym(m_libXBMC_addon, "XBMC_unknown_to_utf8"); if (UnknownToUTF8 == NULL) { fprintf(stderr, "Unable to assign function %s\n", dlerror()); return false; } - GetLocalizedString = (std::string (*)(int dwCode)) + GetLocalizedString = (const char* (*)(int dwCode)) dlsym(m_libXBMC_addon, "XBMC_get_localized_string"); if (GetLocalizedString == NULL) { fprintf(stderr, "Unable to assign function %s\n", dlerror()); return false; } - GetDVDMenuLanguage = (std::string (*)()) + GetDVDMenuLanguage = (const char* (*)()) dlsym(m_libXBMC_addon, "XBMC_get_dvd_menu_language"); if (GetDVDMenuLanguage == NULL) { fprintf(stderr, "Unable to assign function %s\n", dlerror()); return false; } @@ -130,11 +130,11 @@ public: } void (*Log)(const addon_log_t loglevel, const char *format, ... ); - bool (*GetSetting)(std::string settingName, void *settingValue); + bool (*GetSetting)(const char* settingName, void *settingValue); void (*QueueNotification)(const queue_msg_t type, const char *format, ... ); void (*UnknownToUTF8)(std::string &str); - std::string (*GetLocalizedString)(int dwCode); - std::string (*GetDVDMenuLanguage)(); + const char* (*GetLocalizedString)(int dwCode); + const char* (*GetDVDMenuLanguage)(); protected: int (*XBMC_register_me)(void *HANDLE); |