Package: libdevice-serialport-perl Version: 1.002-0.2 The Debian binary archive and the Debian diff for the .pm file appear to overwrite code by the author. The diff lines are as follows:-
($count_in, $string_in) = $self->read($size); - $$buf="" unless (defined($$buf)); - my $tail = substr($$buf, $offset); + my $tail = substr($$buf, $offset + $count_in); my $head = substr($$buf, 0, $offset); $$buf = $head.$string_in.$tail; return $count_in; @@ -2274,6 +2245,8 @@ Removing the first two lines and substituting the second, do not in fact "fix" this program, they in fact do the exact opposite. Reverting to the package author's version of the subroutine, the library is able to handle sysreads without errors, with the above changes included the library has multiple errors when attempting a sysread operation. >From checking back with the previous version 0.22-3, it almost seems as if the diff that has been applied by the debian package in fact reverts this particular section back to the 0.22 release. Checking multiple other sections of the diff and I come to the conclusion that someone the debian package and the diff provided were generated against 1.002 by a 0.22 release with the Debian fixes, and not a diff to apply the debian fixes to 1.002 as might have been intended...