From 83d32a1f455c68b4fcbff9baaba934fd4b06a361 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Henrik=20Grubbstr=C3=B6m=20=28Grubba=29?=
 <grubba@grubba.org>
Date: Thu, 27 Feb 1997 22:50:44 +0100
Subject: [PATCH] Somewhat more portable.

Rev: src/modules/files/efuns.c:1.16
---
 src/modules/files/efuns.c | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/src/modules/files/efuns.c b/src/modules/files/efuns.c
index 058ec9e270..9a25d79e2a 100644
--- a/src/modules/files/efuns.c
+++ b/src/modules/files/efuns.c
@@ -190,10 +190,13 @@ void f_get_dir(INT32 args)
     int lens[FPR];
     struct dirent *tmp;
     
-    if (!(tmp = alloca(sizeof(struct dirent) + 
-		       pathconf(path, _PC_NAME_MAX) + 1))) {
-      error("get_dir(): Out of memory!\n");
-    }
+    tmp = xalloc(sizeof(struct dirent) + 
+#ifdef HAVE_SOLARIS_READDIR_R
+		 pathconf(path, _PC_NAME_MAX)
+#else
+		 NAME_MAX
+#endif /* HAVE_SOLARIS_READDIR_R */
+		 + 1);
 
     while(1)
     {
-- 
GitLab