| From: | tgl(at)postgresql(dot)org (Tom Lane) |
|---|---|
| To: | pgsql-committers(at)postgresql(dot)org |
| Subject: | pgsql: Make replace(), split_part(), and string_to_array() behave |
| Date: | 2007-07-19 20:34:27 |
| Message-ID: | 20070719203427.ED1959FBD49@postgresql.org |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-committers |
Log Message:
-----------
Make replace(), split_part(), and string_to_array() behave somewhat sanely
when handed an invalidly-encoded pattern. The previous coding could get
into an infinite loop if pg_mb2wchar_with_len() returned a zero-length
string after we'd tested for nonempty pattern; which is exactly what it
will do if the string consists only of an incomplete multibyte character.
This led to either an out-of-memory error or a backend crash depending
on platform. Per report from Wiktor Wodecki.
Tags:
----
REL8_2_STABLE
Modified Files:
--------------
pgsql/src/backend/utils/adt:
varlena.c (r1.153 -> r1.153.2.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/varlena.c.diff?r1=1.153&r2=1.153.2.1)
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2007-07-19 20:34:34 | pgsql: Make replace(), split_part(), and string_to_array() behave |
| Previous Message | Tom Lane | 2007-07-19 20:34:21 | pgsql: Make replace(), split_part(), and string_to_array() behave |