diff options
author | David Turner | 2010-06-17 03:22:52 +0000 |
---|---|---|
committer | David Turner | 2010-06-17 03:22:52 +0000 |
commit | e5f609a40ab68cad298b75a3d69a7d61e7b79e70 (patch) | |
tree | f289df2e97805c16827f0c2a49eed128decd6812 | |
parent | 2cba994bb4179cbed1c54921ff825bc4f7735efb (diff) | |
download | scummvm-rg350-e5f609a40ab68cad298b75a3d69a7d61e7b79e70.tar.gz scummvm-rg350-e5f609a40ab68cad298b75a3d69a7d61e7b79e70.tar.bz2 scummvm-rg350-e5f609a40ab68cad298b75a3d69a7d61e7b79e70.zip |
Correction for Invalid reads in Translation iconv calls reported by Valgrind.
The string terminators were omitted from the iconv call and not restored.
svn-id: r49916
-rw-r--r-- | common/translation.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/common/translation.cpp b/common/translation.cpp index 3119c074ab..925da26407 100644 --- a/common/translation.cpp +++ b/common/translation.cpp @@ -128,11 +128,11 @@ String TranslationManager::getTranslation(const String &message) { #ifdef USE_TERMCONV bool TranslationManager::convert(const char *message) { // Preparing conversion origin - size_t len = strlen(message); + size_t len = strlen(message) + 1; #ifdef ICONV_USES_CONST const char **pmsg = &message; #else - char *msgcpy = new char[len + 1]; + char *msgcpy = new char[len]; strcpy(msgcpy, message); char *msg = msgcpy; char **pmsg = &msg; @@ -158,7 +158,7 @@ bool TranslationManager::convert(const char *message) { const char *TranslationManager::convertTerm(const char *message) { #ifdef USE_TERMCONV - size_t len = strlen(message); + size_t len = strlen(message) + 1; if (!_convmsg) { _sizeconv = len * 2; _convmsg = new char[_sizeconv]; |