diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2025-02-18 21:13:46 -0500 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2025-02-18 21:13:54 -0500 |
commit | b464e51ab32fbf09cf5d9c911a8e26f491ad1f44 (patch) | |
tree | 0fa15dd6477c1995919f63efe9e38b652a3ab25b /src/backend/snowball/libstemmer/api.c | |
parent | 71d02dc478d574c75bd0af82cec774c7b9059a61 (diff) | |
download | postgresql-b464e51ab32fbf09cf5d9c911a8e26f491ad1f44.tar.gz postgresql-b464e51ab32fbf09cf5d9c911a8e26f491ad1f44.zip |
Update to latest Snowball sources.
It's been some time since we did this, partly because the upstream
snowball project hasn't formally tagged a new release since 2021.
The main motivation for doing it now is to absorb a bug fix
(their commit e322673a841d9abd69994ae8cd20e191090b6ef4), which
prevents a null pointer dereference crash if SN_create_env() gets
a malloc failure at just the wrong point. We'll patch the back
branches with only that change, but we might as well do the full
sync dance on HEAD.
Aside from a bunch of mostly-minor tweaks to existing stemmers, this
update adds a new stemmer for Estonian. It also removes the existing
stemmer for Romanian using ISO-8859-2 encoding. Upstream apparently
concluded that ISO-8859-2 doesn't provide an adequate representation
of some Romanian characters, and the UTF-8 implementation should be
used instead.
While at it, update the README's instructions for doing a sync,
which have not been adjusted during the addition of meson tooling.
Thanks to Maksim Korotkov for discovering the null-pointer
bug and submitting the fix to upstream snowball.
Reported-by: Maksim Korotkov <m.korotkov@postgrespro.ru>
Discussion: https://postgr.es/m/1d1a46-67ab1000-21-80c451@83151435
Diffstat (limited to 'src/backend/snowball/libstemmer/api.c')
-rw-r--r-- | src/backend/snowball/libstemmer/api.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/backend/snowball/libstemmer/api.c b/src/backend/snowball/libstemmer/api.c index 375938e6d13..358f5633b28 100644 --- a/src/backend/snowball/libstemmer/api.c +++ b/src/backend/snowball/libstemmer/api.c @@ -34,7 +34,7 @@ error: extern void SN_close_env(struct SN_env * z, int S_size) { if (z == NULL) return; - if (S_size) + if (z->S) { int i; for (i = 0; i < S_size; i++) |