summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/SubMenuItemSetup.cpp10
-rw-r--r--src/SubMenuItemSetup.h2
2 files changed, 6 insertions, 6 deletions
diff --git a/src/SubMenuItemSetup.cpp b/src/SubMenuItemSetup.cpp
index 804d262..571e6d4 100644
--- a/src/SubMenuItemSetup.cpp
+++ b/src/SubMenuItemSetup.cpp
@@ -22,24 +22,24 @@
#include "SubMenuItemSetup.h"
+const char AllowedChars[] = "$ abcdefghijklmnopqrstuvwxyz0123456789-.#~\\^$[]|()*+?{}/:%";
+
cSubMenuItemSetup::cSubMenuItemSetup(SubMenuNode* node)
-:cOsdMenu(tr("Edit Sub Menu Item"))
+:cOsdMenu(tr("Edit Sub Menu Item"), 8)
{
- asprintf(&_newName, "%s", node->Text().c_str());
-// _newName=node->Text();
+ strn0cpy(_newName, node->Text().c_str(), sizeof(_newName));
CreateMenuItems();
}
cSubMenuItemSetup::~cSubMenuItemSetup()
{
// TODO: write back the changes
- free(_newName);
}
void cSubMenuItemSetup::CreateMenuItems()
{
// Add textItem for name attribute
- Add(new cMenuEditStrItem(tr("name"), _newName, 64, NULL));
+ Add(new cMenuEditStrItem(tr("name"), _newName, sizeof(_newName), tr(AllowedChars)));
}
eOSState cSubMenuItemSetup::ProcessKey(eKeys Key)
diff --git a/src/SubMenuItemSetup.h b/src/SubMenuItemSetup.h
index 92962b5..41d2571 100644
--- a/src/SubMenuItemSetup.h
+++ b/src/SubMenuItemSetup.h
@@ -29,7 +29,7 @@
class cSubMenuItemSetup : public cOsdMenu
{
private:
- char* _newName;
+ char _newName[256];
public:
cSubMenuItemSetup(SubMenuNode* node);