Package: libvcs-cvs-perl Version: 0.14.4 File: /usr/share/perl5/VCS/Cvs/Version.pm
Problem description: invoking VCS::Cvs:Version::diff subroutine (perl code example placed below) ends in process death Error message: "sh: chdir: command not found" during program execution Reason: in the row 51 of the module string assumed to be executed by shell contains perl call 'chdir' instead of a shell command 'cd'. I notified the CPAN maintainer of the VCS module. Patch for a Version.pm is also provided below. vvvvvvvvvvv code example starts vvvvvvvvvvvvv #!/usr/bin/perl use VCS; sub build_file_url($) { my $filename=shift; $filename="$ENV{PWD}/$filename" unless $filename=~m/^\//; $filename=~s/^\///; my $fileurl="vcs://localhost/VCS::Cvs/$filename"; return $fileurl; } sub get_diff ($$$) { my $filename=shift; my $version_from=shift; my $version_to=shift; my $fileurl=build_file_url($filename); # function building my $fileurl1=$fileurl."/$version_from"; my $fileurl2=$fileurl."/$version_to"; my $version1=VCS::Cvs::Version->new($fileurl1); my $version2=VCS::Cvs::Version->new($fileurl2); my $diff=$version1->diff($version2); return $diff; } $diff=get_diff('cvs.controlled.file', '2.1', '3.1'); ^^^^^^^^ code example ends ^^^^^^^^^^ vvvvvvvvvvvvv patch starts vvvvvvvvvvvvvvvv --- Version.pm.0.6.orig 2007-01-23 15:59:24.000000000 +0200 +++ Version.pm 2007-01-23 16:00:04.000000000 +0200 @@ -48,7 +48,7 @@ my $text = ''; if (ref($other) eq ref($self)) { my $cmd = - 'chdir ' . dirname($self->path) . + 'cd ' . dirname($self->path) . " && $DIFF_CMD " . join (' ', (map { "-r$_" } $self->version, $other->version)) . " '" . basename($self->path) . "' |"; ^^^^^^^^^ patch ends ^^^^^^^^^^^^ Best regards, Hleb Rubanau -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]