Package: git2cl Version: 2.0+git200808271242-2 Severity: normal When git2cl is run as: git log --pretty --numstat --summary | grep -v 'XXX' | git2cl to filter out some lines from the change messages it doesn't use stdin but spawns the git log command itself.
The problem is that the test it uses to determine if it should read from stdin is to see if there is data already available (with select()). This is incorrect in the example above due to buffering. It could also easily be wrong if git starts to do some buffering or the system is loaded and git2cl is running before git log starts producing output and probably in more cases. A quick and dirty "fix" is increasing the timeout of the select: (this fixes my problem on a not heavily loaded system) return $nfd = select($rin, undef, undef, 0.2); It is probably better to change the test to see if stdin is a pipe, file or symbolic link (untested but allows removal of key_ready function): if (-f STDIN or -l STDIN or -p STDIN ) { ... -- System Information: Debian Release: 7.0 APT prefers unstable APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental') Architecture: i386 (x86_64) Kernel: Linux 3.2.0-4-amd64 (SMP w/2 CPU cores) Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages git2cl depends on: ii perl 5.14.2-16 -- -- arthur - adej...@debian.org - http://people.debian.org/~adejong --
signature.asc
Description: This is a digitally signed message part