From 83d0b9f3caf4bc95531c6eb1a9dea76ed98f021e Mon Sep 17 00:00:00 2001 From: Teodor Sigaev <teodor@sigaev.ru> Date: Mon, 10 Sep 2007 10:39:56 +0000 Subject: [PATCH] Fixes from Heikki Linnakangas <heikki@enterprisedb.com>: Apparently it's a bug I introduced when I refactored spell.c to use the readline function for reading and recoding the input file. I didn't notice that some calls to STRNCMP used the non-lowercased version of the input line. --- src/backend/tsearch/spell.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/backend/tsearch/spell.c b/src/backend/tsearch/spell.c index e9bb9995627..9074b29af37 100644 --- a/src/backend/tsearch/spell.c +++ b/src/backend/tsearch/spell.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/tsearch/spell.c,v 1.2 2007/08/25 00:03:59 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/tsearch/spell.c,v 1.3 2007/09/10 10:39:56 teodor Exp $ * *------------------------------------------------------------------------- */ @@ -733,7 +733,6 @@ NIImportAffixes(IspellDict * Conf, const char *filename) while ((recoded = t_readline(affix)) != NULL) { pstr = lowerstr(recoded); - pfree(recoded); lineno++; @@ -813,8 +812,8 @@ NIImportAffixes(IspellDict * Conf, const char *filename) flag = (unsigned char) *s; goto nextline; } - if (STRNCMP(str, "COMPOUNDFLAG") == 0 || STRNCMP(str, "COMPOUNDMIN") == 0 || - STRNCMP(str, "PFX") == 0 || STRNCMP(str, "SFX") == 0) + if (STRNCMP(recoded, "COMPOUNDFLAG") == 0 || STRNCMP(recoded, "COMPOUNDMIN") == 0 || + STRNCMP(recoded, "PFX") == 0 || STRNCMP(recoded, "SFX") == 0) { if (oldformat) ereport(ERROR, @@ -834,6 +833,7 @@ NIImportAffixes(IspellDict * Conf, const char *filename) NIAddAffix(Conf, flag, flagflags, mask, find, repl, suffixes ? FF_SUFFIX : FF_PREFIX); nextline: + pfree(recoded); pfree(pstr); } FreeFile(affix); -- GitLab