components/gtar/patches/xgetcwd.patch
author Mike Sullivan <Mike.Sullivan@Oracle.COM>
Mon, 18 Nov 2013 23:01:15 -0800
branchs11-update
changeset 2823 4650282513ce
parent 154 55225e51a9cb
permissions -rw-r--r--
Added tag s11u2-28 for changeset 5bb54d999aca

--- tar-1.26/gnu/xgetcwd.c.orig	Thu Mar 17 12:53:26 2011
+++ tar-1.26/gnu/xgetcwd.c	Thu Mar 17 12:53:35 2011
@@ -26,6 +26,7 @@
 
 #include <errno.h>
 #include <unistd.h>
+#include <limits.h>
 
 #include "xalloc.h"
 
@@ -36,7 +37,14 @@
 char *
 xgetcwd (void)
 {
-  char *cwd = getcwd (NULL, 0);
+  char *cwd;
+#ifdef HAVE_PARTLY_WORKING_GETCWD
+  cwd = getcwd (NULL, 0);
+#else
+  cwd = malloc(PATH_MAX);
+  if (cwd)
+    getcwd (cwd, PATH_MAX);
+#endif
   if (! cwd && errno == ENOMEM)
     xalloc_die ();
   return cwd;