summaryrefslogtreecommitdiffstats
path: root/kwset.c
diff options
context:
space:
mode:
Diffstat (limited to 'kwset.c')
-rw-r--r--kwset.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/kwset.c b/kwset.c
index 090ffcafa2..fc439e0667 100644
--- a/kwset.c
+++ b/kwset.c
@@ -38,7 +38,13 @@
#include "compat/obstack.h"
#define NCHAR (UCHAR_MAX + 1)
-#define obstack_chunk_alloc xmalloc
+/* adapter for `xmalloc()`, which takes `size_t`, not `long` */
+static void *obstack_chunk_alloc(long size)
+{
+ if (size < 0)
+ BUG("Cannot allocate a negative amount: %ld", size);
+ return xmalloc(size);
+}
#define obstack_chunk_free free
#define U(c) ((unsigned char) (c))