System: Solaris 11 (dev version - build 151), sparc

--

Test 56 is older issue and is caused by the fact that Solaris getcwd doesn't allocated memory. This can be fixed by attached patch (see xgetcwd.diff).

--

Tests 12, 100 and 101 fails just with tar 1.25 and only on sparc. On Intel version these run just fine.

Following is some more info from testsuite.log files:

# 012:

--- -   2010-11-08 05:57:05.557419960 -0800
+++ /builds/sfwnv/usr/src/cmd/gtar/tar-1.25/tests/testsuite.dir/at-groups/12/stdout 2010-11-08 05:57:05.550749360 -0800
@@ -2,6 +2,5 @@
 plik.1
 Testing
 plik.1
-plik.2
 plik.1

# 100:

--- -   2010-11-08 06:30:24.199620600 -0800
+++ /builds/sfwnv/usr/src/cmd/gtar/tar-1.25/tests/testsuite.dir/at-groups/100/stdout 2010-11-08 06:30:24.192881360 -0800
@@ -1,4 +1,5 @@
 separator
+a/b
 a/c
 separator
 a/

# 101:
--- -   2010-11-08 06:30:26.423442000 -0800
+++ /builds/sfwnv/usr/src/cmd/gtar/tar-1.25/tests/testsuite.dir/at-groups/101/stdout 2010-11-08 06:30:26.417092360 -0800
@@ -3,5 +3,4 @@
 separator
 a/
 a/b
-a/b

---

Any idea about these?

Thanks,

Petr
--- tar-1.25/gnu/xgetcwd.c.orig Mon Nov  8 06:23:04 2010
+++ tar-1.25/gnu/xgetcwd.c      Mon Nov  8 06:29:04 2010
@@ -36,7 +36,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;

Reply via email to