OSDN Git Service

grep doesn't allocate enough space
authorWilliam Haddon <william@haddonthethird.net>
Sun, 10 Nov 2013 01:37:41 +0000 (19:37 -0600)
committerWilliam Haddon <william@haddonthethird.net>
Sun, 10 Nov 2013 01:37:41 +0000 (19:37 -0600)
commit3ad73e1344afa7812671d08456591b8cde952775
tree7b9ef2059e453b639dde51f704ed754a045b2177
parentaa2b8abf8efff6da663382735faf519c131d5a68
grep doesn't allocate enough space

Grep miscalculates the amount of memory it needs to allocate when "converting
strings to one big regex" when the -e flag is not specified. Since in this case
"\|" is inserted between strings rather than "|", two extra bytes rather than
one need to be provided for each string. I noticed this because it caused grep
to seg-fault on musl when a regex of exactly seven characters is provided.
toys/posix/grep.c