Update to latest version.

- Substitute $srcdir in program arguments.
diff --git a/regress/NiHTest.pm b/regress/NiHTest.pm
index ba674cf..e8b1db7 100644
--- a/regress/NiHTest.pm
+++ b/regress/NiHTest.pm
@@ -902,10 +902,10 @@
 	
 	return $ok;
 }
-sub backslash_decode {
+sub args_decode {
 
 
-	my ($str) = @_;
+	my ($str, $srcdir) = @_;
 
 	if ($str =~ m/\\/) {
 		$str =~ s/\\a/\a/gi;
@@ -920,6 +920,14 @@
 		$str =~ s/\\(.)/$1/g;
 	}
 
+	if ($srcdir !~ m,^/,) {
+		$srcdir = "../$srcdir";
+	}
+
+	if ($str =~ m/^\$srcdir(.*)/) {
+		$str = "$srcdir$1";
+	}
+
 	return $str;
 }
 
@@ -930,7 +938,7 @@
 	my ($stdin, $stdout, $stderr);
 	$stderr = gensym;
 
-	my @cmd = ('../' . $self->{test}->{program}, map ({ backslash_decode($_); } @{$self->{test}->{args}}));
+	my @cmd = ('../' . $self->{test}->{program}, map ({ args_decode($_, $self->{srcdir}); } @{$self->{test}->{args}}));
 
 	### TODO: catch errors?
 	
@@ -986,7 +994,7 @@
 sub pipein_win32() {
 	my ($self) = @_;
 
-	my $cmd = "$self->{test}->{pipein}| ..\\$self->{test}->{program} " . join(' ', map ({ backslash_decode($_); } @{$self->{test}->{args}}));
+	my $cmd = "$self->{test}->{pipein}| ..\\$self->{test}->{program} " . join(' ', map ({ args_decode($_, $self->{srcdir}); } @{$self->{test}->{args}}));
 	my ($success, $error_message, $full_buf, $stdout_buf, $stderr_buf) = IPC::Cmd::run(command => $cmd);
 	if (!$success) {
 		### TODO: catch errors?