aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org.ua>2011-04-30 18:57:54 +0300
committerSergey Poznyakoff <gray@gnu.org.ua>2011-04-30 18:57:54 +0300
commit3f39626191970d57a8ad406b72474d565627b043 (patch)
treed44afa4a201a1ca8f5efc10870f69bda9276a752
parenta3599c1135e2eefe9bb0d910694150feddfa5439 (diff)
downloadgrecs-3f39626191970d57a8ad406b72474d565627b043.tar.gz
grecs-3f39626191970d57a8ad406b72474d565627b043.tar.bz2
Bugfixes and improvements.
* am/grecs.m4 (GRECS_INCLUDES): New substitute variable. * src/Makefile.am (INCLUDES): Add GRECS_INCLUDES. * src/grecs-gram.y: Remove leftover uses of xmalloc. * src/grecs.h (grecs_zalloc, grecs_calloc): New protos. * src/mem.c (grecs_zalloc, grecs_calloc): New functions. * src/wordsplit.c [ENABLE_NLS]: include gettext.h
-rw-r--r--am/grecs.m41
-rw-r--r--src/Makefile.am2
-rw-r--r--src/grecs-gram.y2
-rw-r--r--src/grecs.h1
-rw-r--r--src/mem.c14
-rw-r--r--src/wordsplit.c6
6 files changed, 23 insertions, 3 deletions
diff --git a/am/grecs.m4 b/am/grecs.m4
index dfed409..0b28604 100644
--- a/am/grecs.m4
+++ b/am/grecs.m4
@@ -111,2 +111,3 @@ AC_DEFUN([GRECS_SETUP],[
fi
+ AC_SUBST([GRECS_INCLUDES])
])
diff --git a/src/Makefile.am b/src/Makefile.am
index c97cee8..772a647 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -32,3 +32,3 @@ EXTRA_DIST=grecs-gram.h $(PP_SETUP_FILE)
-INCLUDES = -I$(srcdir)
+INCLUDES = -I$(srcdir) @GRECS_INCLUDES@
AM_YFLAGS = -dtv
diff --git a/src/grecs-gram.y b/src/grecs-gram.y
index ab757f8..114e151 100644
--- a/src/grecs-gram.y
+++ b/src/grecs-gram.y
@@ -128,3 +128,3 @@ vallist : vlist
$$.v.arg.c = n;
- $$.v.arg.v = xcalloc (n, sizeof ($$.v.arg.v[0]));
+ $$.v.arg.v = grecs_malloc (n * sizeof ($$.v.arg.v[0]));
for (i = 0, ep = $1->head; ep; i++, ep = ep->next)
diff --git a/src/grecs.h b/src/grecs.h
index 077a01e..1273c7d 100644
--- a/src/grecs.h
+++ b/src/grecs.h
@@ -132,2 +132,3 @@ extern void (*grecs_alloc_die_fun) (void);
void *grecs_malloc(size_t size);
+void *grecs_zalloc(size_t size);
void *grecs_realloc(void *ptr, size_t size);
diff --git a/src/mem.c b/src/mem.c
index c3c14ec..b18cc72 100644
--- a/src/mem.c
+++ b/src/mem.c
@@ -53,2 +53,16 @@ grecs_malloc(size_t size)
void *
+grecs_zalloc(size_t size)
+{
+ void *ptr = grecs_malloc(size);
+ memset(ptr, 0, size);
+ return ptr;
+}
+
+void *
+grecs_calloc(size_t nmemb, size_t size)
+{
+ return grecs_zalloc(nmemb * size);
+}
+
+void *
grecs_realloc(void *ptr, size_t size)
diff --git a/src/wordsplit.c b/src/wordsplit.c
index 347af92..ccc1080 100644
--- a/src/wordsplit.c
+++ b/src/wordsplit.c
@@ -28,3 +28,7 @@
-#include <gettext.h>
+#if ENABLE_NLS
+# include <gettext.h>
+#else
+# define gettext(msgid) msgid
+#endif
#define _(msgid) gettext (msgid)

Return to:

Send suggestions and report system problems to the System administrator.