aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlwin Esch <alwin.esch@web.de>2020-10-01 19:09:51 +0200
committerAlwin Esch <alwin.esch@web.de>2020-10-03 17:22:12 +0200
commita2fbb829ac81b646a5fb6a54671c3113c46ccc1a (patch)
tree90c7665364442498be88b2209f01604517c47aaa
parentace6c5090b033125d7fc0595b9017efcbc4585c6 (diff)
[addons] use new StringUtils::Format within addon header functions
This add the use of new StringUtils.h for format to kodi::Log and kodi::QueueFormattedNotification. After them is it more safe as no fixed memories are used.
-rw-r--r--xbmc/addons/kodi-dev-kit/include/kodi/AddonBase.h7
-rw-r--r--xbmc/addons/kodi-dev-kit/include/kodi/General.h6
2 files changed, 7 insertions, 6 deletions
diff --git a/xbmc/addons/kodi-dev-kit/include/kodi/AddonBase.h b/xbmc/addons/kodi-dev-kit/include/kodi/AddonBase.h
index c1a1ba7a14..6ab4159b7e 100644
--- a/xbmc/addons/kodi-dev-kit/include/kodi/AddonBase.h
+++ b/xbmc/addons/kodi-dev-kit/include/kodi/AddonBase.h
@@ -24,6 +24,8 @@
#include <string>
#include <vector>
+#include "tools/StringUtils.h"
+
namespace kodi
{
@@ -695,13 +697,12 @@ inline void ATTRIBUTE_HIDDEN Log(const AddonLog loglevel, const char* format, ..
{
using namespace kodi::addon;
- char buffer[16384];
va_list args;
va_start(args, format);
- vsnprintf(buffer, sizeof(buffer), format, args);
+ const std::string str = kodi::tools::StringUtils::FormatV(format, args);
va_end(args);
CAddonBase::m_interface->toKodi->addon_log_msg(CAddonBase::m_interface->toKodi->kodiBase,
- loglevel, buffer);
+ loglevel, str.c_str());
}
//------------------------------------------------------------------------------
diff --git a/xbmc/addons/kodi-dev-kit/include/kodi/General.h b/xbmc/addons/kodi-dev-kit/include/kodi/General.h
index 878eaa4104..3fad5a0d00 100644
--- a/xbmc/addons/kodi-dev-kit/include/kodi/General.h
+++ b/xbmc/addons/kodi-dev-kit/include/kodi/General.h
@@ -10,6 +10,7 @@
#include "AddonBase.h"
#include "c-api/general.h"
+#include "tools/StringUtils.h"
#ifdef __cplusplus
@@ -317,12 +318,11 @@ inline void ATTRIBUTE_HIDDEN QueueFormattedNotification(QueueMsg type, const cha
using namespace kodi::addon;
va_list args;
- char buffer[16384];
va_start(args, format);
- vsprintf(buffer, format, args);
+ const std::string str = kodi::tools::StringUtils::FormatV(format, args);
va_end(args);
CAddonBase::m_interface->toKodi->kodi->queue_notification(
- CAddonBase::m_interface->toKodi->kodiBase, type, "", buffer, "", 5000, false, 1000);
+ CAddonBase::m_interface->toKodi->kodiBase, type, "", str.c_str(), "", 5000, false, 1000);
}
//------------------------------------------------------------------------------