diff --git a/headers/private/kernel/boot/menu.h b/headers/private/kernel/boot/menu.h index dc07cb393b..60edf8ecc4 100644 --- a/headers/private/kernel/boot/menu.h +++ b/headers/private/kernel/boot/menu.h @@ -57,6 +57,7 @@ public: char Shortcut() const { return fShortcut; } const char* Label() const { return fLabel; } + void SetLabel(const char* label); Menu* Submenu() const { return fSubMenu; } void SetSubmenu(Menu* subMenu); diff --git a/src/system/boot/loader/menu.cpp b/src/system/boot/loader/menu.cpp index 5b55168230..b5dbcc65be 100644 --- a/src/system/boot/loader/menu.cpp +++ b/src/system/boot/loader/menu.cpp @@ -180,6 +180,16 @@ MenuItem::SetShortcut(char key) } +void +MenuItem::SetLabel(const char* label) +{ + if (char* newLabel = strdup(label)) { + free(const_cast(fLabel)); + fLabel = newLabel; + } +} + + void MenuItem::SetSubmenu(Menu* subMenu) {