summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--agi/Makefile2
-rw-r--r--strcompat.c9
2 files changed, 4 insertions, 7 deletions
diff --git a/agi/Makefile b/agi/Makefile
index a2f3bee05..e24587720 100644
--- a/agi/Makefile
+++ b/agi/Makefile
@@ -13,7 +13,7 @@
AGIS=agi-test.agi eagi-test eagi-sphinx-test jukebox.agi
-CFLAGS+=
+CFLAGS+=-DNO_AST_MM
LIBS=
ifeq ($(OSARCH),SunOS)
diff --git a/strcompat.c b/strcompat.c
index 8c9916d23..93a6b0c2b 100644
--- a/strcompat.c
+++ b/strcompat.c
@@ -33,21 +33,18 @@ char* strsep(char** str, const char* delims)
int setenv(const char *name, const char *value, int overwrite)
{
unsigned char *buf;
- int buflen, ret;
+ int buflen;
buflen = strlen(name) + strlen(value) + 2;
- if ((buf = malloc(buflen)) == NULL)
+ if (!(buf = alloca(buflen)))
return -1;
if (!overwrite && getenv(name))
return 0;
snprintf(buf, buflen, "%s=%s", name, value);
- ret = putenv(buf);
- free(buf);
-
- return ret;
+ return putenv(buf);
}
void unsetenv(const char *name)