Somehow, the existence of the file 0 gets ack confused. This is likely to be some bit of perl code calling readdir() and checking whether the result returned is true or false. A filename 0 evaluates as false but there are more things in the directory.
Just creating a new file called 0 isn't enough to trigger the bug. It has to be earlier in the directory listing than the other file foo. On many systems that means the 0 file has to be created first.
If there is a file called
0
then ack can fail to search other files in or below the directory.Somehow, the existence of the file
0
gets ack confused. This is likely to be some bit of perl code callingreaddir()
and checking whether the result returned is true or false. A filename0
evaluates as false but there are more things in the directory.Just creating a new file called
0
isn't enough to trigger the bug. It has to be earlier in the directory listing than the other filefoo
. On many systems that means the0
file has to be created first.