Add tests for the empty pattern.

2004-04-15  Matthias Clasen  <mclasen@redhat.com>

	* tests/patterntest.c (main): Add tests for the empty pattern.

	* glib/gpattern.c (g_pattern_spec_new): Don't read and write out
	of bounds when the pattern is empty.  (#140032, Stanislav Brabec,
	Stefan Fent)
This commit is contained in:
Matthias Clasen
2004-04-15 13:58:29 +00:00
committed by Matthias Clasen
parent 817f25b95b
commit f4d9fcd8d4
8 changed files with 52 additions and 1 deletions

View File

@@ -243,7 +243,8 @@ g_pattern_spec_new (const gchar *pattern)
pspec->pattern[pspec->pattern_length] = 0;
return pspec;
}
if (pspec->pattern[pspec->pattern_length - 1] == '*')
if (pspec->pattern_length > 0 &&
pspec->pattern[pspec->pattern_length - 1] == '*')
{
pspec->match_type = G_MATCH_HEAD;
pspec->pattern[--pspec->pattern_length] = 0;