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.
1 file changed