add CRCInput::getKeyNameC to fix lifetime issues

in menu.cpp, getKeyName().c_str()'s destructor was already invoked
when the value was used, triggering a valgrind warning.


Origin commit data
------------------
Branch: ni/coolstream
Commit: d5d136f6c1
Author: Stefan Seyfried <seife@tuxbox-git.slipkontur.de>
Date: 2012-10-31 (Wed, 31 Oct 2012)



------------------
This commit was generated by Migit
This commit is contained in:
Stefan Seyfried
2012-10-31 22:52:12 +01:00
parent a5a0e909b9
commit 68cc0c3a78
3 changed files with 9 additions and 3 deletions

View File

@@ -1567,16 +1567,21 @@ const char * CRCInput::getSpecialKeyName(const unsigned int key)
}
std::string CRCInput::getKeyName(const unsigned int key)
{
return (std::string)getKeyNameC(key);
}
const char *CRCInput::getKeyNameC(const unsigned int key)
{
int lunicode_value = getUnicodeValue(key);
if (lunicode_value == -1)
return getSpecialKeyName(key);
else
{
char tmp[2];
static char tmp[2];
tmp[0] = lunicode_value;
tmp[1] = 0;
return std::string(tmp);
return tmp;
}
}