summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rwxr-xr-xbuild-aux/mktempd4
2 files changed, 9 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 32e1a87192..b3ef40bd9c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2008-05-14 Lasse Collin <lasse.collin@tukaani.org>
+
+ use "echo STR|wc -c" rather than unportable "expr length STR"
+ * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
+ OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
+
2008-05-14 Jim Meyering <meyering@redhat.com>
use dd ifs=$n count=1 ... rather than less-portable head -c$n
diff --git a/build-aux/mktempd b/build-aux/mktempd
index 5bee3f0c76..2bb424f69e 100755
--- a/build-aux/mktempd
+++ b/build-aux/mktempd
@@ -114,7 +114,9 @@ mktempd()
base_template=`echo "$template"|sed 's/XX*$//'`
# Calculate how many X's we've just removed.
- nx=`expr length "$template" - length "$base_template"`
+ template_length=`echo "$template" | wc -c`
+ nx=`echo "$base_template" | wc -c`
+ nx=`expr $template_length - $nx`
err=
i=1