summaryrefslogtreecommitdiff
path: root/src/haiku_support.cc
diff options
context:
space:
mode:
authorPo Lu <luangruo@yahoo.com>2022-05-27 00:24:12 +0000
committerPo Lu <luangruo@yahoo.com>2022-05-27 00:24:12 +0000
commit8dcebc96299149845d63e23f27c75a1ecc0b3538 (patch)
treeef476a920435243e256d8a796cda0b5f966b6f1b /src/haiku_support.cc
parent061c2d683fae03b63872c08f6c4db37f930bb3b7 (diff)
downloademacs-8dcebc96299149845d63e23f27c75a1ecc0b3538.tar.gz
Handle allocation errors when creating menu items on Haiku
* src/haiku_support.cc (class EmacsMenuItem): Don't abort on failed strdup.
Diffstat (limited to 'src/haiku_support.cc')
-rw-r--r--src/haiku_support.cc39
1 files changed, 17 insertions, 22 deletions
diff --git a/src/haiku_support.cc b/src/haiku_support.cc
index 977728b5e3b..c1617c86cc7 100644
--- a/src/haiku_support.cc
+++ b/src/haiku_support.cc
@@ -2385,30 +2385,25 @@ public:
class EmacsMenuItem : public BMenuItem
{
public:
- int menu_bar_id = -1;
- void *menu_ptr = NULL;
- void *wind_ptr = NULL;
- char *key = NULL;
- char *help = NULL;
-
- EmacsMenuItem (const char *ky,
- const char *str,
- const char *help,
- BMessage *message = NULL) : BMenuItem (str, message)
+ int menu_bar_id;
+ void *menu_ptr;
+ void *wind_ptr;
+ char *key;
+ char *help;
+
+ EmacsMenuItem (const char *key_label, const char *label,
+ const char *help, BMessage *message = NULL)
+ : BMenuItem (label, message),
+ menu_bar_id (-1),
+ menu_ptr (NULL),
+ wind_ptr (NULL),
+ key (NULL),
+ help (NULL)
{
- if (ky)
- {
- key = strdup (ky);
- if (!key)
- gui_abort ("strdup failed");
- }
+ if (key_label)
+ key = strdup (key_label);
- if (help)
- {
- this->help = strdup (help);
- if (!this->help)
- gui_abort ("strdup failed");
- }
+ this->help = strdup (help);
}
~EmacsMenuItem ()