diff options
1 files changed, 7 insertions, 1 deletions
| -rw-r--r-- | src/Generic/ConsoleInterface/Command.cpp | 8 |
diff --git a/src/Generic/ConsoleInterface/Command.cpp b/src/Generic/ConsoleInterface/Command.cpp index d3d058c..c14bcc8 100644 --- a/src/Generic/ConsoleInterface/Command.cpp +++ b/src/Generic/ConsoleInterface/Command.cpp @@ -3,11 +3,17 @@ Command::Command() : Command("", nullptr) {} +/*! \param nameInMenu C-style string, class stores at most 255 characters (last character is always terminating zero) + * \param exec Function pointer that will be executed when run() is called. Can be nullptr. + */ Command::Command(const char* nameInMenu, void (*exec)()) { - strcpy(this->nameInMenu, nameInMenu); + strncpy(this->nameInMenu, nameInMenu, 255); + this->nameInMenu[255] = '\0'; this->exec = exec; } +/*! Executes the stored function pointer, when it's not nullptr. Otherwise does nothing. + */ void Command::run() const { if (exec != nullptr) exec(); |
